1981 was a very eventful year. The DeLorean Motor Company began production of the now infamous DMC-12 (the time travel package didn’t become available until 1985). President Ronald Reagan signed a top secret National Security Decision Directive authorizing the CIA to recruit and support Contra rebels in Nicaragua, and Joseph Gordon-Levitt was born. More relevant to our tech interests though, IPv4 (Internet Protocol version 4) was released in 1981.

There aren’t many things from 1981 that we still use, but IPv4 is one of them. The Internet Protocol’s job is to route traffic on the Internet. One of the most critical features of this protocol is addressing. We commonly refer to this as IP addresses. IPv4 specifies 32-bit addresses. This means we have only 32 bits in which to store any possible IP address. When you see an IP address in dotted-decimal notation, such as 198.18.22.111, each of those numbers can be represented by 8 bits (198 = 11000110 for example).

With 8 bits you can only represent 256 unique combinations. This is why each piece of an IPv4 address will always be a number between 0 and 255. In a full IPv4 address, you have 4 blocks of 8 bits for a total of 32 bits. A full 32-bit IPv4 address can represent 2^32 possible addresses or 4,294,967,296. That’s almost 4.3 billion possible addresses. In 1981, this was more addresses than they thought they would ever need. After all, most people couldn’t even use the Internet then…they’d never be able to use up all those addresses!

Fast forward to 2014 (or take a DeLorean). A huge number of homes and businesses have constantly connected internet modems. Many have more than one. Each of those devices needs a unique IP address. Add in every single smartphone, as well as other random internet-connected devices and 4 billion addresses starts to seem like a pretty small number. If that situation weren’t bad enough, you can’t even use every single address. Huge chunks are reserved for certain network systems, software and documentation. All in all, roughly 600 million addresses are unavailable for use on the public Internet. The full list of reserved addresses and their uses can be found here.

Fortunately, if you have a home with a single modem and all computers and devices connect to a wireless router, you’re only using a single IP address of public Internet space. The modem and router act as a gateway to the outside world and the public Internet. Inside your home, your router will give you one of the special reserved addresses. You might be familiar with these, since they almost always start with 192.168. This process is called network address translation or NAT. A private organization with a large number of machines can funnel all their traffic through the modem-router and appear on the public Internet as one single IPv4 address.

Even with mitigation, we are running out of addresses, and a solution does need to be found. Fortunately, IPv6 is on its way. IPv6 addresses contain 128 bits allowing for 2^128 possible addresses or approximately 3.4×10^38. In other words, a lot. In fact, IPv6 allows for approximately 7.9×10^28 more addresses than IPv4. Unfortunately, IPv6 adoption has been slow and IPv4 still carries something like 96% of all Internet traffic. As the Internet becomes more and more saturated with devices, we’ll eventually be forced onto IPv6. Hopefully we won’t be looking back around 2050 and wondering why we didn’t choose to use 256-bit addressing instead.