When we are talking about today’s Internet, we can’t skip the IPv4. It is the most used IP currently and still resists giving its spot to the newer and improved IPv6. What makes IPv4 so special? Let’s find out.
IPv4 is short for Internet Protocol version 4. The 4th version of the Internet protocol (IP) is still a popular protocol for communication over the Internet. It establishes the rules and limitations for communication over the Internet or on a local network. Thanks to the IP, we can have interconnected networks routing with packets forwarding because it defines the format, the communications, use IPv4 addresses, and routes data.
In contrast to the transmission Control Protocol (TCP), the Ipv4 protocol does not need to guarantee delivery, and that makes it a connectionless protocol. It functions on the best-effort delivery model and makes it fast.
IPv4 was first described in 1981 by the Internet Engineering Task Force (IETF, RFC 791) and was later adopted by the Department of Defense of The USA in 1982, SATNET in 1982, and ARPANET 1983.
We can’t miss talking about IPv4 addresses too. An IPv4 address is a 32-bit address that identifies a device on a network. It is made of 4 groups of numbers (octets) with up to 3 numbers each. The IPv4 will identify the network and the individual host on the network.
Here you have an example of an IPv4 address: 22.214.171.124
You can find the website’s IP address by performing a simple command on your computer. Go to the Command Prompt on Windows or Terminal on macOS and Linux, type this command, and press the Enter:
The problems that IPv4 has are the following:
- IP address exhaustion. The business needs for IP addresses can’t be satisfied with IPv4 addresses only, so they are already migrating to IPv6.
- No IPsec support by default. You can still enable it, but it is a lot easier with the newer IP.
- Limited header in which you can’t add extra parameters.
- It is getting too expensive with prices above $25 per IP address.
How does the Internet work?
Contrary to popular belief, the Internet is not many clouds communicating wirelessly, but rather a cable network connection between many data centers spread worldwide and clients who want to use services. There are giant cables between the oceans that connect important network points.
In this large network of interconnected devices and smaller networks, we need order and clearly defined identifications of the connected devices and their addresses.
The clients need IP addresses as identification so do the servers. The servers will also need hostnames. For web servers, you have seen they have a domain name (hostname) like Google.com, and when you want to get to it, you will see the content of that page.
The content of each website is hosted on web servers in data centers. Websites and applications need servers to host services so you can access them.
The IP address is the ID, the identifier of each host – client or server device on the network. There are public and private IP addresses. You will have a private IP address on a closed private network that will let you use the network and connect to the other devices on that network.
If you want to access the Internet, you will need a router that will use a public IP address provided by an Internet service provider.
On the server-side, they also need a public IP address. This IP address should not change. It should be static, so clients can find it easily.
But, when you are access sites, you are not typing their IP addresses but their domain names. How does this work?
DNS (Domain Name System)
Here comes the Domain Name System (DNS). It is an international system, a database of domain names and their IP addresses. It is the all-knowing service that answers DNS queries for domain names with their IP addresses.
DNS has a hierarchy structure with different levels, where each one knows the answer for the one below. The highest is the Root, which knows where the TLD servers are. On the other hand, they know where the domain names of their TLD (like .com, net, etc.).
This organization let you simply type domain names, and your computer will start a quest to find its IP address (A or AAAA DNS record) that starts from your computer’s DNS cache, then different recursive DNS servers who are searching for your answer, and finally authoritative DNS servers which provide this answer.
Early IPv4 routing
Running out of IPv4 addresses has been a problem for a long time. Using a subnet mask, there is a separation between the identification of the network and the part of the hosts. Early IPv4 routing was organized in 5 classes: A, B, C, D, and E. D and E were restricted for special needs.
Class A has 1 octet dedicated to the network and 3 for the hosts. It looks like this 255.0.0.0. That allows 128 networks and 16777216 hosts per network.
Class B has 2 octets dedicated to the network and 2 for the hosts. It looks like this 255.255.0.0. That allows 16384 networks and 65536 hosts per network.
Class C has 3 octets dedicated to the network and 1 for the hosts. It looks like this 255.255.255.0. That allows 2097152 networks and 256 hosts per network.
…And IPv4 today
Later in 1993, a huge improvement to the IPv4 addresses allocation was introduced, which was called Classless Inter-Domain Routing (CIDR). Thanks to CIDR, now we have a suffix that is a number between 0 and 32 and shows how many bits are representing the network. It looks like this 192.168.100.14/24. The CIDR allows a variable-length subnet that adapts to the current needs.
This trick helped a lot with the IPv4 address exhaustion but is more like a temporary fix than a final solution.
Benefits of using it
There are still a few benefits of using IPv4:
- Excellent system support. Thanks to the years it already has, IPv4 is supported on all network devices.
- Simple topology. It is easier to set up and manage an IPv4 network.
- IPv4 addresses are short. That makes them easier to write and even memorize.
IPv4 vs. IPv6 – differences
There are several important differences between the old IPv4 and the new IPv6:
- 32-bit addresses vs. 128-bit addresses, which provides a lot more addresses in the case of IPv6.
- 4,294,967,296 IP addresses vs 340,282,366,920,938,463,463,374,607,431,768,211,456 IP addresses.
- Fragmentation allows vs. no fragmentation.
- Address configuration manually or with DHCP vs. SLAAC or DHCP6.
- IPsec optional vs. part of the standard. IPv6 supports end-to-end encryption and can avoid man-in-the-middle attacks.
- NAT translation vs. no need for it in IPv6.
You can read our in-depth IPv4 vs. IPv6 comparison for more information.
How to find your IPv4 address?
You can find your external IPv4 address by typing “What’s my IP” in Google.com, and you will see it inside the rich snippet without the need to open any page.
If you are using a Windows device, you can open the Cmd (Command Prompt) and type “ipconfig”. You will see the complete IP configuration.
On Linux, open the Terminal and type “ip addr”. Then search for “inet”, and you will see it there.
On macOS, click the Apple icon on your top left corner and then System Preferences. After that Network, find the network connection you are using and click on it.
What is the future of IPv4?
We are in a time of transition from IPv4 to IPv6. It is not a fast migration, and many businesses decide to stick to the dual-stack model for now. It is harder to manage, but it is more reliable than IPv6-only.
Due to the IPv4 address exhausting, eventually, we are going to IPv6-only future, which will take a while. The leading countries at this are India, Belgium, Germany, Malaysia, and Greece.
Currently, the global adoption rate is just north of 30%, but the percentage is rising.