IPv6

Wednesday 30th May 2007

IPv6

Some people are treating it as another buzzword that goes right up there with synergy and others are reluctant to look past its arcane structure, yet IPv6 is becoming more and more important. In case you don't know what I'm talking about, let's start with a brief explanation of these terms.

IP Address

An Internet Protocol address is a unique address that certain devices (such as your computer) use to identify other devices on a computer network and communicate with them. Whenever you use the Internet, you are doing so via an IP address.

IPv4

IPv4 is the fourth revision of the Internet Protocol and is the dominant network layer protocol on the Internet. Though it can theoretically have a maximum of about 4.3 billion addresses, some of these are reserved for special purposes and most of the others are already in use somewhere. Even if they weren't and we distributed all of them among the world's population, we would still be over 2 billion IPs short. According to this article, we will run out of IPv4 addresses in 2010. An IPv4 address looks like this: 172.16.45.54

IPv6

So what happens in 2010? If not for IPv6, any new users (human or otherwise) trying to get onto the Internet would have a hard time. With more and more Internet-capable devices being made available, they would have to go through all sorts of loops to be able to host a website or make their toaster accessible to the world.

IPv6 on the other hand, provides 340 trillion, trillion, trillion unique addresses which might be enough to assign an IP to each organism on the planet (sorry, I can't find detailed statistics on how many there are, but you'd be surprised to know that the number of bacteria in a single human being can total into the trillions). An IPv6 address looks something like this: 2001:0db8:85a3:08d3:1319:8a2e:0370:7344

Supported platforms

Virtually all of the hardware and software that makes up the Internet's core already supports v6. Even your typical operating system and browser has had support for it for some time (Linux has supported IPv6 since version 2.1.8, released in 1996, while Windows NT had it in 2002. Vista has it enabled by default). You can even run v6 in parallel with IPv4 and this is the most common configuration.

The main hurdle just seems to be understanding the concept and putting everything together. I must admit that it isn't a simple protocol and not just in the number of bits that this address comprises of. I still have no clue about IPv6 routing and other calculations.

Nevertheless, I wanted to dabble in it and develop some web-based tools for v6, but my hosting service doesn't support IPv6 and I'm hard-pressed to find a good one that does (while also matching the rest of my prerequisites).

Tunnel brokers

The solution to that was to request a free IP or subnet assignment from one of the "tunnel brokers" that allow you to make use of IPv6 by encapsulating the packets within IPv4, also known as tunnelling. Upon Zaeem's recommendation, I managed to get a couple of these from the BT Exact Tunnel Broker Service and have configured IPv6 addresses on my servers. Will soon be posting an update on the network tools that I have been working on that now support IPv6, thanks to this service.

As an ISP, we are in a good position to play a role in more widespread adoption of IPv6. Though we are currently only running it for testing (and educational) purposes, we should be able to incorporate it into the core network.

00:49am