Subnetting Tricks Subnetting Made Easy with Examples

This tutorial explains the easiest and fastest method of subnetting through 100+ examples. You can use these methods to solve subnetting-related questions in less than a minute in any exam or interview.

There are three types of subnetting questions you may be asked in an exam or interview.

  1. Calculate the number of networks and host addresses in a given IP subnet.
  2. Find the network ID and broadcast ID of a given IP subnet.
  3. Identify the subnet mask of a given IP subnet.

Calculating networks and host addresses

In these types of questions, we need to calculate the total number of IP subnets and host addresses we can get from a given IP subnet.

The following table lists some example IP subnets. We will calculate the total number of subnets we can get from each subnet and the total number of host addresses and valid host addresses in each created subnet.

10.0.0.0/10 130.0.0.0/18 192.168.1.0/26
20.12.0.0/13 140.50.60.0/20 200.0.0.0/27
78.59.12.0/16 172.168.1.0/24 210.200.0.0/28
112.15.0.0/24 180.10.20.0/28 215.0.0.0/29
122.14.25.0/28 185.0.0.0/30 220.220.10.0/30

In the first step, we determine the IP class of the given IP subnet. An IP address consists of 32 bits. These bits are divided into four sections. Sections are separated by a dot. Each section contains 8 bits. 8 bits are equal to 1 byte or 1 octet.

32 bits ip address

We use the first octet's value to determine the IP class.

Value in the First octet Class
0 - 127 A
128 - 191 B
192 - 223 C

An IP address contains network and host bits. In slash notation, we write the number of network bits with the IP address.

Class Reserved network bits Default subnet mask
(Decimal notation)
Default subnet mask
(Slash notation)
A 8 255.0.0.0 /8
B 16 255.255.0.0 /16
C 24 255.255.255.0 /24

If we subtract the network bits from the total IP bits, we get the host bits.

Host bits  = 32 - Network bits

Each IP class has reserved network bits in all IP addresses. We cannot use reserved network bits for subnetting. We can use only host bits for subnetting.

subnetting eliglible bits

If we subtract the given network bits from the reserved network bits, we get the host bits used in subnetting.

Number of host bits used in subnetting = Total bits used in network portion – Reserved bits for the network portion
Given IP subnet Network bits
(Value after the slash)
IP Class Reserved network bits Host bits used
as network bits
Available host bits
32 - network bits
10.0.0.0/10 10 A 8 10 - 8 = 2 32 – 10 = 22
20.12.0.0/13 13 A 8 13 – 8 = 5 32 – 13 = 19
78.59.12.0/16 16 A 8 16 – 8 = 8 32 – 16 = 16
112.15.0.0/24 24 A 8 24 – 8 = 16 32 – 24 = 8
122.14.25.0/28 28 A 8 28 – 8 = 20 32 – 28 = 4
130.0.0.0/18 18 B 16 18 – 16 = 2 32 – 18 = 14
140.50.60.0/20 20 B 16 20 – 16 = 4 32 – 20 = 12
172.168.1.0/24 24 B 16 24 – 16 = 8 32 – 24 = 8
180.10.20.0/28 28 B 16 28 – 16 = 12 32 – 28 = 4
185.0.0.0/30 30 B 16 30 – 16 = 14 32 – 30 = 2
192.168.1.0/26 26 C 24 26 - 24 = 2 32 – 26 = 6
200.0.0.0/27 27 C 24 27 – 24 = 3 32 – 27 = 5
210.200.0.0/28 28 C 24 28 – 24 = 4 32 – 28 = 4
215.0.0.0/29 29 C 24 29 – 24 = 5 32 – 29 = 3
220.220.10.0/30 30 C 24 30 – 24 = 6 32 – 30 = 2

Once we know how many host bits are used as network bits to create additional networks, we can use the following formulas to calculate the number of networks, total hosts, and valid hosts.

Number of networks (subnet) = 2N
Number of total host addresses in each network = 2H
Number of valid host addresses in each network = 2H – 2

Here, N is the number of host bits used as network bits to create additional subnets, and H is the available host bits.

