‘IP’ stands for Internet Protocol, the set of rules that allows devices to communicate over the Internet. With billions of people accessing the Internet daily, unique identifiers are necessary to track who is doing what. The Internet Protocol solves this by assigning IP numbers to every Internet device.
A computer’s IP address is like the physical address of a house. A computer’s IP address is like a physical address. Calling a pizzeria to order delivery, they must provide their physical address. Without that address, the pizza delivery person will have no idea which house to deliver the pizza to.
For example, when a user types a domain name, like google.com, into a web browser, this will initiate a request to Google’s web server asking for content (the Google homepage). Once Google receives the request, it must know where to send the website content. For this reason, the request will contain the asker’s IP address. Using the provided IP address, Google can respond to the user’s device, then display that content in the user’s web browser.
The system that orchestrates all this is called DNS. It works like a phone book for IP addresses so that users can access web services using human-friendly domain names. When a user types a domain name like ‘facebook.com’ into their browser window, a DNS query begins, leading to a DNS server translating the domain name into an IP address.
What do IP addresses look like? These addresses have a different format based on whether they are IPv4 or IPv6.
What is the difference between IPv4 and IPv6?
IPv4 and IPv6 are different versions of the Internet Protocol. IPv4 was implemented in 1983 and is still in use today. The format for IPv4 addresses is four sets of numbers separated by dots, for example: ‘192.0.2.1’. This is a 32-bit format, which means that it allows for 232, or about 4.3 billion, unique IP addresses, which is not enough for the number of devices now on the Internet. The need for more IP addresses led to the implementation of IPv6.* IPv6 addresses use a more complex format that utilizes sets of numbers and letters separated by single or double colons, for example:
‘2001:0db8:85a3:0000:0000:8a2e:0370:7334’. This 128-bit format can support 2128 unique addresses. (That computes to a 39-digit number!)
IPv6 provides some other updates to IPv4, including security and privacy improvements. Despite their differences, both IPv4 and IPv6 have been used concurrently on the web for over a decade. The two versions can run in parallel, but special measures had to be implemented to facilitate communications between IPv4 and IPv6 devices. This compromise must be made because so much of the web runs on IPv4 addresses.
*What happened to IPv5? IPv5 was an experimental streaming data protocol that was never implemented. It used the same 32-bit formatting as IPv4, so it did not adequately solve the problem of insufficient unique IP addresses. For this reason, IPv6 became the successor to IPv4.
What is the difference between static IPs and dynamic IPs?
The limited supply of IPv4 addresses led to the introduction of dynamically assigning IP addresses, which is still a prevalent practice. Most devices connected to the Internet are assigned temporary IP addresses.
For example, when a home user connects to the Internet on their laptop, that user’s ISP assigns them a temporary IP address from a pool of shared IP addresses. This is known as a dynamic IP address. This is more cost-effective for the ISP than assigning users a permanent, or static, IP address.
Some ISP customers, such as large enterprises, will pay to maintain a static IP address (for example, Google’s 8.8.8.8). However, for most users, having a dynamic IP address is sufficient. When hosting a web server, such as a self-hosted website, API, or gaming server, a dynamic IP address can create problems. A change in IP address can cause their DNS queries to fail, effectively taking the resource offline.