I missed them when I was writing my previous post about IPv6, but Ars has done quite a bit of coverage of the IPv6 transition over the last year. Here is an overview of IPv6 done in the usual exhaustive Ars style. And here is a recent story on the federal government’s rush to make IPv6 available on its networks by July… but not actually start using it.
I think the takeaway lesson here is that all manner of large institutions are preparing for the IPv6 transition, but so far nobody seems to be actually pulling the trigger. It’s fairly easy for Microsoft to add an IPv6 stack to Windows XP. It’s much harder for an ISP to stop using IPv4 and start using IPv6. And until a significant number of people have already done so, there will be very few compelling advantages to doing so, because most network traffic will still get routed through a 6to4 tunnel to the old-fashioned IPv4 network. I would love to be proven wrong, because IPv6 has some nifty features (you can read all about them in the article above) but there’s precious little evidence of actual movement in that direction.
One argument that I’m quite sure is wrong, though, is the “we’ll have to move when we run out of IPs” argument:
TCP/IP has served us well since it was born in 1981, but for some time now it has been clear that the IP part has a limitation that makes continued growth of the Internet for decades to come problematic. In order to accommodate a large number of hosts but not waste too much space in the IP packet on overhead, the TCP/IP designers settled on an address size of 32 bits. With 32 bits, it’s possible to express 4,294,967,296 different values. Over half a billion of those are unusable as addresses for various reasons, giving us a total of 3.7 billion possible addresses for hosts on the Internet. As of January 1, 2007, 2.4 billion of those were in (some kind of) use. 1.3 billion were still available and about 170 million new addresses are given out each year. So at this rate, 7.5 years from now, we’ll be clean out of IP addresses; faster if the number of addresses used per year goes up.
This is strikingly like the “peak oil” alarmism of recent years, and it’s silly for the same reasons. As IPv4 addresses get scarce, society will find ways to re-allocate them from low-valued to high-valued uses. NATs will become more common. You’ll have to pay more for static IPs. And, I suspect, market mechanisms will emerge so that early holders of large IP blocks will be able to sell portions of their blocks to those who could put them to more productive use.
Now, we may reach a point where the cost of obtaining the IPv4 addresses necessary to run an ISP will be high enough that ISPs will start migrating to the IPv6 space of their own accord. Conceivably, we might see this process start in the relatively cash-strapped third world, with rich and poor countries communicating with each other for a few years via a 6to4 tunnel. And of course, once a critical mass of network nodes has made the switch to IPv6, being on IPv4 will switch from being an advantage to a disadvantage and the rest of the network will switch quickly.
But I think it’s also possible that the crisis point will never be reached; ISPs will just gradually find more and more efficient ways to connect more hosts using a fixed pool of IPs, and at no point will the difficulties of doing so exceed the hassles and risks inherent in switching to an entirely new addressing scheme. Yes, NATs are a royal pain for application developers, but the 4to6 transition will take a decade in the most optimistic scenario, so applications being developed today have to include NAT support regardless of how quickly the transition occurs.