A Feature Comparison: IPv6 and IPv4

The initial IPv6 specification was published at the end of 1995. As we approach its 30th anniversary, it’s worth looking at how much it differs from IPv4 in both design and implementation. For network operators considering adding IPv6, the question is, “Is there too little difference to bother and if so, why change?” Or, alternatively, “Is there too great a technical difference and so a change is too daunting?”
Features
Network Size – IPv4
When internet engineers realized that IPv4 would run out, they slowed the runout process by developing technologies to use it more efficiently. One of these technologies was Classless Inter-Domain Routing (CIDR) pronounced “cider”. This standardized the idea of different size networks in routing, so the number of addresses on any network segment could vary.

A CIDR chart showing a wide range of IPv4 network prefixes.
For instance, a company that gets 512 IPv4 addresses, a /23, might cut the block up into lots of small networks. Some could be just eight addresses, while one could be a /24, or 256 addresses.

512 IPv4 addresses are cut up for two LANS. 128 addresses remain unused.
Network Size – IPv6
Internet networks are staffed around the clock, just like electricity or telephone networks. Nothing happens on an ideal night. But managers don’t want technicians doing mental arithmetic to work out which addresses are in a particular prefix when a problem needs to be fixed. Variable size networks require this. That can confuse the people on the night shift. Of course, there are tools to help people, but that doesn’t mean people won’t make mistakes.

ipcount is a command line tool for working out where variable length IP prefixes start and end.
IPv6 doesn’t have this problem. All IPv6 subnets – the addresses used on a LAN – have the same size. They are always a /64 – about 18 quintillion addresses. The exception to this is the links for connecting routing devices. These just have two addresses, a /127.

Orange shows the network portion of the address, yellow shows the host portion. Green shows the full address.
This doesn’t mean anyone gets only a /64. In fact, access providers are encouraged to make sure that all subscribers get multiple /64s. It is common for residential users to get 256 /64 subnets – a /56. Business users normally get 65,536 /64s – a /48.
Autoconfiguration
Users don’t worry about configuring addresses on devices. We can move from place to place and get an IP address automatically.
Dynamic address configuration is the ability for a device to join a network and get an IP address automatically. The alternative would be a manual address assignment and manual configuration. It is done one way in IPv4: DHCP. This is a protocol for soliciting and getting an IPv4 address for a defined period of time. When the address is configured, it comes with other information, like where to get the current time and where to send DNS queries. DNS is the protocol for turning a name like ipv4.global into an address, like 23.185.0.4.
IPv6 has two mechanisms for address configuration. SLAAC is Stateless Address Auto-configuration. It doesn’t require network infrastructure beyond the router, which makes it ideal for unmanaged networks. The connecting device just needs to learn the network prefix, which will always be a /64. It can then create an address using information it knows about itself, like the hardware number for its network interface.
But DHCP has been adapted for IPv6 as DHCPv6. It does the same sort of thing as IPv4’s DHCP but is not universally supported. For instance, Android and ChromeOS still don’t support DHCPv6. They are outliers but used so widely that network administrators must design around them.
Address Privacy
Privacy was not considered important when people first started using networked computers because most of the use was for professional purposes. But the dramatic reduction in the cost of computing means that most people in the world now have some form of internet access and tracking them is relatively cheap. A determined and competent observer will almost always be able to track internet users. But privacy focused internet engineers have worked on ways to make that tracking harder in IPv6.
IPv6 addresses have two parts. The network part changes when a device moves networks, say from a home to a cafe. But the host part was originally defined as the hardware address of the network interface. That made tracking a user very easy because hardware addresses only change when the hardware changes, so most operating systems now generate a new random host part at least once a day.
IPv4 doesn’t have this freedom. There are very few addresses and treating addresses as single use expendable is impossible. But the widespread deployment of Network Address Translation (NAT) and Carrier Grade NAT (CGNAT) means that most users don’t get a globally unique address anyway.
Most IPv4 users get private IPv4 addresses, which are only unique on that network. All the devices on that network share a globally unique IPv4 address. Sometimes, that address is not unique but behind another translator: the CGNAT.
These technologies end up mixing lots of users’ traffic through a single unique address. Anyone tracking them needs to use some other identifier. Often, this will be a web cookie.
None of these technologies can provide perfect privacy. It is probably impossible to use the internet without leaving traces that a determined adversary can find and analyze. But these technologies all smudge or blur the link between network identity and personal identity. In combination with other technologies that can be controlled by device owners, they give people more control over their own privacy.
Actual Deployment
William Gibson has noted that the future is “just not evenly distributed yet.” The same can be said about IPv6. While IPv4 is ubiquitous where there is internet access, IPv6 deployment varies widely. Google and the Internet Society see India with almost 75 percent adoption, the US at 50 percent, and several African countries with under one percent adoption.
The truth is that no matter where you are in the world, deploying a new network requires some IPv4 address space.
.