# Guide to Subnet Mask (Subnetting) and Network Classes

What is the Need for IP Addressing And Subnet Mask (Subnetting) in Computer Networking System:

In this Complete Networking Training Series, we saw in detail about LAN Vs WAN Vs MAN in our previous tutorial.

In this tutorial, we will learn and explore the need for IP addressing in a computer networking system.

IP addressing is used to recognize the host of a network and uniquely identify a particular device of the Network.

Whereas subnetting is used in combination with IP addressing to develop several logical addressing that exists within a single network. We will see the different classes of a Network along with their roles and significance in computer networking. In our daily life, we human beings identify each other with our names, similarly, the routers and switches recognize their neighboring device and network with an IP address and a subnet mask.

The overall phenomenon of logical addressing works on the Layer-3 of the OSI reference model and the network components like routers and switches are the host devices that are most popularly used.

An IP Address is a 32-bit logical address that distinctively classifies a host of the network. The host can be a computer, Mobile handset or even a tablet. The 32 bits binary IP address is made up of two distinctive parts i.e. The Network address and the Host address.

It also has 4 octets as each octet is having 8 bits. This octet is converted into decimal and is separated by a format i.e. dot. Thus it is represented in a dotted-decimal format. The range of an octet in binary is from 00000000 to 11111111 and in decimal from 0 to 255.

Example of an IP Address format:

192.168.1.64 (in decimal)

11000000.10101000.00000001.01000000 (in binary).

The binary one is difficult to memorize thus, in general, the dotted decimal format is used worldwide for representation of the logical addressing.

Let’s understand in detail how the binary octet values are converted into decimal values:

There are 8 bits and each bit has the value of 2 to the power n (2^n). The rightmost have the value 2^0 and left most have the value 2^7.

So the value of each bit is as follows:

2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0 (^ denotes the power)

Thus the result would be:

128+ 64+ 32+ 16+ 8+ 4+ 2+ 1

When all the bits are 1 then the values come out to be 255 (128+64+32+16+8+4+2+1= 255).

Suppose all the bits of an octet is not 1. Then see how we can calculate the IP address:

1 0 0 1 0 0 0 1, 128+0+0+16+0+0+0+1= 145.

By combining the bits of the octets in different combinations according to the need, we can derive the overall IP address of the desired network. As per the requirement, these are divided into various classes of a network called as class A, class B, class C, class D, and class E.

Most popularly class A, B and C are used for commercial purposes and class D and E have reserved rights.

## Network Classes and Subnet Mask

The organization which governs the internet has divided the IP addresses into different classes of the network.

Each class is identified by its subnet mask. By the categorization of a default subnet mask, we can easily identify the class of an IP address of the network. The first octet of an IP address identifies the particular class of an IP address.

The classification is shown with the help of the below table and figure.

ClassIst octet Decimal RangeNetwork/Host ID
A1 to 126
N.H.H.H
255.0.0.0
B128 to 191N.N.H.H255.255.0.0
C192 to 223N.N.N.H
255.255.255.0
D224 to 239Reserved for Multicasting
E240 to 254Experimental • The class ‘A’ Address ranging from 127.0.0.0 to 127.255.255.255 cannot be used and is reserved for loopback and diagnostic functions. The numbers of hosts which can be connected to this network are greater than 65536 hosts.
• The number of hosts connected within the class B networks is from 256 to 65534 hosts.
• The number of hosts connected within the class C network is less than 254 hosts. Therefore the class C network mask is perfect for the minor networks which are known as subnetworks. We utilize the bits from the last octet of class C for constructing mask. Thus we need to rearrange and optimize the subnet depending upon the availability of the bits.

Below table will show the masks that can be drawn on with Class C networks.

Last octet binary Value
No. of hosts connected
255.255.255.128
10000000
126
255.255.255.192
11000000
62
255.255.255.224
11100000
30
255.255.255.240
11110000
14
255.255.255.24811111000
6
255.255.255.25211111100
2

We have studied about the network class and subnet mask phenomenon of computer networking. Now let’s see how the mask will help us to classify the network ID and host ID part of an IP address.

Let us assume the case of a class A IP address:

For Example, take a pair of IP address and subnet mask 10.20.12.2 255.0.0.0

#1) Convert this Combination into a binary value: #2) The bits corresponding to the subnet mask with all 1’s represent the network ID as it is a class A network and the first octet represents the network ID. The bits corresponding to all 0’s of the subnet mask is the host ID. Thus the network ID is 10 and the host ID is 20.12.2

#3) From the given subnet, we can also calculate the IP range of a particular network. If the IP is 10.68.37.128 (assuming class A case)

IP range =256-224= 32.
Out of 32 IP’s, ideally one is used for the gateway, second is for the network IP and the third is for broadcast IP.
Thus total usable IP’s are 32-3= 29 IP’s.

The IP range will be 10.68.27.129 to 10.68.27.158.

## Subnetting

Subnetting allows us to create various sub-networks or logical networks within one network of a particular class of the network. Without subnetting, it is almost unrealistic to create big networks.

For constructing a big networking system, every link must have a unique IP address with every device on that linked network which is being the participant of that network.

With the help of a subnetting technique, we can split the large networks of a particular class (A, B or C) into smaller subnetworks for inter-connection between each node which are situated at different locations.

Each node on the network would have a distinctive IP and subnet mask IP. Any switch, router or gateway that connects n networks has n unique Network ID and one subnet mask for each of the network it interconnects with.

The formulae of subnetting is as follows:

2^n >= requirement.

The formulae of a number of hosts per subnet is as follows:

2^n -2

Now let’s understand the overall process with the help of an Example:

We have taken an example of Class C network ID with a default subnet mask.

Suppose Network ID/IP address is: 192.168.1.0

Default Subnet mask: 255.255.255.0 (in decimal)

Default Subnet mask: 11111111.11111111.11111111.00000000 (in binary)

Thus the number of bits are 8+8+8+0= 24 bits. As mentioned earlier, for subnetting in class C network, we will borrow bits from the host portion of the subnet mask.

Therefore, to customize the subnet as per requirement:

We take a subnet mask of 255.255.255.248 (in decimal)

11111111.11111111.11111111.11111000 (in binary).

From the above binary notation, we can see that the last 3 bits of the last octet can be used for host ID addressing purpose.

Thus the number of subnets= 2^n = 2^3= 8 subnets (n=3).

Number of hosts per subnet= 2^n -2= 2^3 -2= 8-2= 6 Subnets i.e. usable Host IP.

Now the IP addressing scheme is as follows:

Network IPFirst Usable IPLast Usable IP
192.168.1.0192.168.1.1192.168.1.6192.168.1.7
192.168.1.8192.168.1.9192.168.1.14192.168.1.15
192.168.1.16192.168.1.17192.168.1.22192.168.1.23
192.168.1.24192.168.1.25192.168.1.30192.168.1.31
192.168.1.32
192.168.1.33192.168.1.38192.168.1.39
192.168.1.40192.168.1.41192.168.1.46192.168.1.47
192.168.1.48192.168.1.49192.168.1.54192.168.1.55
192.168.1.56192.168.1.57
192.168.1.62192.168.1.63

The subnet mask for all the above IP’s in the table is common i.e. 255.255.255.248.

With the help of the above example, we can clearly see, how subnetting helps us to construct inter-networking between various links and nodes of the same subnetwork. All these above IP’s can be used for inter-networking the devices within the overall network.

Note: Subnet mask is most widely used everywhere in a computer networking system. Hence, there is one more method to represent the subnet mask of a particular network which is chosen and standardized as it is easy to denote and memorize.

11111111.11111111.11111111.11111000 (decimal notation)

From the decimal notation we can calculate the number of bits having 1 in each octet:

8+8+8+5= 29

Thus the Subnet mask can be denoted as /29.

With Network ID it can be denoted as 192.168.1.9/29.

From the above notation, anyone who knows the standard notation and formulae of subnetting can understand that the IP is using a subnet mask of 255.255.255.248 or /29.

The different Subnetting scheme in binary and decimal notation is shown below:

Subnet MaskNotation in decimalNotation in BinaryNumber of Usable IP
/24255.255.255.011111111.11111111.11111111.00000000254
/25255.255.255.12811111111.11111111.11111111.10000000126
/26255.255.255.19211111111.11111111.11111111.1100000062
/27255.255.255.22411111111.11111111.11111111.1110000030
/28255.255.255.240
11111111.11111111.11111111.1111000014
/29255.255.255.24811111111.11111111.11111111.111110006
/30255.255.255.25211111111.11111111.11111111.111111002

The ‘/’ notation method of the subnet mask is most widely used as it is easy to memorize and the binary notation and decimal are very lengthy in size.

As we are denoting the mask scheme while interconnecting the network components through the figure, if we use the decimal and binary method then the overall diagram will become very complex and difficult to understand.

There are so many IP’s on the platform to be shown and it becomes difficult to memorize as well. Thus generally, people who are familiar with routing and IP addressing scheme use short notation methods in figures and diagrams.

Example 1:

Understanding Subnetting with an Example of Interconnection of Network Devices: The above figure shows how subnetting is used for interconnection of subnetworks. Firstly, as per our need for the number of hosts required to be connected and meet the other requirements of the network, we customize the subnet mask and network ID accordingly and assign to the devices thereafter.

The above network is using class C network mask and /29 subnet mask means network IP can be divided into 8 subnets. Each router has a unique IP address for each linked subnetwork.

There is an important point to be noticed that the more the bits we carry from the subnet mask for host ID then the more will be the subnets obtainable for the network.

Example 2:

Class B Network:

Notation in binary
Number of Usable IP
Number of Subnets
255.255.128.011111111.11111111.10000000.00000000327662
255.255.192.011111111.11111111.11000000.00000000163824
255.255.224.011111111.11111111.11100000.0000000081908
255.255.240.011111111.11111111.11110000.00000000409416
255.255.248.011111111.11111111.11111000.00000000204632
255.255.252.011111111.11111111.11111100.00000000102264
255.255.254.011111111.11111111.11111110.00000000
510128
255.255.255.011111111.11111111.11111111.00000000254256
255.255.255.12811111111.11111111.11111111.10000000126512
255.255.255.19211111111.11111111.11111111.11000000
621024
255.255.255.22411111111.11111111.11111111.11100000302048
255.255.255.24011111111.11111111.11111111.11110000144096
255.255.255.24811111111.11111111.11111111.11111000
68192
255.255.255.25211111111.11111111.11111111.11111100216384

The above table shows the details of the number of subnets and hosts that can be connected per subnet mask by using Class B subnetting Scheme.

For connecting a host in big quantity and WAN communication systems, the Class B subnetting is very effective as it gives a wide range of IP’s for configuration.

### Conclusion

In this tutorial, we have learned the need for IP addressing and Subnetting in the computer networking systems, with the help of different examples.

The IP addressing scheme and Subnetting are the building blocks in defining the subnetworks and IP’s within a large network.

The different formulas we have used will help us in determining the hosts that we can connect in a particular network and how also enable us to know how a huge network can be divided into many smaller networks for easier communication.

PREV Tutorial | NEXT Tutorial