Given Address Host bits used
as network bits
Available host bits Networks (Subnets) Total hosts Valid hosts
10.0.0.0/102 22 4 (22) 4194304 (222) 4194302 (4194304 – 2)
20.12.0.0/135 19 32 (25) 524288 (219) 524286 (524288 - 2)
78.59.12.0/168 16 256 (28) 65536 (216) 65534 (65536 - 2)
112.15.0.0/2416 8 65536 (216) 256 (28) 254 (256 - 2)
122.14.25.0/2820 4 1048576 (220) 16 (24) 14 (16 - 2)
130.0.0.0/182 14 4 (22) 16384 (214) 16382 (16384 -2)
140.50.60.0/204 12 16 (24) 4096 (212) 4094 (4096 -2)
172.168.1.0/248 8 256 (28) 256 (28) 254 (256 -2)
180.10.20.0/2812 4 4096 (212) 16 (24) 14 (16 -2)
185.0.0.0/3014 2 16384 (214) 4 (22) 2 (4 -2)
192.168.1.0/262 6 4 (22) 64 (26) 62 (64 -2)
200.0.0.0/27 3 5 8 (23) 32 (25) 30 (32 -2)
210.200.0.0/28 4 4 16 (24) 16 (24) 14 (16 - 2)
215.0.0.0/29 5 3 32 (25) 8 (23) 6 (8 -2)
220.220.10.0/30 6 2 64 (26) 4 (22) 2 (4 -2)

Finding address type, network ID, and broadcast ID

In these types of questions, we need to find out three things: address type, network ID, and broadcast ID from the given IP address.

Let us take some example IP addresses and find their address type, network ID, and broadcast ID.

10.0.0.0/8 50.100.255.255/20 150.60.180.0/19 192.168.1.240/25
10.48.0.0/12 1.1.8.255/23 160.0.39.255/21 200.20.10.191/26
20.42.255.255/13 100.100.100.110/25 172.168.8.0/24 210.200.20.100/27
30.6.1.0/16 110.80.20.128/27 180.78.0.64/28 215.0.0.47/28
40.60.240.0/17 120.20.30.15/30 185.0.0.26/29 220.10.10.50/29

In the first step, we find the interesting octet. The interesting octet is the octet in which the network address separates from the host address in the IP address.

If we know the number of network bits, we can easily find the octet in which network bits separate from the host bits. For example, if an IP address has the /15 subnet mask in the slash notation, it has 15 network bits. The number 15 comes in the second octet's range (9 - 16). Hence, the interesting octet will be the second octet.

Network bits range Interesting octet
0 - 8 First
9 - 16 Second
17 - 24 Third
25 - 32 Fourth

After finding the interesting octet, we take the following steps to find the type of the IP address.

  • If the octet comes before the interesting octet, we write it as it is.
  • If the octet comes after the interesting octet, we write 0 in the network address and 255 in the broadcast address.
  • In the interesting octet, we write a placeholder character X. We will calculate its value in the next step.
Given IP address Value after slash Interesting octet Network address Broadcast Address
10.0.0.0/8 /8 First (1-8) X.0.0.0 X.255.255.255
10.48.0.0/12 /12 Second (9-16) 10.X.0.0 10.X.255.255
20.42.255.255/13 /13 Second (9-16) 20.X.0.0 20.X.255.255
30.6.1.0/16 /16 Second (9-16) 30.X.0.0 30.X.255.255
40.60.240.0/17 /17 Third (17-24) 40.60.X.0 40.60.X.255
50.100.255.255/20 /20 Third (17 -24) 50.100.X.0 50.100.X.255
1.1.8.255/23 /23 Third (17-24) 1.1.X.0 1.1.X.255
100.100.100.110/25 /25 Fourth (25 -32) 100.100.100.X 100.100.100.X
110.80.20.128/27 /27 Fourth (25-32) 110.80.20.X 110.80.20.X
120.20.30.15/30 /30 Fourth (25-32) 120.20.30.X 120.20.30.X
150.60.180.0/19 /19 Third (17-24) 150.60.X.0 150.60.X.255
160.0.39.255/21 /21 Third (17-24) 160.0.X.0 160.0.X.255
172.168.8.0/24 /24 Third (17-24) 172.168.X.0 172.168.X.255
180.78.0.64/28 /28 Fourth (25-32) 180.78.0.X 180.78.0.X
185.0.0.26/29 /29 Fourth (25-32) 185.0.0.X 185.0.0.X
192.168.1.240/25 /25 Fourth (25-32) 192.168.1.X 192.168.1.X
200.20.10.191/26 /26 Fourth (25-32) 200.20.10.X 200.20.10.X
210.200.20.100/27 /27 Fourth (25-32) 210.200.20.X 210.200.20.X
215.0.0.47/28 /28 Fourth (25-32) 215.0.0.X 215.0.0.X
220.10.10.50/29 /29 Fourth (25-32) 220.10.10.X 220.10.10.X

