| Home Tools Teredo Links Forums |
|
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:
ffff:ffff:ffff:ffff:0000:0000:0000:0000
where the last part of the address will usually look something like:
ffff:ffff:ffff:ffff:0200:00ff:fe00:0000
and would be filled in with the MAC address of the network card. For example, a MAC Address of 00:08:DB:EF:34:33 would result in an IPv6 address like:
ffff:ffff:ffff:ffff:0208:dbff:feef:3433
Each part of an IPV6 address with prepending 0s can be omitted, but still represent the same address. The following are some examples...
ffff:ffff:ffff:ffff:0208:dbff:feef:3433
shown as:
ffff:ffff:ffff:ffff:208:dbff:feef:3433
ffff:ffff:ffff:ffff:0000:0000:00a0:feb5
shown as:
ffff:ffff:Ffff:ffff::a0:feb5
A /64 contains 2^64 nodes or 18,446,744,073,709,551,616 IPv6 addresses. That's 18.446 quintillion for those of you who need to call it something. A /48 contains 65,535 /64s. So the since the current spec for IPv6 gives you a /64 for being able to breathe.
This means that a /48 contains 1,208,907,372,870,555,465,154,560 IPv6 address, which is 1.208 octillion addreses.
| |||||||||||||||||||||||||
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 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.
HOWTO Configure FreeBSD with Freenet6 TSP
HOWTO Configure WindowsXP with Freenet6 TSP
HOWTO Configure Your Name Server for Reverse Lookups with IPv6