IPv4 Is Running Out: Meet IPv6
By ToolzHive · · 3 min read
The internet ran out of new IPv4 addresses years ago. It still works because of clever workarounds, but the real fix — IPv6 — is slowly taking over. Here is why the old system filled up, and what the new one changes.
Why IPv4 ran out
An IPv4 address is a 32-bit number, written as four values like 192.168.1.1. Thirty-two bits allows about 4.3 billion addresses. In the 1980s that seemed limitless. With billions of phones, laptops, servers and smart devices, it is not remotely enough, and the regional registries handed out their last big blocks over a decade ago.
The internet did not collapse because of two stopgaps:
- NAT (Network Address Translation). Your home router has one public IPv4 address, and every device behind it shares that address, with the router juggling which internal device each connection belongs to. A whole household — or a whole company — hides behind a single public address.
- A secondary market. Unused IPv4 blocks are now bought and sold, sometimes for tens of dollars per address.
These keep IPv4 alive, but they add cost and complexity, and NAT quietly breaks some direct peer-to-peer connections.
What IPv6 changes
IPv6 uses 128-bit addresses, written as eight groups of hex digits like 2001:0db8:85a3::8a2e:0370:7334. The number of possible addresses is not just bigger — it is 3.4 × 10^38, enough to give every grain of sand on Earth billions of its own. Address scarcity simply stops being a problem.
Beyond sheer quantity:
- No NAT needed. Every device can have its own public address, restoring true end-to-end connectivity. (Firewalls still protect you; the point is addresses, not open doors.)
- Simpler, faster routing. The header was redesigned and address allocation is more hierarchical, which streamlines the core routers.
- Built-in autoconfiguration. Devices can self-assign a working address without a central server handing them out.
Reading those long addresses
IPv6 looks intimidating, but two rules tame it:
- Leading zeros in a group can be dropped:
0db8becomesdb8. - One run of all-zero groups can be collapsed to
::— but only once per address, otherwise it would be ambiguous.
So 2001:0db8:0000:0000:0000:0000:0000:0001 compresses to 2001:db8::1. Expanding it back out is just reversing those two rules.
Why adoption is gradual
If IPv6 is better, why is it not everywhere? Because the two protocols are not directly compatible — an IPv6-only device cannot talk straight to an IPv4-only server. During the long transition, most networks run dual stack, speaking both at once, which means maintaining two systems. That inertia, plus the fact that NAT keeps IPv4 "good enough", is why the switch has taken decades rather than years. Still, the trend is one-way: major mobile networks are already IPv6-first, and the global share of IPv6 traffic climbs every year.
Working with both
For anyone running or debugging a network, the practical reality is that you deal with both protocols at once, and converting or checking addresses between them is routine. Converting an address from IPv4 to IPv6 and back, compressing or expanding an IPv6 address, turning CIDR notation into an address range, and planning subnets in either protocol all run from your browser. They let you move comfortably between the old world and the new one while the internet finishes a migration it started a long time ago.