Subtract the number of network bits (value after slash) from the ending number of the interesting octet's range.

  • Subtract it from 8 if the interesting octet is the first octet.
  • Subtract it from 16 if the interesting octet is the second octet.
  • Subtract it from 24 if the interesting octet is the third octet.
  • Subtract it from 32 if the interesting octet is the fourth octet.
Given IP address Value after slash Interesting octet Ending value of range Subtraction
10.0.0.0/8 /8 First(1-8) 8 8 – 8 = 0
10.48.0.0/12 /12 Second (9-16) 16 16 – 12 = 4
20.42.255.255/13 /13 Second (9-16) 16 16 – 13 = 3
30.6.1.0/16 /16 Second (9-16) 16 16 – 16 = 0
40.60.240.0/17 /17 Third (17-24) 24 24 – 17 = 7
50.100.255.255/20 /20 Third (17 -24) 24 24 - 20 = 4
1.1.8.255/23 /23 Third (17-24) 24 24 – 23 = 1
100.100.100.110/25 /25 Fourth (25 -32) 32 32 – 25 = 7
110.80.20.128/27 /27 Fourth (25-32) 32 32 – 27= 5
120.20.30.15/30 /30 Fourth (25-32) 32 32 – 30 = 2
150.60.180.0/19 /19 Third (17-24) 24 24 – 19 = 5
160.0.39.255/21 /21 Third (17-24) 24 24 – 21 = 3
172.168.8.0/24 /24 Third (17-24) 24 24 – 24 = 0
180.78.0.64/28 /28 Fourth (25-32) 32 32 – 28 = 4
185.0.0.26/29 /29 Fourth (25-32) 32 32 – 29 = 3
192.168.1.240/25 /25 Fourth (25-32) 32 32 – 25 = 7
200.20.10.191/26 /26 Fourth (25-32) 32 32 – 26 = 6
210.200.20.100/27 /27 Fourth (25-32) 32 32 – 27 = 5
215.0.0.47/28 /28 Fourth (25-32) 32 32 – 28 = 4
220.10.10.50/29 /29 Fourth (25-32) 32 32 – 29 = 3

In the next step, we calculate the block size. We use the remainder of the previous subtraction to calculate the block size.

Block size = 2Remainder of the subtraction
Given IP address Interesting octet Remainder of the subtraction Block Size
10.0.0.0/8 First 0 (20) = 1
10.48.0.0/12 Second 4 (24) = 16
20.42.255.255/13 Second 3 (23) = 8
30.6.1.0/16 Second 0 (20) = 1
40.60.240.0/17 Third 7 (27) = 128
50.100.255.255/20 Third 6 (24) = 16
1.1.8.255/23 Third 1 (21) = 2
100.100.100.110/25 Fourth 7 (27) = 128
110.80.20.128/27 Fourth 5 (25) = 32
120.20.30.15/30 Fourth 2 (22) = 4
150.60.180.0/19 Third 5 (25) = 32
160.0.39.255/21 Third 3 (23) = 8
172.168.8.0/24 Third 0 (20) = 1
180.78.0.64/28 Fourth 4 (24 ) = 16
185.0.0.26/29 Fourth 3 (23) = 8
192.168.1.240/25 Fourth 7 (27) = 128
200.20.10.191/26 Fourth 6 (26) = 64
210.200.20.100/27 Fourth 5 (25) = 32
215.0.0.47/28 Fourth 4 (24) = 16
220.10.10.50/29 Fourth 3 (23) = 8

