What is IPv6?
IPv6 is the next generation of the internet protocol. When IPv4 (the current standard developped in 1981) came out, they figured that an estimated 4.294 billion addresses would be enough. It turns out that this internet thing really caught on and there's actually a shortage of IP addresses. To remedy this situation, there have been many proposed solutions, but the one that has really caught on with the techs around the world is IPv6. For someone who doesn't know all that much about networking or computers, the world of IP can be a scary confusing place. This web site's aim is to include limited technical information, but include many step-by-step HOWTOs to set up IPv6 on your computer and network.
Why not just use Network Address Translation (NAT)?
NAT is a fantastic temporary solution, but that is all it really is. The internet is designed so that computers can communicate directly to each other around the world. In due time there will be no extra IP addresses and we will be forced to move to IPv6 as the internet protocol. Until that time, computers will be huddled in their own private networks behind NAT servers and gateways. The down side of this is that your computer, rather than having complete, unlimited access, incoming and outgoing to the internet, is being blocked by it's gateway to the internet.
At the present time (Summer 2003) the small office / home office (SOHO) router makers (LinkSys, D-Link and Netgear) are not using IPv6. Eventually they will be forced to. At that time, you'll either be able to upgrade the firmware on your router if they're nice, or you'll have to buy a new router. If you want to start to play with IPv6 and you don't have an public IP address (that is to say, you are stuck behind a NAT gateway or proxy) you will have to use a very newer access method called teredo.
IPv6 prefix lengths
IPv6 prefix lengths are comparable to the subnets of IPv4, they are much bigger though because IPv6 is based on a completely different address structure. A /64 is the address length in the form of:
A /48 contains 1,208,907,372,870,555,465,154,560 IPv6 address, which is 1.208 octillion addreses or 65,536 /64s. So, if you were routed dead:beef:cafe::/48 you can create your /64s starting with dead:beef:cafe:0000::/64 and ending with dead:beef:cafe:ffff::/64
A /56 uses the first two bits of the /48 for the network and the second two for you to specify for your /64s.
If you were routed:
Getting an IPv6 Address
So you want to get an IPv6 address today, there's a few ways to do it. The first one, and the best one is if your Internet Service Provider (ISP) supplies them to you. This is great, because all you have to do now is enable IPv6 on your computer (if it's not already enabled) and you're done.
Most of us don't have that luxury, fortunately there has been a lot of work in creating a tunneling protocol which allows you to get and use an IPv6 address over your IPv4 connection to the internet. There's a whole lot of documentation about this and how to use it, so I'd like to go over some of it with you. I've tried this stuff with Windows XP, FreeBSD 4.8 and RedHat Linux 7.3 so I can give you a little bit of what I ran into to get where I am today.
The all-around easiest way to connect to get an IPv6 address and a connection is to use Freenet6 Tunnel Setup Protocol and the best part is that it's free.