Imagine you have a block of 256 IP addresses and three rooms to connect — one with 100 computers, one with 50, and one with just 10. With regular subnetting you would give each room the same amount of addresses, wasting hundreds. VLSM lets you give each room exactly what it needs — no more, no less — so almost nothing goes to waste.
VLSM vs FLSM in one line: FLSM gives everyone equal slices of the pie. VLSM cuts each slice to the size each person actually needs.
Step 1 — Enter Your Starting IP Address and Network Size
First, define the total pool of addresses you have available to divide up. All subnets will be carved out of this block.
- 1Type your base IP Address — for example
192.168.0.0.
- 2Set the Subnet Mask by typing it directly (e.g.
255.255.255.0) or drag the CIDR slider to your chosen prefix (e.g. /24).
- 3The prefix sets the total pool size. A
/24 gives 256 addresses to divide, a /23 gives 512, and so on.
Tip: You do not need to type the exact network address. If you enter 192.168.0.50 with a /24 mask, the calculator works out that the network starts at 192.168.0.0.
Step 2 — Enter Your Host Requirements
This is the key difference from FLSM. Instead of one number for all subnets, you type a separate number for each subnet you need — all in one box, separated by commas.
- 1In Required Hosts per Subnet, type how many devices each subnet needs, separated by commas — e.g.
100, 50, 20 for three subnets.
- 2The No. of Subnets field updates automatically — it counts how many values you have entered. You do not need to touch it.
- 3The calculator automatically sorts values from largest to smallest before allocating — largest subnets must be placed first.
Why largest first? VLSM fills subnets one after another from the start of your address pool. Placing a small subnet first could leave insufficient space for a large one. Sorting largest to smallest guarantees everything fits perfectly.
Step 3 — Click Calculate and Read Your Results
Click Calculate VLSM. Each row in the table is one subnet. Here is what each column means:
- →Subnet Name — A simple label (Subnet 1, Subnet 2 …) to tell your subnets apart.
- →Network — The subnet identifier address. Cannot be assigned to any device.
- →First Usable IP / Last Usable IP — The first and last addresses you can assign to devices.
- →Broadcast — Reserved last address in the block. Cannot be assigned to a device.
- →Total Usable Host — Assignable addresses in this subnet (block size − 2).
- →Total Available Host — Full block size including network + broadcast addresses.
- →Netmask — Enter this into your routers and devices when setting up the network.
- →Wildcard — Inverse of the netmask. Used in firewall rules and router access lists.
Example — splitting 192.168.0.0/24 for 100, 50, and 20 devices
| Subnet Name | Network | First Usable IP | Last Usable IP | Broadcast | Total Usable Host | Total Available Host | Netmask | Wildcard |
| Subnet 1 | 192.168.0.0/25 | 192.168.0.1 | 192.168.0.126 | 192.168.0.127 | 126 | 128 | 255.255.255.128 | 0.0.0.127 |
| Subnet 2 | 192.168.0.128/26 | 192.168.0.129 | 192.168.0.190 | 192.168.0.191 | 62 | 64 | 255.255.255.192 | 0.0.0.63 |
| Subnet 3 | 192.168.0.192/27 | 192.168.0.193 | 192.168.0.222 | 192.168.0.223 | 30 | 32 | 255.255.255.224 | 0.0.0.31 |
Notice: You asked for 100, 50, and 20 devices but Total Usable Host shows 126, 62, and 30 — subnets must be sized in powers of 2, so the calculator rounds up. Total Available Host shows 128, 64, and 32 — these are the full block sizes including network and broadcast addresses.
Step 4 — Check the Free/Unused IP Network Table
After all your subnets are placed, addresses left over at the end of the original block appear in the Free/Unused IP Network table — with First Usable IP, Last Usable IP, broadcast, mask, and wildcard already calculated.
Continuing the example above — addresses left over after 3 subnets
| Subnet Name | Network | First Usable IP | Last Usable IP | Broadcast | Total Usable Host | Total Available Host | Netmask | Wildcard |
| Subnet 4 | 192.168.0.224/27 | 192.168.0.225 | 192.168.0.254 | 192.168.0.255 | 30 | 32 | 255.255.255.224 | 0.0.0.31 |
What this means: The three subnets used 128 + 64 + 32 = 224 addresses from the 256 available. The remaining 32 — from 192.168.0.224 to 192.168.0.255 — appear as a free /27 block ready to use whenever your network grows.
Why smallest first? Free blocks are listed in sequential address order — smallest first, largest last. When planning your next subnet, always start from the first free block to keep the address space contiguous.