In the next step, we count in block size until the interesting octet's value comes in the block size's range. Each block size has a range of numbers. The interesting octet's value must be in this range. For example, if the interesting octet's value is 27 and the block size is 8, the range will be 24-31 (0-7, 8-15, 16-23, 24-31).

The block size range starts from 0 and increases in multiple of the block size. For example, if the block size is 4, the numbers in the first range will be 0, 1, 2, and 3.

Given IP address Interesting octet Interesting octet's value Block size Range in block size which cover the value of the interesting octet
10.0.0.0/8 First 10 1 0-0, 1-1, 2-2, 3-3, 4-4, 5-5, 6-6, 7-7, 8-8, 9-9, 10-10
10.48.0.0/12 Second 48 16 0-15, 16-31, 32-47, 48-63
20.42.255.255/13 Second 42 8 0-7, 8-15, 16-23, 24-31, 32-39, 40-47
30.6.1.0/16 Second 6 1 0-0, 1-1, 2-2, 3-3, 4-4, 5-5, 6-6
40.60.240.0/17 Third 240 128 0-127, 128-255
50.100.255.255/20 Third 255 16 0-15, 16-31, 32-47,..... 224-239, 240-255
1.1.8.255/23 Third 8 2 0-1, 2-3, 4-5, 6-7, 8-9
100.100.100.110/25 Fourth 110 128 0-127,128-255
110.80.20.128/27 Fourth 128 32 0-31, 32-63, 64-95, 96 -127, 128-159
120.20.30.15/30 Fourth 15 4 0-3, 4-7, 8-11, 12-15
150.60.180.0/19 Third 180 32 0-31, 32-63, 64-95, 96 -127, 128-159, 160 - 191
160.0.39.255/21 Third 39 8 0-7, 8-15, 16-23, 24-31, 32-39
172.168.8.0/24 Third 8 1 0-0, 1-1, 2-2, 3-3, 4-4, 5-5, 6-6, 7-7, 8-8
180.78.0.64/28 Fourth 64 16 0-15, 16-31, 32-47, 48-63, 64-79
185.0.0.26/29 Fourth 26 8 0-7, 8-15, 16-23, 24-31
192.168.1.240/25 Fourth 240 128 0-127, 128-255
200.20.10.191/26 Fourth 191 64 0-63, 64-127, 128- 191
210.200.20.100/27 Fourth 100 32 0-31, 32-63, 64-95, 96 -127
215.0.0.47/28 Fourth 47 16 0-15, 16-31, 32-47
220.10.10.50/29 Fourth 50 8 0-7, 8-15, 16-23, 24-31, 32-39, 40-47, 48- 55

In the next step, we update the placeholder value. Update the placeholder value as the following.

  • In the network address, replace the placeholder value with the starting value of the range.
  • In the broadcast address, replace the placeholder value with the ending value of the range.

After updating the placeholder value, you can easily determine the address type of the given address.

  • If the given address exactly matches the network address, it is a network address.
  • If the given address exactly matches the broadcast address, it is a broadcast address.
  • If the given address is neither a network address nor a broadcast address, it is a valid host address.
