What is IPv4?
IPv4 addresses have 4 bytes (32 bits) whereas IPv6 has 16 bytes (128 bits) in length. These bytes are typically called octets and for the sake of readability, these bytes, bits, and octets are written in what’s called dotted decimal. Dotted decimal separates each octet of the IP address with a decimal point. For example, a typical IP address (IPv4) seen by a computer in binary notation is:
- 11000000.10101000.00000001.00000000
- 192.168.1.0
That translates into dotted decimal as:As you can see, dotted decimal notation is much easier on the eyes and it’s what you’ll typically see when dealing with IP addresses through your Internet Service Provider (ISP).
But how did we get from dotted decimal to binary and vice versa? It’s a process that’s crucial to understanding IPs and Subnets, so let’s learn!
What Is an Internet Protocol (IP) Address?
Internet Protocol, or IP, is a protocol used by private and public networks to facilitate communication between devices within the network. All types of network, from the World Wide Web to small private network, depend on assigned IP addresses to dictate where information goes. An IP address is set of unique 8-bit numbers assigned to a device that connect to a network. In other words, your IP address is like your home address but for internet-capable devices. Instead of “mailing” a letter, you’re “mailing” information. There are two types of IP addressing standards, IPv4 and IPv6. IPv4 is the most widely used and familiar type of IP address, but with IPv4 address space running out, IPv6 is in line to replace it in the future.
What Is an IPv4 Subnet?
During the early days of the Internet (before it was named the world-wide-web), the US Department of Defense agency developed IPv4 – a quad dotted decimal format to test the limits of its networking capabilities. IPv4 addresses are designated by four subnets of numbers (e.g. the IPc4 address example of 170.16.240.1) which is separated by decimals. However, during the late 1980s, the federal government realized they would run out of IPv4 addresses and something needed to be done. IPv6 connectivity researchers proposed a simple solution: introduce more subnets (eight groups in total) separated by colons to define the IPv6 protocol. As such, IPv4’s subnets are defined by five differing classes which will be explained below.
To look up your IPv4 subnet, you can use several online tools called ipv4 subnet calculators to sort through all different kinds of subnet information on your IP. For even more information on how IPV4 and IPv4 subnetting works, please check out on informational charts below.
What Are IPv4 Address Classes?
IP addresses (using the IPv4 standard) are divided into 5 classes:
- Class A
- Class B
- Class C
- Class D
- Class E
They are defined as such:
Class | Starting Address | Ending Address |
A | 0.0.0.0 | 127.255.255.255 |
B | 128.0.0.0 | 191.255.255.255 |
C | 192.0.0.0 | 223.255.255.255 |
D | 224.0.0.0 | 239.255.255.255 |
E | 240.0.0.0 | 255.255.255.255 |
Each IP class has a purpose in the world and are assigned to the internet as such:
Class | Purpose |
A | These are designed to be used in very large companies like Google. |
B | These are designed to be used in medium-sized companies |
C | They designed to be used in small-sized companies. |
D | They are not used in the public sector, instead being reserved for multicast addressing |
E | They are also not used in the public sector, instead being reserved for scientific studies. |
Who Is ARIN?
During the beginning stages of the internet, developers created a series of numbers, Internet Protocol version 4 (IPv4), to effectively and efficiently network between computers. A few years later the Internet Assigned Numbers Authority (IANA), now a department of Internet Corporation for Assigned Names and Numbers (ICANN), was created to help manage IPv4 IP addresses. As the internet continued to grow so did the need for IPs and organizations to manage their distribution. From the 1980s through the 2000s, a number of organizations were created to do just that.
In 1997, the American Registry for Internet Numbers (ARIN), one of five Regional Internet Registries (RIRs), was created as a nonprofit to issue Internet number resources in its region that today includes parts of the Caribbean, Canada, and the US. ARIN was also created to facilitate consensus-based policies and even promote the advancement of the Internet through education and outreach (ARIN, 2013). Today we rely on ARIN to implement the policies developed through open and ongoing community input. In other words, ARIN is the organization with the authority to carry-out the policies we created around Internet numbers – whatever they say, goes!
In need of IP addresses? Contact Colocation America to get more information on how to acquire IPv4 connectivity.
Class address ranges:
IPv4 Classes Class A = 1.0.0.0 to 126.0.0.0 Class B = 128.0.0.0 to 191.255.0.0 Class C = 192.0.1.0 to 223.255.255.0
Reserved address ranges for private (non-routed) use (see RFC 1918): 10.0.0.0 -> 10.255.255.255 172.16.0.0 -> 172.31.255.255 192.168.0.0 -> 192.168.255.255
Other reserved addresses: 127.0.0.0 is reserved for loopback and IPC on the local host 224.0.0.0 -> 239.255.255.255 is reserved for multicast addresses
Class A IP Addresses Network Bits Subnet Mask Number of Subnets Number of Hosts
Network Bits | Subnet Mask | Number of Subnets | Number of Hosts |
/8 | 255.0.0.0 | 0 | 16777214 |
/9 | 255.128.0.0 | 2 (0) | 8388606 |
/10 | 255.192.0.0 | 4 (2) | 4194302 |
/11 | 255.224.0.0 | 8 (6) | 2097150 |
/12 | 255.240.0.0 | 16 (14) | 1048574 |
/13 | 255.248.0.0 | 32 (30) | 524286 |
/14 | 255.252.0.0 | 64 (62) | 262142 |
/15 | 255.254.0.0 | 128 (126) | 131070 |
/16 | 255.255.0.0 | 256 (254) | 65534 |
/17 | 255.255.128.0 | 512 (510) | 32766 |
/18 | 255.255.192.0 | 1024 (1022) | 16382 |
/19 | 255.255.224.0 | 2048 (2046) | 8190 |
/20 | 255.255.240.0 | 4096 (4094) | 4094 |
/21 | 255.255.248.0 | 8192 (8190) | 2046 |
/22 | 255.255.252.0 | 16384 (16382) | 1022 |
/23 | 255.255.254.0 | 32768 (32766) | 510 |
/24 | 255.255.255.0 | 65536 (65534) | 254 |
/25 | 255.255.255.128 | 131072 (131070) | 126 |
/26 | 255.255.255.192 | 262144 (262142) | 62 |
/27 | 255.255.255.224 | 524288 (524286) | 30 |
/28 | 255.255.255.240 | 1048576 (1048574) | 14 |
/29 | 255.255.255.248 | 2097152 (2097150) | 6 |
/30 | 255.255.255.252 | 4194304 (4194302) | 2 |
Class B IP Addresses Network Bits Subnet Mask Number of Subnets Number of Hosts
Network Bits | Subnet Mask | Number of Subnets | Number of Hosts |
/16 | 255.255.0.0 | 0 | 65534 |
/17 | 255.255.128.0 | 2 (0) | 32766 |
/18 | 255.255.192.0 | 4 (2) | 16382 |
/19 | 255.255.224.0 | 8 (6) | 8190 |
/20 | 255.255.240.0 | 16 (14) | 4094 |
/21 | 255.255.248.0 | 32 (30) | 2046 |
/22 | 255.255.252.0 | 64 (62) | 1022 |
/23 | 255.255.254.0 | 128 (126) | 510 |
/24 | 255.255.255.0 | 256 (254) | 254 |
/25 | 255.255.255.128 | 512 (510) | 126 |
/26 | 255.255.255.192 | 1024 (1022) | 62 |
/27 | 255.255.255.224 | 2048 (2046) | 30 |
/28 | 255.255.255.240 | 4096 (4094) | 14 |
/29 | 255.255.255.248 | 8192 (8190) | 6 |
/30 | 255.255.255.252 | 16384 (16382) | 2 |
Supernetting (CIDR) Chart CIDR – Classless Inter-Domain Routing.
Note: The Number of Class C networks must be contiguous. For example, 192.169.1.0/22 represents the following block of addresses: 192.169.1.0, 192.169.2.0, 192.169.3.0 and 192.169.4.0.
CIDR Block | Supernet Mask | Number of Class C Addresses | Number of Hosts |
/14 | 255.252.0.0 | 1024 | 262144 |
/15 | 255.254.0.0 | 512 | 131072 |
/16 | 255.255.0.0 | 256 | 65536 |
/17 | 255.255.128.0 | 128 | 32768 |
/18 | 255.255.192.0 | 64 | 16384 |
/19 | 255.255.224.0 | 32 | 8192 |
/20 | 255.255.240.0 | 16 | 4096 |
/21 | 255.255.248.0 | 8 | 2048 |
/22 | 255.255.252.0 | 4 | 1024 |
/23 | 255.255.254.0 | 2 | 512 |
Understanding an IPv4 subnet mask
Now that you understand what binary is, let’s have a look at our two subnet masks from the beginning of my post: 192.168.1.0 / 255.255.255.0 192.168.1.0/24 The concept of a subnet mask is simple. You have a network and you have hosts on the network (anything with an IP address is a host).
The subnet mask determines what portion of the TCP/IP address represents your network and what portion can be used for your hosts. Because I am a simple person, I think of it like this; The network number represents the street I live on, and the host portion is used for the numbers on all the houses on my street.
A subnet mask of 255.255.255.0 means that the first three octets of the address will be used for the network, and thus our network number is 192.168.1. This means we can have 254 computers on this network, because the fourth octet is not being used by the network portion of the address. We know this because of the 0 in the subnet mask (255.255.255.0). We call each of the number sections an octet because we think of them in binary, and there are eight possible bits in each section.
Eight bits is an octet. 11111111 in binary is 255 in decimal (did you do the conversions?). So our decimal subnet mask 255.255.255.0 displayed in binary is going to be: 11111111.11111111.11111111.00000000 If you count all the ones, you will find that there are 24 of them. Now look at the subnet mask examples again.
192.168.1.0/255.255.255.0
192.168.1.0/24
Do you see why both subnet masks are the same?
The number 24 is the number of bits used in the network portion of the address, and is shorthand for writing the address/subnet mask combination. It becomes important to understand this when you start dividing your network into multiple sub networks.