A few months back, I showed you how to organize your network into smaller subnets. My post covered the details of the concept of subnetting.
So if you missed that article, I would suggest taking a look at it to make sure you understand VLSM and this article in its entirety.
For now, I will assume that you are already familiar with subnetting and know how to divide a network into smaller subnets.
In today’s article, we’ll subnet an already subnetted network into multiple subnets with variable subnet masks and then allocate them within our sample network.
Variable Length Subnet Mask (VLSM) is a key technology on large scalable networks. Mastering the concept of VLSM is not an easy task, but it’s well worth it. The importance of VLSM and its beneficial contribution to networking design is unquestionable.
At the end of this article you will be able to understand the benefits of VLSM and describe the process of calculating VLSMs. I will use a real world example to help you understand the whole process and its beneficial effects.
VLSM provides the ability to subnet an already subnetted network address. The benefits that arise from this behavior include:
The following diagram shows a sample internetwork which uses a network C address 192.168.10.0 (/24) subnetted into 8 equal size subnets (32 available IP addresses each) to be allocated to the various portions of the network.
This specific network consists of 3 WAN links that are allocated a subnet address range each from the pool of available subnets. Obviously 30 IP address are wasted (28 host addresses) since they are never going to be used on the WAN links.
In order to be able to implement VLSMs in a quick and efficient way, you need to understand and memorize the IP address blocks and available hosts for various subnet masks.
Create a small table with all of this information and use it to create your VLSM network. The following table shows the block sizes used for subnetting a Class C subnet.

Having this table in front of you is very helpful. For example, if you have a subnet with 28 hosts then you can easily see from the table that you will need a block size of 32. For a subnet of 40 hosts you will need a block size of 64.
Let us use the sample network provided above to implement VLSM. According to the number of hosts in each subnet, identify the addressing blocks required. You should end up with the following VLSM table for this Class C network 192.168.10.0/24.

Take a deep breath … we’re almost done. We have identified the necessary block sizes for our sample network.
The final step is to allocate the actual subnets to our design and construct our VLSM network. We will take into account that subnet-zero can be used in our network design, therefore the following solution will really allow us to save unnecessary addressing waste:
With VLSM we have occupied 140 addresses. Nearly half of the address space of the Class C network is saved. The address space that remains unused is available for any future expansion.
Isn’t that amazing? We have reserved a great amount of addresses for future use. Our sample network diagram is finalized as shown on the following diagram:

