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
) 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:
where the last part of the address will usually look something like:
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:
Each part of an IPv6 address with prepending 0s can be omitted, but still represent
the same address. The following are some examples...
One set of repeating zeros in address can be replaced with two colons side by side as well
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.
The spec for IPv6 states that you'll be routed a /64 for being able to breathe, for all of your
machines/devices behind your router. Your router would be given it's own address out of your
provider's pool for your neighbourhood.
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:
your first available /64 is:
and your last is:
giving you 256 /64s do with to as you please. Providers were originally going to issue /48s but by dividing them into /56s they'll
be able to stretch their address pools further and most users don't have more than 256 networks to deal with so it all works out.
|Approximate Number of IPv6 Addresses
||Easier to Say
| 1,208,907,372,870,555,465,154,560||/48|| 1.208||octillion ||ffff:ffff:ffff::|
| 79,225,744,681,071,852,408,904,089,600||/32||79.225||nonillion ||ffff:ffff::|
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.
HOWTO Configure FreeBSD with Freenet6 TSP
HOWTO Configure WindowsXP with Freenet6 TSP
HOWTO Configure Fedora/CentOS with Hurricane Electric's Tunnelbroker.net