redzilla
All tools
IP Addressing

VLSM Planner

Enter a base network and a list of subnets with the hosts each one needs. I compute the optimal VLSM allocation (aligned blocks, largest first) with mask, range, broadcast and utilization. All in your browser.

Format network/prefix, e.g. 192.168.1.0/24. If you type host bits, I align to the network.

Required subnets

Give each subnet a name and the usable hosts it needs. I sort them largest to smallest automatically.

redzilla.cl — vlsm
 

Base network utilization

0 of 0 addresses 0%
Base network
total addresses
Allocated
0
in blocks
Free
0
unused addresses
Utilization
0%
0 subnets
VLSM allocation
Subnet CIDR Mask Network First host Last host Broadcast Usable Req.

VLSM gives each subnet the smallest block that fits it and places them largest first from the base network, so they stay aligned with no overlap. No subnet with hosts uses /31 or /32 (it always keeps a network and broadcast).

Runs locally in your browser · no sign-up · nothing leaves your browser

How it works

The planner takes a base network in CIDR format (for example 192.168.1.0/24) and a list of subnets with the hosts each one needs, and builds the full VLSM assignment: CIDR, mask, network address, first and last host, broadcast and usable hosts for every block, plus the total utilization of the base network and the addresses left free.

The algorithm is classic VLSM (variable-length subnet masking): it sorts the subnets from largest to smallest, finds for each one the longest prefix that satisfies 2^(32−prefix) − 2 ≥ hosts and assigns the blocks sequentially from the start of the base network. Going largest-first keeps every block naturally aligned to its size, with no overlap and no alignment gaps. No subnet with hosts ever gets a /31 or /32: the network and broadcast addresses are always reserved.

Example: splitting 192.168.1.0/24 across 4 subnets

  1. Requirements: Sales 50 hosts, Support 20, IT 10, Link 2. For 50 hosts the smallest block that works is a /26 (62 usable); for 20, a /27 (30); for 10, a /28 (14); for 2, a /30 (2).
  2. They are assigned largest-first from the base: Sales 192.168.1.0/26, Support 192.168.1.64/27, IT 192.168.1.96/28 and Link 192.168.1.112/30.
  3. Total assigned: 64 + 32 + 16 + 4 = 116 of 256 addresses (45%); 140 remain free from 192.168.1.116 for growth.

Frequently asked questions

What is the difference between VLSM and FLSM?
FLSM splits the network into subnets that are all the same size, even if one needs 100 hosts and another only 2. VLSM gives each subnet the smallest block that fits it, so a 50-host LAN gets a /26 and a point-to-point link a /30. VLSM uses the address space far more efficiently; it has been the standard approach since CIDR (RFC 4632).
Why are the largest subnets assigned first?
Because a block of size 2^n can only start at addresses that are multiples of 2^n (it must be aligned). If you assign the large blocks first and sequentially, each one naturally lands on a valid boundary and no alignment gaps appear. If you started with the small ones, the large blocks might not fit even when the total space is enough.
How many hosts should I request if I need exactly 62 devices?
Request 62: the planner assigns a /26, which has exactly 62 usable hosts (64 addresses minus network and broadcast). Keep in mind that adding one more device later forces you to grow to a /25, so it is often wise to size with headroom (for example request 100 and get a /25 with 126 usable).
What happens if the subnets do not fit in the base network?
The tool highlights in red the block that falls outside the range and warns that the assignment does not fit. The fixes are using a shorter prefix on the base network (for example moving from /24 to /23), reducing the requested hosts or removing subnets. Everything runs in your browser, so no data about your network is sent to any server.
Was this tool useful?
Disclaimer We take great care to keep every tool accurate and review it thoroughly; even so, we can't guarantee it is free of errors or take responsibility for how the results are used. We recommend double-checking anything critical.
Found an error? Let us know →