IPv6, then and now
September 3rd, 2010Entering a nerdy period, I decided to have a look at IPv6… again. I’ve been looking at the possibilites of IPv6 on and off for the last 6 years, but it never really seemed mature for usage. But now, I think it is, thanks to providers like SIXXS and Hurricane Electric, who offers IPv6 tunnels and subnets, and the forums which is getting a lot more info on how to get started using IPv6.
The biggest reason IPv6 is evolving so slow, is a common chicken and egg scenario. Service providers won’t implement IPv6, since customers don’t want it. And customers don’t want it, as long as they can get the IPv4-space they need. Should they however find a need for IPv6, it might require changing service provider, since very few offer it.
But there are useful advantages with IPv6:
First of all, IPv6 is 128bit compared to 32bit for IPv4. That’s alot larger address-space, so being conservative with your addresses is no longer necessary. No more need for NAT and the problems associated with that.
Second, IPSec is built directly into IPv6 thereby making secure connections trivial. Authenticated and encrypted connections is built straight into the ip-stack. In these days where privacy and security in wireless networks is in it’s prime, this might be a good reason to consider IPv6.
Third, resource allocation. Endpoints can request that a connection gets a certain priority, eg. in voice og realtime video conversations, you would like less than 50 ms. That’s possible with IPv6, and the routers can easily be optimzed for this. Instead of carrying the priority in each packet, a flowlabel is used. This label is negotiated during connection setup, and afterwards routers can just check for a flowlabel, and forward accordingly.
Fourth, IPv6 headers doesn’t use a fixed length, they use extension headers. This has the major advantage, that it’s possible to extend the protocol without to much hassle. Fx. we might see a location-extension header, that includes the location of the source IP, sometime in the future. Implementing such a header would be easy, and wouldn’t require anything except a destination that could handle it.
But it’s not all good. IPv6 has one big disadvantage. It’s unknown, it’s the new black, and everything you know about networking is about to get a little shake.
It’s no longer 127.0.0.1, it’s ::1.. It’s not netmasks, it’s prefixlengths… And it’s no longer 4 decimals you can remember eg: 74.125.77.99), but it’s 8 16bit hex-values (eg: 2a00:1450:8001:0000:0000:0000:0000:0093).
BGP is getting another address-family, DHCP is getting a v6-version, that works a bit differently, OSPF and IS-IS should be pretty much the same, but if I recall correct, there’s some quirks that’s nice to know.
I’m gonna explore IPv6 further, and tell of my findings. Be sure to check out NANOG’s great tutorials on IPv6 for service providers. There’s a lot of good information for end-users too.
Feel like trying yourself? Go ahead and read how I did it.

