Subnetting · 4 min read

Splitting a subnet into equal blocks without the guesswork

Dividing a subnet into equal blocks is one of the most common tasks in network planning, yet it remains a source of errors for many engineers. Whether you are allocating space for multiple departments, designing a multi-site deployment, or preparing for a certification exam, the ability to split a parent subnet into equal child subnets quickly and accurately is essential. This guide walks you through the method so you can eliminate guesswork and get it right every time.

Why equal blocks matter

Equal-sized subnets simplify routing, reduce address waste, and make network documentation predictable. When you divide a parent subnet into n equal blocks, each child subnet has the same number of usable host addresses, which makes capacity planning, DHCP pool sizing, and firewall rule documentation straightforward. Unequal divisions work too, but they require more careful bookkeeping and leave room for mistakes.

The core formula

Here is the step-by-step process: 1. Identify your parent subnet (for example, 10.0.0.0/22). 2. Decide how many equal blocks you need (for example, 4). 3. Find the smallest power of 2 that is greater than or equal to your block count. Powers of 2 are 1, 2, 4, 8, 16, 32, and so on. 4. Count how many bits that power represents. For example, 4 = 2^2, so you need 2 bits. 5. Add that bit count to the parent prefix length. For example, /22 + 2 = /24. 6. Your child subnets all use /24, and you will have exactly 4 of them. The child prefix length is always: parent prefix + log2(number of blocks).

Example: Divide 10.0.0.0/22 into 4 equal blocks

Parent: 10.0.0.0/22 (1024 total addresses, 1 block)
Number of blocks needed: 4
Power of 2: 4 = 2^2, so borrow 2 bits
Child prefix: /22 + 2 = /24

Result:
  Block 1: 10.0.0.0/24   (256 addresses)
  Block 2: 10.0.1.0/24   (256 addresses)
  Block 3: 10.0.2.0/24   (256 addresses)
  Block 4: 10.0.3.0/24   (256 addresses)

Common pitfalls

Real-world example

Suppose you manage a company network and need to allocate space for 6 regional offices from a parent block of 172.16.0.0/20. You want each office to have an equal-sized subnet. Step 1: Parent is /20. Step 2: You need 6 blocks. Step 3: The smallest power of 2 >= 6 is 8 (2^3). Step 4: You borrow 3 bits. Step 5: Child prefix = /20 + 3 = /23. Each regional office gets a /23 (512 total addresses per subnet). You will have 8 subnets total, so 2 are left for future growth.

172.16.0.0/23   - Region 1
172.16.2.0/23   - Region 2
172.16.4.0/23   - Region 3
172.16.6.0/23   - Region 4
172.16.8.0/23   - Region 5
172.16.10.0/23  - Region 6
172.16.12.0/23  - Reserved
172.16.14.0/23  - Reserved

Verification

Always verify your work by checking that each child subnet occupies exactly one block in the binary address space and that they do not overlap. The easiest way is to confirm that the number of subnets you created matches 2^(bits borrowed), and that the increment between network addresses equals 2^(32 - child prefix length) in decimal.

Subnet Divider
Free tool to calculate and visualize equal subnet blocks instantly
Open →
Practise this on today’s Daily Ops Drill — a free network task every day.
Open the app →
Free tools for this
More from the blog
Subnetting on the Fortinet NSE4 exam: what to expectRead →Auditing an ACL for the permit any that should not be thereRead →