Variable Length Subnet Mask is an extremely important chapter in Network Design. Honestly, if you want to design and implement scalable and efficient networks, you should definitely learn how to design and implement VLSM.
It’s not that difficult once you understand the process of block sizes and the way to allocate them within your design. Don’t forget that VLSM relates directly to the subnetting process, therefore mastering the subnetting process is a prerequisite for effectively implementing VLSM.
And feel free to go through my subnetting articles a couple of times to get a hang of the whole process.
Learn everything you need to know to pass the Cisco 640-802 CCNA exam — without reading a book.
Get the extra boost of confidence you need with over 400 CCNA practice exam questions that are included in this course.
See what our Cisco CCNA Training has to offer!
No related posts.
Copyright © Train Signal Inc. All Rights Reserved.
dr.zing Says:
April 14th, 2008 at 6:46 am
Superb Article, and nicely explained with helpful diagrams.
Johan Says:
April 21st, 2008 at 4:17 pm
Hi,
Thanks for this excellent article.
Can you let us know if Subnetting differs when done in a Cisco environment and Microsoft environment ?
Someone once told me, that Cisco networks can use Subnet zero while as Microsoft doesn’t encourage that or something along those lines ?
Can you give some clarity on this please !
Thanks,
Johan
Rajesh kumar Says:
April 27th, 2008 at 2:14 am
it’s very nice……understable..
Cool Subnetting Tricks with Variable Length Subnet Mask - David’s Cisco Networking Blog Says:
June 29th, 2008 at 11:47 am
[...] To view the full article, click here. Comment RSS Feed Email a friend [...]
Technology Trends » Blog Archive » Cool Subnetting Tricks with Variable Length Subnet Mask | Train Signal Training - Free Computer Training Videos Says:
June 29th, 2008 at 12:14 pm
[...] Cool Subnetting Tricks with Variable Length Subnet Mask | Train Signal Training – Free Computer Training Videos Blogged with the Flock Browser [...]
EB Allen Says:
July 2nd, 2008 at 4:07 pm
Can you explain the /29 and how it relate to the 248. Is the relationship the same regardless of the number we use?
karwan Says:
August 19th, 2008 at 12:44 am
Thank you dear
that is realy cool , I hope you be happy in your live .
best regards…………………………………………………….
Msizi Says:
September 2nd, 2008 at 8:34 am
Thanks man! I can now say “WHooo” , this really helped me, well written
Paul Says:
September 2nd, 2008 at 11:06 am
Im almost there probably 90% from fully understanding but still have some confusion great diagrams by the way
where im lost is i can understand which prefix and hence subnet mask to use i.e. a /30 for a WAN link as only 2 hosts needed or a /26 prefix for network E as 40 hosts needed.
I just dont know how the last digit in the 4th octet is known
say for network E the 192.168.10.44/26 where does the 44 comes from?
or for network F the 108 chosen?
James Says:
September 10th, 2008 at 1:29 am
Maybe I am wrong, but your network E is incorrect. 192.168.10.44/26 is not a subnet address but rather a usable IP address within that block. Maybe this will explain better….
192.168.10.00|101100 (.44 octet in binary, w/ bar separating net and host)
given the above info your subnet would be as follows:
subnet address: 192.168.10.0
broadcast address: 192.168.10.63
first usable address: 192.168.10.1
last usable address: 192.168.10.62
Based on your chart network E has a range of 192.168.10.44 – 107. In order to achieve anything greater than 63, you would have to change a net bit and then would be violating the subnet mask or the /26 part of the network.
Above where I have .44 written in binary there is a bar between the 26th and 27th bit separating the net and host. As I stated the broadcast address (or highest address) is:
192.168.10.63 or 192.168.10.00|111111
Therefore, in order to go any higher (64 – 107), bits to the left of the bar would have to change, but the /26 is saying they cant change.
I hope this makes sense.
Stelios Antoniou Says:
September 10th, 2008 at 12:21 pm
Very good James,
You are absolutely right. Well, actually the correct sequence should be:
E: 192.168.10.0/26
A: 192.168.10.64/27
F: 192.168.10.96/27
B: 192.168.10.128/30
C: 192.168.10.132/30
D: 192.168.10.136/30
In this way we take advantage of the whole address space.
Adel farid Says:
September 13th, 2008 at 10:36 pm
Thats right actually Stelios good job .
Mark Angelo S. illustrisimo Says:
September 18th, 2008 at 6:54 am
110101100.00010000.11111110.00000001
onebyte= eight bits
thirty two bits thnxxxx
franklin Says:
September 25th, 2008 at 7:19 am
Good job, I think their is a mistake wirh the network E and F. The reason been that
192.168.10.44/26 and 192.168.10.108/27 is not a subnet address.
I stand to be corrected, I think since network E needs 40 hosts, The easiest way to assign the subnet is to assign the largest first. Hence.
Network E 192.168.10.0/26
Network F 192.168.10.64/27
Network A 192.168.10.96/27
Network B 192.168.10.104/30
Network C 192.168.10.108/30
Network D 192.168.10.112/30
Thank you
Wushu Says:
February 2nd, 2009 at 1:44 am
i still don’t get it… T_T
i need a further explanation… pls help…
wushu Says:
February 2nd, 2009 at 2:01 am
i have problem in indicating numbers, what number should i use why should i use it, how did you get?
huhuhuhu… please help