In April, ARIN, the (North) American Registry for Internet Numbers, announced that it had reached “phase 4” of its IPv4 countdown plan, with fewer than 17 million IPv4 addresses remaining. There is no phase 5. APNIC, the Asia-Pacific registry, reached the 17 million (one “/8” or 2^24 IPv4 addresses) threshold three years ago, and the RIPE NCC in Europe less than two years ago.
LACNIC, the Latin American and Caribbean registry, reached a similar threshold of a little more than four million remaining IPv4 addresses earlier this week. APNIC and the RIPE NCC will give ISPs and other network operators one last block of 1024 addresses, the rules for LACNIC are similar, and ARIN is tightening the address supply but still allows ISPs to come back for more. Only AfriNIC in Africa is continuing to supply IPv4 addresses as needed to network operators in its service region.
How did we get here?
It could have been worse. In the 1980s, there were several widely used networking protocols, such as DECNET, AppleTalk, IPX, and CLNP. DECNET had 16-bit addresses, AppleTalk used 24 bits, IPX 80, and CLNP a maximum of 160. The newly invented TCP/IP held the middle ground at 32 bits. However, unlike most of the other protocols, which were never intended to underpin global networks, IP is the Internet Protocol, designed to interconnect all kinds of smaller networks into a unified, global one. As such, making the addresses a meager 32 bits was a big failure of imagination. That’s only ten digits when written down as a regular decimal number.
The result was that it took only a decade before IP address numbering ran into trouble. Originally, IP addresses came in three classes: A, B, and C. Class A consisted of 128 networks with room for 16,777,216 connected systems (hosts) each. Class B was 16,384 networks with 65,536 hosts, and class C 2,097,152 networks with 256 hosts each.
In the early 1990s, more and more universities connected to the Internet. Universities typically had more than 256 computers—or at least the potential to grow beyond that number—so they tended to get class B networks, which quickly started to run out. Giving them a dozen or so class C networks was much more efficient, but now routers had to keep track of ten times as much information, and routing tables started to explode. The Internet Engineering Task Force was barely able to avoid disaster by abolishing the class system so an organization that needed, say, 3,000 addresses could get a “/20”: a range of IP addresses sharing the same 20 bits (the prefix) with 32 – 20 = 12 bits left to number hosts within the network.