Given IP address Interesting octet Interesting
octet value
Block range Network address Broadcast address Type
10.0.0.0/8 First 10 10-10 10.0.0.0 10.255.255.255 Network
10.48.0.0/12 Second 48 48-63 10.48.0.0 10.63.255.255 Network
20.42.255.255/13 Second 42 40-47 20.40.0.0 20.47.255.255 Valid host
30.6.1.0/16 Second 6 6-6 30.6.0.0 30.6.255.255 Valid host
40.60.240.0/17 Third 240 128-255 40.60.128.0 40.60.255.255 Valid Host
50.100.255.255/20 Third 255 240-255 50.100.240.0 50.100.255.255 Broadcast
1.1.8.255/23 Third 8 8-9 1.1.8.0 1.1.9.255 Valid host
100.100.100.110/25 Fourth 110 0-127 100.100.100.0 100.100.100.127 Valid Host
110.80.20.128/27 Fourth 128 128-159 110.80.20.128 110.80.20.159 Network
120.20.30.15/30 Fourth 15 12-15 120.20.30.12 120.20.30.15 Broadcast
150.60.180.0/19 Third 180 160 - 191 150.60.160.0 150.60.191.255 Valid host
160.0.39.255/21 Third 39 32-39 160.0.32.0 160.0.39.255 Broadcast
172.168.8.0/24 Third 8 8-8 172.168.8.0 172.168.8.255 Network
180.78.0.64/28 Fourth 64 64-79 180.78.0.64 180.78.0.79 Network
185.0.0.26/29 Fourth 26 24-31 185.0.0.24 185.0.0.31 Valid host
192.168.1.240/25 Fourth 240 128-255 192.168.1.128 192.168.1.255 Valid host
200.20.10.191/26 Fourth 191 128- 191 200.20.10.128 200.20.10.191 Broadcast
210.200.20.100/27 Fourth 100 96 -127 210.200.20.96 210.200.20.127 Valid host
215.0.0.47/28 Fourth 47 32-47 215.0.0.32 215.0.0.47 Broadcast
220.10.10.50/29 Fourth 50 48- 55 220.10.10.48 220.10.10.55 valid host

Calculating the subnet mask of a given IP address

In these types of questions, we calculate the subnet mask of a given IP address.

Let us take some example IP addresses and calculate their subnet masks.

20.10.30.0/8, 111.187.45.34/14, 162.160.46.24/20, 202.100.20.50/27

In the first step, we find the interesting octet.

Given IP address Value after slash Interesting octet
20.10.30.0/8 8 First
111.187.45.34/14 14 Second
162.160.46.24/20 20 Third
202.100.20.50/27 27 Fourth

In the second step, we build a temporary subnet mask based on the interesting octet.

  • If the octet comes before the interesting octet, we write 255.
  • If the octet comes after the interesting octet, we write 0.
  • In the interesting octet, we write a placeholder character X.
Given IP address Value after slash Interesting octet Temporary mask
20.10.30.0/8 8 First X.0.0.0
111.187.45.34/14 14 Second 255.X.0.0
162.160.46.24/20 20 Third 255.255.X.0
202.100.20.50/27 27 Fourth 255.255.255.X

Subtract the given network number (value after slash) from the interesting octet's range's ending number.

Given IP address Value after slash Interesting octet Interesting octet range Subtraction
20.10.30.0/8 8 First 1 – 8 8 – 8 = 0
111.187.45.34/14 14 Second 9 – 16 16 – 14 = 2
162.160.46.24/20 20 Third 17 – 24 24 -20 = 4
202.100.20.50/27 27 Fourth 25 – 32 32 – 27 = 5

Use the following formula to calculate the interesting octet's value.

Interesting octet's value = 256 - 2Remainder of the subtraction
Given IP address Value after slashRemainder of the subtraction Calculation Step 1 Calculation step 2
20.10.30.0/8 8 0 20 = 1 256 – 1 = 255
111.187.45.34/14 14 2 22 = 4 256 – 4 = 252
162.160.46.24/20 20 4 24 = 16 256 – 16 = 240
202.100.20.50/27 27 5 25 = 32 256 – 32 = 224

Replace the placeholder value with the interesting octet's value. It gives us the subnet mask of the given IP address.

Given IP addressk Value after slash Temporary mask Octet value Subnet mask
20.10.30.0/8 8 X.0.0.0 255 255.0.0.0
111.187.45.34/14 14 255.X.0.0 252 255.252.0.0
162.160.46.24/20 20 255.255.X.0 240 255.255.240.0
202.100.20.50/27 27 255.255.255.X 224 255.255.255.224

That's all for this tutorial. In this tutorial, we learned the easiest and fastest methods of subnetting through various examples.

ComputerNetworkingNotes CCNA Study Guide Subnetting Tricks Subnetting Made Easy with Examples