June 6, 2012, is World IPv6 Launch Day, when several leading Internet sites and services are permanently enabling access via the Internet’s latest addressing format, Internet Protocol version 6, or IPv6. Comcast, Yahoo, Microsoft Bing, Facebook, Google and many others are all on board, along with gear makers like Cisco and D-Link. If everything works out — and, likely, most everything will — these services will represent the forefront of the next phase of the Internet. Eventually, everything connected to the Internet will be using new-style IPv6 addresses.
This doesn’t mean Facebook, Google, Yahoo and other sites will suddenly disappear today if you aren’t using IPv6. In fact, if everything goes well you shouldn’t notice any change at all. But IPv6 is not backwards compatible with the Internet’s current addressing scheme, IPv4, and, eventually, you will have to use it, like it or not.
What IP addresses do
Right now, essentially every machine connected to the global Internet communicates with other systems using Internet Protocol version 4, or IPv4. These IPv4 connections happen at a much lower level than, say, connecting to a website or logging in to an online game: IP connections are the building blocks on which all other Internet connectivity is based. In a nutshell, when you connect to a website or upload your latest photo, Internet Protocol is responsible for breaking that data up into pieces, putting an address label on every piece, and sending them along towards their destination. While the data is en route to or from you, a number of different systems — gateways, proxies, routers, and more — look at the address information on each of those packets, and forward the data to the next hop on a chain that will (eventually) lead to the correct destination.
If it everything goes well, all those intervening systems are transparent. Systems can behave as if there is a direct connection between them, when in fact there could be a large number of intervening routers and systems. Those IP address labels are a critical part of how this communications works.
Where did the old system come from?
The current IPv4 system was created by Bob Kahn and Vint Cerf — seen at right and widely known as the “Father of the Internet.” The scheme was first presented to the technology community back in 1973. Computers all operate in terms of bits and bytes — those infamous ones and zeroes that movie and television producers love to wash across their visuals in order to convey a notion of technical wizardry. Bits can have just two values, and processors and memory tend to prefer to deal with bits in chunks that can be represented as powers of two and that are evenly divisible by eight (or better still, multiples of eight — most mainstream computer CPUs these days are 64-bit). So, when Kahn and Cerf proposed the first version of Internet protocol, they proposed a 32-bit field for system addresses.
At the time — the early 1970s — 32-bit addresses were tremendously forward-thinking. They were small enough to be processed and stored efficiently, but offered enough “address space” for unimaginable possibilities. Bits can have two values (zero and one) so a 32-bit field can have 232 possible combinations — theoretically, that meant the IPv4 network could handle over four billion (4,294,967,296) systems! That was essentially an infinite number back in the early 70s, when personal computers had a few kilobytes of RAM, time-sharing was the order of the day, and mainframes and minicomputers had price tags in the five and six figures and required dedicated support staffs to operate. There weren’t even four billion people on Earth!
Even setting aside whole swaths of addresses for network management and testing purposes, 32-bits still left oodles more addresses than anyone knew how to use. And back in the early days, addresses were handed out willy-nilly: At one point, Apple Computer had what’s called a Class-B address space, which was equivalent to 1/256th of the entire Internet. That’s more than many countries have today. (And, yes, Apple wound up giving back the majority of those addresses.)
So what is IPv6?
When worldwide use of the Internet exploded in the 1990s — coinciding with the birth of the Web — it became obvious that, eventually, 32-bit addresses weren’t going to offer enough address space. Part of the issue is network management. Every time you subdivide a network, only a portion of the addresses are usable; the rest are lost to gateways and routers and broadcast addresses. Most of the pressure was from businesses, organizations, and ISPs all over the world rushing to get online — and all wanting their own address space. The issue finally came to a head in February 2011, when the International Corporation for Assigned Names and Numbers doled out the final unassigned blocks of IPv4 address space. IPv4 addresses are now a limited, increasingly scarce commodity. Just a month later, Microsoft paidd $7.5 million to acquire a large unused block of IPv4 addresses that had belonged to bankrupt telecommunications company Nortel.
By 1996, the IPv6 addressing standard had been finalized. (Yes: IPv6 is already 16 years old!) In essence, IPv6 expands the size of Internet addresses from 32 bits to 128 bits. That might seem like a four-fold increase in the possible size of the Internet— 32 × 4 is 128, right? — but that’s not the way bits work. Every time you increase the length of a bit field, you square the number of values it can represent. One bit can represent two values — that’s 21. Two bits can represent four values (22), three bits can represent eight values (23), and so on. By the time you get to 2128, you’ve reached 340,282,366,920,938,463,463,374,607,431,768,211,456, or more than 340 undecillion.
There’s a bunch more to IPv6 than larger addresses — including support for encryption and quality-of-service metrics, better multicasting support, a new datagram format, improved routing support, and technology to automatically reconfigure hosts and IP addresses on a network. But the driving force behind adopting IPv6 now is the larger address space.
What do IPv6 addresses look like
Folks who’ve been using the Internet for a while are probably familiar with IP numbers: a series of four numbers separated by dots that uniquely identify a device on the Internet. One address Digital Trends currently uses is
126.96.36.199 — this is called dotted-quad or dotted-decimal format. Each number represents eight bits in the 32-bit field in an IPv4 address. As a result, each number will range from zero to 255: if you see a dotted-quad (say, on TV) with a number larger than 255, it’s utterly invalid (and therefore fake).
While the technically adept can easily remember significant bare IPv4 addresses like
188.8.131.52, IPv6 addresses have a lot more numbers, so it’ll be much more important to be able to identify systems and devices on an IPv6 network by name. But so you know what they look like, IPv6 addresses can be represented by a sequence of hexadecimal numbers separated by colons. (Hexadecimal is base-16, written using the numerals zero through 9 and the letters A through F. Why base-16? Remember how computers like things that are powers of two and divisible by eight. Using hex also allows you to represent large numerical values in fewer characters: four digits in hex can represet up to 65,536 in decimal.)
So, an IPv6 address might look like this:
Each sequence of four hexadecimal digits is called a “hextet” — that’s actually short for “hexadectet.” Each hextet represets 16 bits, so an IP address can have up to eight hextets. However, if a particular hextet starts with a zero, you can omit that leading zero. If a single hextet (or single sequence of hextets) are all zeros, you can omit them and use a double colon.
In the figure above, the dotted quad IP address is for Digital Trends, but the IPv6 address is for ipv6.weather.yahoo.com. See the sequence of fields that are all zeros? Following the rules above, that can be shortened down from this:
…all the way down to:
How IPv6 and IPv4 coexist
World IPv6 Launch Day doesn’t mean that the entire Internet is turning off IPv4 addressing today and switching entirely to IPv6 addressing — that would be disastrous! Although IPv6 can use the 32 bits in an IPv4 address to make form an IPv6 address, at a fundamental level IPv6 is not backward compatible with IPv4. No IPv4 system or device can function on an IPv6 network. For the entire Internet to run IPv6, every system and device will have to be upgraded to IPv6. That will take many years — to hazard a guess, at least a decade. But the transition is starting: the significant of today’s World IPv6 Launch Day is that major services hope to permanently enable IPv6 — more and more will be doing the same as time goes on.
So, the reality remains that the vast majority of the Internet is still running IPv4, and will continue to do so for some time to come. For now, networks operating with IPv6 are effectively isolated islands within a sea of IPv4 networks. They can use IPv6 on their own networks, but if they want to communicate with IPv4 networks — or, in most cases, even with other IPv6 networks — they’re going to have to down-convert to IPv4 or tunnel through IPv4 networks to communicate. Effectively, IPv6 networks are running both the IPv4 and IPv6 protocols side by side.
The figure above illustrates some simple relationships between some hypothetical networks. Right now, the majority of networks run IPv4 and communicate with each other using IPv4 —you can see there’s only one case where networks are communicating with each other exclusively via IPv6 — meaning they’re both running IPv6 internally and communicating with another network without relying on an IPv4 network to transfer data between them.
Eventually, this diagram will reverse: The IPv6 networks will become larger, the links between them will no longer rely on IPv4, and networks that operate exclusively on IPv4 will become relatively isolated islands. Networks and systems that can only use IPv4 will not be able to reach IPv6-only networks and sites — and, since the IPv4 Internet is rapidly running out of address space, that day may not be far off.
What you’ll need to do…eventually
Here’s the good news: IPv6 technology is already 16 years old, and network operators have been able to set up IPv6 networks since 1999. Further, the majority of modern operating systems already have built-in support for IPv6: this includes versions of Windows going all the way back to Windows XP (sort of), most versions of Mac OS X, as well as iOS and most Linux distributions.
Of course, there are caveats. For instance, IPv6 on Android devices — even ones running Ice Cream Sandwich — is currently limited to Wi-Fi connections, and Apple’s Mac OS X tends to prefer IPv4 addressing even when a network advertises IPv6 is available. (The reasons are complicated, but amount to the fact a number of things advertising IPv6 capability — like Windows systems sharing their network connections — don’t actually provide it).
Now the bad news. Most ISPs don’t offer IPv6 connectivity to their customers — even if they’re starting to use it on their own networks — so even if you’re savvy enough to set up IPv6 on your own, the odds are good that you’ll be tunneling down to IPv4 as soon as you try to connect to the broader Internet.
And there’s more bad news: Remember how IPv6 is not backward compatible with IPv4? That applies to every device in the connectivity chain between you and any destination on the Internet. For a connection to operate completely on IPv6, not only does your tablet, phone, or computer have to be running IPv6: every device between you and your destination has to be able to handle IPv6 traffic as well. That includes things like Wi-Fi base stations, cable modems, DSL routers, and 3G/4G network providers. Converting to IPv6 means all those devices will have to be replaced or upgraded to handle IPv6.
So, what will you have to do to start using IPv6? For most consumers, there’s no point worrying about it until their ISPs start to make IPv6 services available. For some folks, that’s already a reality: Comcast says it already has one percent of its customers running IPv6, but other ISPs haven’t begun to transition customers to IPv6 at all.
Once IPv6 service is available, the next step is making sure the operating systems on their devices supports IPv6, then updating or replacing things like their broadband routers and Wi-Fi base stations to support IPv6. In all probability, users will be upgrading to routers and base stations that support both IPv4 and IPv6 — that way, they can continue to use devices like game consoles, ereaders, cameras, set-top boxes, Internet-capable TVs, and hand-held gaming systems that rely on IPv4 — even if those won’t be able to connect to IPv6-only sites and services.
Should you worry?
For now, there’s no need to panic. Despite the fact that the IPv4 address space has all been allocated, there are still enough unused IPv4 addresses out there to fuel Internet growth for a while — perhaps a few more years. However, IPv4 addresses are getting scarcer, and the speed of the IPv6 transition could potentially make the price of IPv4 addresses rise substantially — the cost of running a server or “being on the Web” could go up. IPv4 functionality can also be extended with technologies like NAT routing (which effectively tuck a separate IPv4 address space behind a single IPv4 address); however, those approaches have their limits and aren’t suited to every Internet application.
But IPv6 is coming, and one day we’ll be talking about IPv4 the same way we talk about dial-up Internet today.
Image credit: Shutterstock / Sabino Parente