Is network subnetting driving you crazy ? Does binary math gives you headaches ? well..fear not, since the time i have delved into networks, i have gone through all the *oohs* and *aaahs* and the *NAH’s* of the logical crescendo , and I present you the easiest way to do subnetting. Generally,3 questions are being addressed when subnetting an IP-

- No of subnets
- No of valid hosts and
- Host range/block size

We will tackle them one by one. First you need to know about IP addresses and their classes.

Class A includes 0-127 where 0 and 127 are reserved, the default subnet mask for this class is /8 .

Class B includes 128-191 in their first octet, and the default subnet mask for this class is /16

Class C deals with 192-224 in their first octet and the default subnet mask for this class is /24

Also, also, understand a simple concept, subnet masks lying between 8- 15 are A class masks, from 16- 23 are B class and 24-32 are C class masks. Furthermore, a subnet mask can be expressed as this where (**N)**etwork value and (**H**)ost values-

Class A : 255.0.0.0 = NNNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH

Class B : 255.255.0.0 = NNNNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH

Class C : 255.255.0.0 = NNNNNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH

Class mask value 8 16 24 32

Now once you see it, lets tackle some real life questions. Lets find the no of subnets and valid hosts for** 192.168.10.10/18 **

See this ? its a C class IP address having a mask of B class (*as the mask lies between 16-24*) now, in order to find the number of subnets, use the following formulae -

2 ^ (What mask you have been provided – default mask of the IP address given)

putting the values here..

2^(18-16) –> 2^(2) –> 4 subnets

simple : )

Now for calculating the no.of hosts, use the below formulae -

2^(32- what mask you have been provided) –2

Putting values here..

2^(32-18)-2 -> 2^(14)-2 –> 16384-2 –> 16382 hosts

piece of cake ..

now to find the block size, see the provided mask lies between which next default mask value , which in this case is 24 (*as 18 is greater than 16 and less than 24*) . So ..

Subtract the provided mask with the class mask value which is greater than it.

2^(Next class mask value – provided mask)

which on putting values will be

2^(24-18) –> 2^6 –> 64

So, the block size will be of 64 . So, the IP addresses will be divided into 4 subnets (*which we already calculated above*) above as -

192.168.0.0 - 192.168.63.255

192.168.64.0 – 192.168.127.255

192.168.128.0 - 192.168.191.255

192.168.192.0 – 192.168.255.255

And the best part, its applicable to all classes : )

**Happy Subnetting : ]**