The scenario
You are given 172.16.0.0/22 and have to fit four segments inside it:
- Sales: 500 hosts
- Engineering: 200 hosts
- Link A: a point-to-point router link, 2 hosts
- Link B: a second point-to-point link, 2 hosts
A /22 holds 1024 addresses (172.16.0.0 to 172.16.3.255). The conceptual rules are covered in VLSM; here we run them all the way through.
Step 1: size each segment
Find the smallest block that holds each host count, remembering the two reserved addresses (network and broadcast) in every ordinary block:
- 500 hosts needs 9 host bits (2⁹ − 2 = 510 usable), a
/23. - 200 hosts needs 8 host bits (254 usable), a
/24. - 2 hosts needs 2 host bits (2 usable), a
/30. - 2 hosts needs another
/30.
Round up to the next power of two: 500 does not fit a /24 (254 usable), so it takes a /23.
Step 2: sort largest first
Order the segments by block size, biggest first, so each lands on a clean boundary:
- Sales,
/23(512 addresses) - Engineering,
/24(256) - Link A,
/30(4) - Link B,
/30(4)
Step 3: assign the addresses
Allocate in that order, each block starting where the previous one ended:
/23 172.16.0.0 – .1.255 (510 usable) ← Sales
/24 172.16.2.0 – .2.255 (254 usable) ← Engineering
/30 172.16.3.0 – .3.3 (2 usable) ← Link A
/30 172.16.3.4 – .3.7 (2 usable) ← Link B
Sales fills the first half of the block. Engineering takes the next /24. The two router links take four addresses each at the start of the final /24.
Step 4: account for what is left
The four segments use 512 + 256 + 4 + 4 = 776 addresses, leaving 248 free, from 172.16.3.8 to 172.16.3.255. That is 75.8% utilization, with a contiguous tail of free space for the next link or a small subnet, still aligned for future summarization.
Checking your work
This is exactly the allocation the CIDR calculator produces in VLSM mode: enter 172.16.0.0/22 as the parent and the four host counts, and it returns the same networks, masks, ranges, and the 75.8% utilization figure, computed entirely in your browser. If a segment does not fit, it is listed separately rather than silently dropped.