IPV4/ inet 4 shortage but not scarcity

Table of contents

For a layperson living in a highly tech-driven world today it’s easy to overlook some details of how our machines work, and take for granted the evolution they have also undergone over the decades. To better understand this claim let's step back in time briefly to the 1970s and 1980’s before the existence of a router.

From the beginning computers were made to make sending messages and data easy, however back in the day before the internet this was not an easy task to accomplish. To send a message(s) from one part of the country to another there needed to be several things in place

1. The message hard to include the “address” of both the sending computer and destination computer

2. The sending computer had to be connected physically by a cable to either a Local Area Network (LAN) which in turn would be connected to another LAN (hop) connect to another LAN and so on until the part of the country where communications were to be sent. It should be noted that using a multi-hop network system meant a huge investment in networking cables to cover all that distance, and networking software installed on all machines to enable smooth functionality.

3. For messages to be sent from one end to another they needed to be broken down into “packets”. Smaller chunks could be sent one after the other though not necessarily in order as there was the ability to reorganize the packets into a meaningful message once the destination machine revived all of them. This also meant that shorter messages could be sent quicker than longer messages which I imagine would take some hours to get through to their destination. But never the less it was still a much quicker and easier way to send messages than mail them through the postman service.

Over time networks evolved with new tech that enabled them to move away from this store and forward approach of moving messages and data back and forth. The “Interface Message Processor” (IMP) was invented and it was a specialized computer to move packets. It was named as such because was an interface between general-purpose computers and the rest of the network. It is the IMP that later came to be known as a router and it is this router technology that greatly simplified moving messages across multi-hop networks.

With that background let's come back to the present where it's common for one person to own multiple devices all communicating over a network, meaning multiple devices all requiring “addresses” or as we know them today “IP addresses”. It is also essential to understand that when the IP (Internet Protocol) address was invented, it was made a 32-bit number which simply means it is not infinite.

To understand this better let's take a look at one.

If you have a windows PC this information can be accessed with the command ipconfig and if you are running on Linux the same can be obtained with the command ifconfig and the address will be named inet 4 depending on what version of Linux you are running.

From the image, you probably notice that our IPV4 is a 4-field dot delimited digit. And in binary terms, each field is made of 8 bits (a group of 8 zeros and ones that add up to the number you see in the field) Based on this fact if we try to calculate the number of permutations or possibilities if IPV4 that we can have;

2 standing for binary, and 32 being the 32 bits of the entire IP

From this calculation, we quickly come to realize that in fact there are much fewer IP addresses than the number of devices communicating on the internet today. The big question is why then haven't we experienced any shortages or limitations presented by this number?

As a solution, IPV6 was invented even though its is rarely used. IPV6 provided a very viable solution simply because of the math behind it. Maintaining the principle the computers operate in binary a 128-bit hexadecimal IP was then created in the hope that the permutations of this can never run out any time soon. And we are still a long way from there I believe. Let's look at the math below.

But then if IPV6 is being rarely used how are we still surviving with the shortage of IPV4? The answer to this lies in the fact that today we rely on the “NAT” (Network Address Translation). How it works is quite simple, IP addresses have been categorized into public and private categories. So if you have 20 devices at home each with an IP, chances are if you run the ifconfig or ipconfig you will realize your IP addresses probably start with 192.168. which is a category of IPs that are private and never connect to the internet themselves and they are only known to you.

The table above shows the different categories of private IP’s that we all probably purchase or rent from our “ISP” (Internet Service Provider/s) simply meaning that whether you as an individual have 20 devices or a large company with 10.0.0.0 IPs with a large number of hosts, all these are bound to go out to the internet through only 1 IP address maintained by your ISP.

Punchline is that corporations saw the future back in the day and bought off all the IP spaces and sold those to ISPs which in turn either rent them out to us or sell them to us. So to stay in business they maintain the space as they see fit and somehow we have never run out simply because of the NAT that always translates which category of IP space your device is and through the power of “sub-netting” (a topic for another day) all your devices connect to the internet and communicate not with their private IP’s but rather one IP assigned by the ISP. And to connect all the dots if you are wondering, all this means that all the devices go through the router (rented or provided by an ISP) and it's the address of the router that actually ever communicates on the internet.

So be it an individual with 50 devices or a big company with more than 1000, all these are bound to go through a router which in turn goes out as just one IP.

10
Subscribe to my newsletter

Read articles from Mukisa John Mary directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Mukisa John Mary
Mukisa John Mary

Former English and Music teacher transitioning into the world of software engineering. With a passion for education and creativity