Introduction: the problem
If you’ve ever looked at the network settings for a device you own, chances are you’ve come across an IP Address. These addresses are the backbone of how devices communicate within, and across networks.
IP addresses currently exist in two forms. There’s the older IPv4-standard and the newer IPv6-standard. The IPv4-standard was introduced in 1980 and had space for over 4.2 billion addresses. Back in the 80s, it looked like it’d be more than enough to provide internet access to all the world’s population. But that population started rising. Fast. Besides, mobile devices such as laptops (and later smartphones) were making an introduction.
Halfway through the 90s, people started realising that we’d run out of IPv4 addresses one day. In response, IPv6 was introduced in 1998 and offers more than 340 undecillion addresses. That’s 340 with 36(!) zeroes. I know it’s been said before when it comes to big numbers (and have been proven wrong). But the chances that we ever run out of IPv6-addresses is almost non-existent.
There is one big problem, though. IPv6 is not backwards compatible with IPv4. They won’t talk to each other without some technological wizardry. Many, many devices still operate on IPv4 and upgrading to IPv6 isn’t a matter of simply flipping a switch. And since IPv4 has been in use for years, a lot of networks and devices still operate on that protocol. “Don’t fix what isn’t broken”, right? It works. For now…
But the last IPv4-addreses were allocated several years ago. Sooner or later, we’re going to run into the problem that devices won’t be able to talk to each other because they use different networking protocols.
To shed some more light on this issue, let’s first explore how IP Addresses actually work.
IP Addresses: the basics
The acronym IP stands for “Internet Protocol”. Easy enough so far! An IP address is a number made up of four segments, separated by dots. It looks something like this: 192.168.1.22, for example. Considering computers communicate in 1s and 0s, though, these segments are decimal representations of their binary equal. A computer will actually recognise 192.168.1.22 as 11000000.10101000.00000001.00010110
IP addresses work much like regular addresses. They identify a specific device in a network so any traffic knows where to go. It’s like sending a letter: the data needs a destination address and a return address. When you send data to another person, it’s divided into packages. Each individual package has the IP address of the host (you) and of the destination (who you’re sending it to) attached to it.
To enable communication across the internet, IP is usually paired with TCP (Transmission Control Protocol). This is a protocol that enables the actual sending of data over a connection. Let’s keep with the analogy of sending letters. If IP is the address on the letter, TCP is the postal service that delivers it to the recipient. An IP address indicates where something should go and TCP determines how it gets there.
IPv6: Three Benefits
Having a lot more space for addresses is not the only benefit of IPv6. Some other important ones:
Faster & more efficient connections
IPv6 uses more efficient routing and processing techniques than IPv4. This makes the entire procedure of sending and receiving data a lot faster. One reason: the ‘packet header’ (the data that holds sender/destination information) has a much simpler format. A big difference with IPv4 is the absence of a ‘checksum’. A checksum is a verification number that networks use to verify the intergrity of a data package. It makes sure that the package arrives correctly.
Checksums are also incorporated at different steps in the data transmission process. Removing it from the IPv6 protocol saves time and resources!
Direct end-to-end connection
The fact that there are many more devices than there are IPv4 addresses available, is a problem. To solve this problem, system and network engineers use a bit of trickery. Explaining this trickery is beyond the scope of this article but if you want to know more, look into NAT-devices and subnetting. Because IPv6 offers so much more space for addresses, every device can get one of their own. That means that direct, end-to-end connections are possible without all this trickery. And less steps means time and resources saved!
If you’re a network engineer or security expert and read “direct, end-to-end connections”, you might be staring at that phrase in horror. I can imagine why.
For the uninitiated: NAT-devices are not only a solution for the IPv4 address shortage. They also offer security benefits for a network. The biggest benefit is that an NAT hides the entire network behind a single IP address. That way, potential attackers have a much harder time determining the network structure and finding vulnerabilities.
But a well-configured firewall can give the same -if not better- levels of protection. That means we won’t need an NAT to ‘masquerade’ the network (hiding it behind that one IP address). Combined with those end-to-end connections, this means less potential attack surface for hackers!
So if IPv6 has all these great benefits, why isn’t it everyone using it yet?
It is mostly because -besides the availability of many more addresses- the adoption of IPv6 has no clear, perceived benefits for users. It’s, as I mentioned before, a kind of “don’t fix what isn’t broken”-attitude towards IPv6 adoption. In fact: the core incompatibility of IPv4 and IPv6 can even make it a risk to adopt the latter. Your operations could go haywire because some devices can’t communicate anymore due to the different protocols. Now, there are solutions to this problem but they’re an investment. Everything works on IPv4 so why spend the money? There are no perceived benefits to switching.
So, how far along are we in the adoption of IPv6 as the global, standard protocol? Some predictions from back in 2013 stated that -at the then adoption rate- IPv6 would reach worldwide integration on May 10th 2148. More than 125 years from now! We’ve gotten used to quick, technological advances and developments. 125 Years is a long time. And if that’s the case, then what is the current adoption rate? Google’s been keeping track of the adoption rate since about 2008. Currently, as of January 2022, the global adoption rate is just under 38%. Leading the list are India (61.48%), Belgium (58.99%) and Germany (58.12%). A whopping 155 countries have an adoption rate of <1%.
Even though we have patchwork solutions in this transition phase that ensure that IPv4 keeps working for now, the shortage of IPv4 addresses will catch up with us at some point. For example, think about how more and more companies put in place IoT-solutions. All those devices (sensors, trackers, self-driving cars, smart home appliances etc.) are going to need their own address. And if no IPv4 network upgrades to IPv6 until it is too late, we’ll definitely run into compatibility issues.
Let’s not be too late with the switch!