IP Address definition
An IP address (Internet Protocol Address) is an address that identifies a device on the internet or in a local network like your home network.
Computers need a way to differentiate computers so that they know where they need to send their data. This is where IP addresses come in handy. They are a set of numbers to locate a specific device. This is similar to the address of your home or your office.
Imagine a friend wants to send you a letter. This person would write the address of your home on his envelope so that the post office knows where the letter should go to. That is the same reason, why computers have IP addresses.
What does an IP address look like
First, we need to clarify, that there are two types of IP addresses – IPv4 and IPv6. Moreover, the IPv6 format is the newer format, as there are more possible combinations for more computers on the internet.
The key differences are:
- IPv4 is a 32-bit address, whereas IPv6 is a 128-bit address
- The older IPv4 has 4,294,967,296 unique addresses, whereas the newer IPv6 has about 3.4×1038
- IPv4 is a numeric addressing method, whereas IPv6 is an alphanumeric addressing method
- The different parts of an IPv4 address are separated by a dot (.), whereas the parts of an IPv6 address are separated by a colon (:)
- IPv4 supports broadcasts. IPv6 does not
- IPv4 uses ARP (Address Resolution Protocol) to get the MAC address of a device, whereas IPv6 uses NDP (Neighbour Discovery Protocol)
Examples:
- IPv4: 192.168.0.1
- IPv6: 2002:4559:1FE2::4559:1FE2
How an IPv4 address is built up
An IPv4 address is separated into four parts that are called octets (separated by a dot). As shown above, part is an 8-bit decimal number that reaches from 0 – 255 (including 255).
Each IP address has got a network part and a host part. In order to identify them, IP addresses use subnet masks. The subnet mask also consists of four 8 bit decimal parts, just like the IP address. However, a part of the subnet mask can only be 255 or 0. The 255 parts represent the network part of the IP address, whereas the 0 parts represent the host part. The most common subnet mask is 255.255.255.0.
Before we get to the next part, we need to know that there are again two types of IPv4 addresses – the private IPv4 addresses and the public ones. In the first place, the difference between them is that the public ones have to be unique whereas the private ones can be used over and over again in different networks. A disadvantage of private addresses, however, is that they can’t be used over the internet because they are not unique.
Now that we’ve got that out of the way, there are 5 classes of IPv4 addresses (a, b, c, d, and e). However, we are only going to cover the 3 most important ones (a, b, c) in the following tables:
For public IP addresses:
Class | Address range | Subnet mask | Amount of hosts |
A | 1.0.0.0 – 126.255.255.255 | 255.0.0.0 | 16,777,214 |
B | 128.0.0.0 – 191.255.255.255 | 255.255.0.0 | 65,534 |
C | 192.0.0.0 – 223.255.255.255 | 255.255.255.0 | 254 |
For private IP addresses (carved out from the public IPs):
Class | Address range |
A | 10.0.0.0 – 10.255.255.255 |
B | 172.16.0.0 – 172.16.255.255 |
C | 192.168.0.0 – 192.168.255.255 |
How an IPv6 address is built up
Compared to IPv4 addresses, IPv6 addresses consist of 128 bits instead of 32 bits. Additionally, IPv6 addresses consist of 8 parts called hextets, which consist of 16 bits each (4 bits for each character). Each hextet consists of a hexadecimal number.
Also, the IPv6 address has a network part and a host part too. However, the two parts aren’t separated by a subnet mask, but by a decimal number after the IPv6 address (separated by a single slash), representing the bits of the network part.
Because an IPv6 address is so long, there are a couple of tricks to shorten them a bit:
- Remove continuous zeros and replace them with double colons (::) (this trick can only be applied once)
- The zeros that are left can just be left out if it’s not the only digit in an hextet
2001:0db8:0000:0000:a111:b222:0000:abcd turns into 2001:db8::a111:b222:0:abcd
As with IPv4 addresses, there are different types. However, in the case of the IPv6 address, they are not just public and private but instead:
Type | Prefix | Short explanation |
Global Unicast | 2000::/3 | Like public IPv4 addresses, but every device can have it’s own global unicast IPv6 address as there are enough unique addresses |
Unique local | FC00::/7 | Like private IPv4 addresses |
Link local | FE80::/10 | Also private addresses, but they are only used for communication within a single area in a network |
Multicast | FF00::/8 | Send to multiple devices that are listening for that address (like broadcast) |
Anycast | 2000::/3 | Multiple devices can have the same IPv6 address. With an anycast address, the data is sent to the closest address |
An example for a global unicast address is 2001:db8::a111:b222:0:abcd
How can I find out my IP address?
Private address
To find out your private address you have to open the terminal (search for cmd on Windows) and then type ipconfig for Windows or ifconfig for Linux and MacOS
Public address
To find out your public address you just have to visit a website like whatismyip.com.
Summary
In conclusion, IP addresses are used to locate computers on the internet or in a local network. There are two types – IPv4 and IPv6. Ipv6 is the newer version, and it has more possible combinations. Therefore, each device can have it’s own and unique public IP address.
With that information you know more about the basics of networking and can read through the next topics!
Thanks for reading!