Split a /24 Into Four /26 Subnets
Carve a /24 into four equal sub-networks, assign them sensibly, and understand why the math works without memorizing a table.
You have a /24 — say 10.0.10.0/24 — and you want four subnets out of it. Maybe one per environment (prod, stage, dev, mgmt), maybe one per floor in an office. This tutorial walks through the math once so you can do it in your head afterward.
What the slash means
A /24 is a network with 24 bits fixed for the network portion and 8 bits free for hosts. In 10.0.10.0/24:
10.0.10is the network part (24 bits)- the final octet is the host part (8 bits, or 256 possible values)
When you "split" a network, you are moving the boundary to the right. More bits for the network means more subnets, each with fewer hosts. Four subnets need 2 extra network bits (2^2 = 4), so the boundary moves from /24 to /26.
A /26 leaves 6 bits for hosts: 2^6 = 64 addresses per subnet. Minus the network address and the broadcast address, that is 62 usable hosts per subnet.
Step 1 — Calculate the four subnet boundaries
The step size is the subnet's block size: 256 / 4 = 64. So the subnets live at multiples of 64 in the final octet:
| # | Network | Usable range | Broadcast |
|---|---|---|---|
| 1 | 10.0.10.0/26 |
10.0.10.1 – 10.0.10.62 |
10.0.10.63 |
| 2 | 10.0.10.64/26 |
10.0.10.65 – 10.0.10.126 |
10.0.10.127 |
| 3 | 10.0.10.128/26 |
10.0.10.129 – 10.0.10.190 |
10.0.10.191 |
| 4 | 10.0.10.192/26 |
10.0.10.193 – 10.0.10.254 |
10.0.10.255 |
The quick way to verify: each subnet's broadcast address is one less than the next subnet's network address, and the last broadcast is .255 — the same broadcast as the parent /24. If those three checks line up, the split is correct.
Step 2 — The netmask in dotted-decimal form
If your equipment wants a mask instead of a prefix:
/24→255.255.255.0/26→255.255.255.192
Where does 192 come from? A /26 sets the first 2 bits of the final octet to 1: 11000000 = 128 + 64 = 192. Same reasoning for other common prefixes:
/25→10000000→128/26→11000000→192/27→11100000→224/28→11110000→240/29→11111000→248/30→11111100→252
You do not need to memorize the table. Count the ones, convert to decimal.
Step 3 — Assign them to purposes
A concrete split for a small office:
| Subnet | Purpose | Gateway | Notes |
|---|---|---|---|
10.0.10.0/26 |
Servers | .1 |
Static assignments only |
10.0.10.64/26 |
Staff Wi-Fi | .65 |
DHCP pool .70–.126 |
10.0.10.128/26 |
Guest Wi-Fi | .129 |
Isolated, internet-only |
10.0.10.192/26 |
Management | .193 |
Switches, APs, iDRAC/IPMI |
A few practical notes:
- Pick
.1in each subnet as the default gateway so it is predictable. Some teams pick the highest usable (.62,.126, etc.) instead — either works, but pick one and stay consistent across subnets. - Leave a small gap at the bottom of each subnet for statics before DHCP starts. If DHCP hands out
.65to a laptop, you cannot later put a printer on.65without conflict. - For guest Wi-Fi, make sure the firewall rules between subnets actually enforce the isolation. Putting guest traffic on a separate
/26does nothing on its own — it is a numbering convention until a rule backs it up.
Step 4 — Verify with a command
On Linux:
ipcalc 10.0.10.64/26
Output looks like:
Address: 10.0.10.64
Netmask: 255.255.255.192 = 26
Wildcard: 0.0.0.63
=>
Network: 10.0.10.64/26
HostMin: 10.0.10.65
HostMax: 10.0.10.126
Broadcast: 10.0.10.127
Hosts/Net: 62
Cross-check that against the table above. If the numbers disagree, you have the math wrong somewhere — trust the tool, redo the row.
If you prefer a web-based version, paste the CIDR into SysEmperor's CIDR Calculator — it shows the range, broadcast, and usable hosts without installing anything.
Going further: unequal subnets (VLSM)
The four-equal split is the simplest case. Real networks rarely want four equal pieces — usually one huge and a few small. You can split a /24 into one /25 and two /26s:
| Subnet | Size | Range |
|---|---|---|
10.0.10.0/25 |
126 usable | 10.0.10.1 – 10.0.10.126 |
10.0.10.128/26 |
62 usable | 10.0.10.129 – 10.0.10.190 |
10.0.10.192/26 |
62 usable | 10.0.10.193 – 10.0.10.254 |
Rule of thumb for VLSM: always subnet from largest to smallest. Start with the biggest subnet at the beginning of the range, then bisect whatever is left. If you try to allocate small blocks first, you strand unusable gaps.
The only three facts worth memorizing
- A new prefix bit halves the subnet.
- Subnet block size =
2^(32 - prefix)addresses. - Usable hosts per subnet = block size − 2 (network + broadcast), except for
/31and/32, which are special cases used for point-to-point links and host routes respectively.
Everything else — masks, ranges, boundaries — falls out of those three.
SysEmperor