Our engineers of yesteryear low-balled the popularity and the growth of the Internet when they schematized Internet Protocol (IPv4) Addresses. Today, that leaves us counting diminutive IPv4 addresses with IANA completing the assignment of last few blocks from the available pool.

IETF (Internet Engineering Task Force) soon realized that even more than a 4 billion IPv4 addresses were not enough; they were able to delay the exhaustion with short-term solutions like NAT (Network Address Translation) and CIDR (Classless Inter-Domain Routing) techniques.

IETF also came up with a permanent(?) solution in the form of IPv6, a successor to IPv4.

On January 31 of 2011, IANA allocated the last two /8 address blocks to the RIR (Regional Internet Registry) of Asia-Pacific (APNIC), thus marking the end of available IPv4 addresses.

Migrating to IPv6

The global migration to IPv6 has been slow coming with many organizations around the world just beginning to look at IPv6. And they’re finding it often to be messy confronting the mediocre application support, security issues, and really long addresses that are hard to crunch.

This again got the IETF thinking about an alternative to the new protocol. Realizing that the primary goal of IPv6 was to provide an increased address space, was an entirely new protocol really necessary? Still in its infancy, work is underway on a new IETF draft which ditches IPv6 altogether in favor of a simple extension to its predecessor: IPv4.1.

The initiative is being spearheaded by Joe Kisanyu (Often punned as ‘Joke is on you’), who explains his team’s motivation quite simply:

  “We’ve been going back and forth about how to implement IPv6 for years now, and frankly we just haven’t been getting anywhere. So my team and I sat down and said, let’s start from scratch and see if we can’t do better this time around. After a few days, there was this epiphany: We can just add an octet to a regular IPv4 address!

This revelation quickly led to the development of IPv4.1, which is nearly identical in operation to IPv4 but features a slightly longer 40-bit address. The header specification below, adapted from the original, RFC 791, should look familiar.

(Proposed) IPv4.1 Header Format

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Version|  IHL  |Type of Service|          Total Length         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Identification        |Flags|      Fragment Offset    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Time to Live |    Protocol   |         Header Checksum       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                               Source Address                                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                             Destination Address                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Options                    |    Padding    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

The solution here is pretty clever: an IPv4.1 has five octets instead of four.

Example: 208.66.40.236.89. Similarly, subnet masks can now range from 0 to 40 bits in length, e.g. 208.66.40.236.89/39 for a point-to-point link. And backward-compatibility is built in! Legacy IPv4 addresses are expressed with the first octet set to zero, e.g. 0.192.168.0.1.  DNS records for IPv4.1 addresses are to be designated as “B” records (successive to IPv4 “A” records).

Is the extension really worth it?

IPv4.1 seems to be such an ideal solution it is embarrassing that it hadn’t been considered earlier. And for those who question whether 240 (2 to the Power 40) address will be sufficient, Joe says, “While we’re sure 40 bits is more than enough address space for the foreseeable future, we can always add another octet or two down the road and upgrade to IPv4.2.”