Skip to content

VLSM · variable length subnets

VLSM calculator.

Design efficient, non-overlapping subnet allocations from required host counts. Every result comes with the calculation steps.

Major Network Block

Address Space Capacity: 256 IPsAllocated: 116 IPs (45.3%)

Subnet Requirements

Add subnets with required host counts. VLSM automatically allocates largest requirements first.

#1
hosts
#2
hosts
#3
hosts
#4
hosts
Subnet NameNeededAllocatedCIDR / MaskNetwork AddressUsable RangeBroadcast
Engineering LAN6062/26 (255.255.255.192)192.168.1.0192.168.1.1 - 192.168.1.62192.168.1.63
Sales & Support2530/27 (255.255.255.224)192.168.1.64192.168.1.65 - 192.168.1.94192.168.1.95
VoIP & Cameras1214/28 (255.255.255.240)192.168.1.96192.168.1.97 - 192.168.1.110192.168.1.111
Point-to-Point Uplink22/30 (255.255.255.252)192.168.1.112192.168.1.113 - 192.168.1.114192.168.1.115
Show calculation steps
  1. Engineering LAN: 60 hosts + 2 = 62 → next power of two is 26 = 64 → /26 (255.255.255.192) → 192.168.1.0/26, usable 192.168.1.1 – 192.168.1.62
  2. Sales & Support: 25 hosts + 2 = 27 → next power of two is 25 = 32 → /27 (255.255.255.224) → 192.168.1.64/27, usable 192.168.1.65 – 192.168.1.94
  3. VoIP & Cameras: 12 hosts + 2 = 14 → next power of two is 24 = 16 → /28 (255.255.255.240) → 192.168.1.96/28, usable 192.168.1.97 – 192.168.1.110
  4. Point-to-Point Uplink: 2 hosts + 2 = 4 → next power of two is 22 = 4 → /30 (255.255.255.252) → 192.168.1.112/30, usable 192.168.1.113 – 192.168.1.114

Remaining Available Blocks:

192.168.1.116/30 (4 IPs)192.168.1.120/29 (8 IPs)192.168.1.128/25 (128 IPs)

VLSM subnetting in plain language

VLSM (Variable Length Subnet Masking) lets you carve one address block into subnets of different sizes. Traditional fixed-length subnetting forces every subnet to match the largest need, wasting addresses on small segments such as router links. This VLSM calculator removes the guesswork: list your segments, and it allocates the right block to each.

How the VLSM calculator works

  1. Sort the segments from the most hosts to the fewest.
  2. For each, add 2 for the network and broadcast addresses, then round up to the next power of two.
  3. Convert the block size to a prefix (64 addresses = /26).
  4. Place each block on its natural boundary, directly after the previous one.
  5. Report the remaining free blocks.

VLSM calculation example

With 192.168.1.0/24, 60 + 25 + 12 + 2 hosts fit into a /26, a /27, a /28 and a /30, using 116 of 256 addresses and leaving a /29 and a /25 free — a fixed-length design would have needed four /26 subnets and left nothing spare. The full worked table is in the VLSM guide.

VLSM vs CIDR vs FLSM

CIDR is the classless addressing system; VLSM is the technique of using several prefix lengths inside your own CIDR block; FLSM is the older equal-size approach. See VLSM vs CIDR and VLSM vs FLSM for a side-by-side comparison, and the subnetting guide if you are new to the basics.

Frequently asked questions

What is a VLSM calculator?

A VLSM calculator divides a major network into subnets of different sizes based on the number of hosts each segment needs. It sorts the requirements, picks the smallest block that fits each one and assigns non-overlapping addresses.

How do I use this VLSM calculator?

Enter the major network and its prefix, then add one row per segment with its name and required host count. The table updates instantly with the network address, mask, usable range and broadcast address of each subnet, plus the free space that remains.

Does the VLSM calculator support IPv6?

This planner allocates IPv4 blocks. IPv6 does not need VLSM in the same way because every LAN is a /64; use the IPv6 subnet calculator to split a /48 or /56 into /64 subnets.

Why are subnets allocated largest first?

Large blocks need the strictest alignment. Allocating them first guarantees every smaller block lands on a valid boundary with no wasted gaps.

What is the smallest subnet VLSM will allocate?

A /30 (4 addresses, 2 usable hosts), the traditional point-to-point size. RFC 3021 /31 links can be configured manually.