In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

I am a fairly new IT student and I am stuck with figuring out subnetting. I have read my book and searched the internet and am still confused. I have two areas I still am having trouble with.

One area is finding the number of host addresses when given so many bits of mask on the host portion. Would I use the method of 2^H-2? Ex. 3 bits of mask on host portion so 2^3-2= 6 host addressed available. Is this correct?

Second area is kinda the same. Number of bits on a netowrk portion how many subnets? Would I use 2^s? so say 8 bits of the network portion would mean 2^8= 256 subnets available or would you use S=P-N. If so how do you know what is the number for P?

If someone could let me know if I m on the right track or explain in a better way for me to grasp this it would be great.

One area is finding the number of host addresses when given so many bits of mask on the host portion. Would I use the method of 2^H-2? Ex. 3 bits of mask on host portion so 2^3-2= 6 host addressed available. Is this correct?

Second area is kinda the same. Number of bits on a netowrk portion how many subnets? Would I use 2^s? so say 8 bits of the network portion would mean 2^8= 256 subnets available or would you use S=P-N. If so how do you know what is the number for P?

If someone could let me know if I m on the right track or explain in a better way for me to grasp this it would be great.

The basic formula is 2^bits - 2.

2^3=8; 8 - the subnet address and the broadcast address is = 6.

For a 24 bit subnet mask (ie. 192.168.1.0 /24) you end up with 8 bits for the host addressing. 2^8=256. Less the subnet address 192.168.1.0 and the broadcast address 192.168.1.255 you end up with 254 usable host addresses.

One last item to consider is the gateway address. Easy to remember for a private subnet because you are supplying the gateway and, of course, you remember that is one of your hosts. HOWEVER, when leasing a public subnet from an ISP or other outside entity, folks often forget about the ISPs gateway and that it needs to use one of the host addresses.

In that instance for a 29 bit mask, you have 3 bits for hosts. Thus 2^3=8 less subnet, broadcase AND gateway address leaves you with 5 host addresses that you can use for yourself.

- Tom

Second area is kinda the same. Number of bits on a netowrk portion how many subnets? Would I use 2^s? so say 8 bits of the network portion would mean 2^8= 256 subnets available or would you use S=P-N. If so how do you know what is the number for P?

Hmmmm .... you can't relate the number of bits in the network address to the number of subnets (in the host address) UNLESS you say that these are all going to be 8-bit or /24 subnets. Otherwise the number of subnets depends on how you define them. There can be lots of little ones and maybe but one huge one.

CIDR notation states the number of bits in the network address:

/24 means 24 bits in the network address.

With /24 there are 32-24=8 bits in the host addresses.

/23 32-23=9

/22 32-22=10

/21 32-21=11

and so forth.

With /24 or 8 bits in the host addresses, there can be 2^8=256 addresses in 1 subnet.

With /24 there can be 2x2^7 = 2 x 128 or 2 subnets of 128 each.

With /24 there can be 4 x 2^6 = 4 x 64 or 4 subnets of 64 each.

With /24 there can be 2x2^6 + 1x2^7 or 2 subnets of 64 each and 1 subnet of 128 each.

and so forth.

Then with /23 you will have 2x more addresses and can split up the range similar to the above for /24 starting with 512 addresses for the largest subnet possible taking up all the addresses.

UNLESS you mean all /24 subnets. In that case:

/23 has 2 256-address subnets

/22 has 4 256-address subnets

/21 has 8 256-address subnets

etc.

I guess I should not say "/22" though when I really mean 2^10 addresses which are not yet broken up into subnets. That's because /22 usually means *a subnet* of address range determined by 10 bits. I really meant that /22 was a starting point.

Then you subtract 2 from each subnet for network and broadcast addresses to yield the number of host addresses that are usable.

FMarshall has some good points.

I would add that there are a number of subnets that should not be used. 0.0.0.0 and anything starting with 127 in the first octet (127.x.x.x).

There are some other "reserved" or "undefined" subnets as well.

Beyond that one loses subnets in a similar manner to losing host addresses. Just as binary host addresses should not be all 0's or all 1's, the same is true for subnet addresses and for similar reasons.

- Tom

The number of subnets is calculated from the bit difference between the number used for the subnet and that for the given network. For example, given a /16 network and making /19 subnets, the number of subnets is (19 - 16 )^2. If you're not supplied with a given network mask then the default mask of the address class is used, so for class A addresses you would use /8, class B /16 and class C /24.

As mentioned above, you may have to subtract 2, the legacy all 0's and all 1's subnet addresses. In practice you should be able to use them, in exam questions you might need to take them into account. Cisco discuss this here:

http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a0080093f18.shtml

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.

However, I work under the assumption that some legacy routers are still in the field and therefore avoid any possibility that a legacy router will create a problem.

One way to "get back" some of that subnet space without having creating a legacy problem is to make your smallest subnets one the "outside" of a given address space that you are subnetting. Thus, If I am breaking up a block of 256 (254) addresses into multiple subnets, I'll have two 64 (62) host subnets in the middle of the address space, flanked with 32 (30) host subnets, flanked with 16 (14) host subnets and so on. Such as the following.

Of course you can break up some of the "outer" subnet spaces into smaller subnets as wel. For instance:

- Tom