A /16 IPv4 block contains 65,536 total addresses, with 65,534 usable on most standard subnets.
You’ve seen “/16” in VPN setups, corporate LAN plans, cloud VPCs, and router configs. It looks small, but it’s a lot of space. If you’re sizing a network, building an IP plan, or reading someone else’s, you want one number you can trust.
Let’s get that number, then make it easy to repeat for any CIDR prefix without doing long math every time.
What “/16” Means In Plain Terms
IPv4 addresses are 32 bits long. A CIDR prefix like “/16” says: “The first 16 bits describe the network.” The remaining bits describe the host part (the part that changes for devices inside that network).
So a /16 splits the address into two equal halves: 16 network bits + 16 host bits. Once you know the host bits, the count is straight math.
How Many IP Addresses Are In A /16? The Straight Count
A /16 leaves 16 bits for hosts. Each host bit can be 0 or 1. That’s 2 choices per bit, multiplied across 16 bits.
So the total number of addresses in a /16 is:
- 216 = 65,536 total IPv4 addresses
That’s the full block size, including special addresses that some setups reserve.
Usable Hosts In A /16
On many IPv4 subnets, two addresses are treated as reserved:
- The first address in the block (host bits all 0) is used as the network address.
- The last address in the block (host bits all 1) is used as the broadcast address.
When that model applies, usable host addresses are:
- 65,536 − 2 = 65,534 usable addresses
Some networks don’t use broadcast at all, and some platforms reserve different addresses for their own reasons. Still, for classic IPv4 subnetting on routers and switches, “minus two” is the number people expect.
What A /16 Looks Like As A Subnet Mask
A /16 means the first 16 bits are 1s in the subnet mask. In dotted decimal, that mask is:
- 255.255.0.0
If you’ve ever heard “a /16 is like a Class B,” this is where that comes from. Old classful networks used 255.255.0.0 for Class B. CIDR keeps the mask idea, but drops the rigid classes and lets you pick the prefix you need.
Fast Mental Math For Any CIDR Prefix
If you only remember one trick, make it this: total addresses = 2(32 − prefix). The part in parentheses is the number of host bits.
For /16, that’s 32 − 16 = 16 host bits, so 216 addresses.
Two Shortcut Patterns That Save Time
Once you know one prefix, you can jump to nearby prefixes without recalculating from scratch.
- Each step toward /0 doubles the block size. Moving from /17 to /16 doubles addresses. Moving from /16 to /15 doubles again.
- Each step toward /32 halves the block size. Moving from /16 to /17 cuts addresses in half. Move to /18, it halves again.
This “double/half” rule is handy when you’re comparing options in an IP plan and want to see the scale right away.
Where The Math Comes From
CIDR is defined and used across the Internet’s routing system. If you want the official background and the reasons CIDR exists, the IETF’s documentation is the place to start. The core idea is the prefix length, written as “/n,” and the way it supports flexible allocation and route aggregation. RFC 4632 (CIDR) is a solid reference.
Common /16 Questions That Trip People Up
Is A /16 Always “One Big Subnet”?
Not always. “/16” describes an address block size. You can keep it as one subnet (255.255.0.0), or you can split it into smaller subnets, like /20s or /24s, and route between them.
Splitting a /16 is normal in real networks. It makes broadcast domains smaller, makes troubleshooting cleaner, and gives you room to assign ranges by building, floor, service, or security zone.
Does “65,534 Usable” Always Hold?
It holds for the classic broadcast model, where the network and broadcast addresses are not assigned to hosts. That’s the default expectation for IPv4 subnetting in many routers and operating systems.
Some environments reserve more than two addresses. Some allow unusual cases where broadcast is not used. Cloud providers often document their own reservation rules per subnet size. When you’re in one of those environments, treat “65,536 total” as the hard truth, then apply the platform’s reservation rules on top.
What’s The Range Inside A Typical /16?
A /16 range is two full “/24 worlds” stacked 256 times. In other words, you get 256 different values for the third octet, and 256 values for the fourth octet.
Take 192.168.0.0/16 as a familiar example. It spans from 192.168.0.0 through 192.168.255.255. If you carve that into /24s, you’d get 192.168.0.0/24, 192.168.1.0/24, all the way up to 192.168.255.0/24.
Address Counts For Popular Prefixes
When you’re planning, you rarely evaluate /16 in isolation. You compare it to “one notch bigger” and “one notch smaller,” then you check a few standard sizes people use for VLANs, sites, and point-to-point links.
The table below gives you fast reference points. Total addresses are always powers of two. Usable counts assume the classic network/broadcast reservation model.
| Prefix | Total IPv4 Addresses | Usable Hosts (Common Model) |
|---|---|---|
| /8 | 16,777,216 | 16,777,214 |
| /12 | 1,048,576 | 1,048,574 |
| /15 | 131,072 | 131,070 |
| /16 | 65,536 | 65,534 |
| /17 | 32,768 | 32,766 |
| /20 | 4,096 | 4,094 |
| /24 | 256 | 254 |
| /30 | 4 | 2 |
| /32 | 1 | 1 |
When A /16 Is A Good Fit
A /16 is big. That’s a feature when you need room to grow, want to keep summarization clean, or want an address plan that stays stable for years.
Large Internal Networks With Many Segments
Think of a campus network with many VLANs, a company with multiple buildings, or a lab setup with lots of short-lived devices. A /16 gives you space to assign a clean block per segment without painting yourself into a corner.
A common pattern is to allocate one /24 per VLAN. A /16 contains 256 /24s. That alone explains why /16 shows up so often in internal address plans.
Simple Route Summaries
Route summarization is easier when your blocks align neatly. If a site owns one /16, it’s easy to advertise a single summary route upstream, then handle all the smaller subnets inside the site.
That clean boundary is part of what CIDR made possible, and it’s one reason it replaced the old classful system described in early subnetting standards. RFC 950 (subnetting procedure) describes the subnetting idea that many network tools still reflect today.
Private Address Space Planning
In private IPv4 space, /16 blocks are common because they map neatly to how teams think about sites and departments. Still, a large block can invite sloppy assignments if no one owns the plan.
If you run DHCP across a /16, scope design matters. Shorter lease times and clear reservations help avoid odd conflicts, especially when devices appear and disappear all day.
How To Split A /16 Into Smaller Subnets
Most real networks split /16 into smaller chunks. You still keep the /16 as your “parent” block, but you allocate children beneath it. Here’s how to do that without losing track of ranges.
Step 1: Decide Your Subnet Size
Pick a target size based on how many hosts you need per segment. Common choices:
- /24 for office VLANs (254 usable hosts)
- /23 when you want about double that (510 usable hosts)
- /20 when you want a few thousand addresses in one segment (4,094 usable hosts)
Step 2: Work Out How Many Subnets You Get
The number of child subnets inside a parent block is also a power of two. The math is:
- subnets = 2(childPrefix − parentPrefix)
Inside a /16:
- /24 gives 2(24 − 16) = 28 = 256 subnets
- /20 gives 2(20 − 16) = 24 = 16 subnets
- /18 gives 2(18 − 16) = 22 = 4 subnets
Step 3: See The “Jump Size” In The Octets
This is where subnetting gets concrete. The child prefix determines where the boundaries fall inside the dotted-decimal address.
Inside a 192.168.0.0/16 parent:
- /24 boundaries jump by 1 in the third octet (0, 1, 2, …, 255)
- /20 boundaries jump by 16 in the third octet (0, 16, 32, …, 240)
- /18 boundaries jump by 64 in the third octet (0, 64, 128, 192)
Once you spot the jump size, you can list subnets fast and avoid off-by-one mistakes.
Compare /16 With Nearby Sizes
Sometimes /16 is too big. Sometimes it’s too small. These quick comparisons help when you’re balancing growth room against routing and management overhead.
| Block | Total Addresses | What Changes |
|---|---|---|
| /15 | 131,072 | Double the size of /16; one fewer prefix bit |
| /16 | 65,536 | 256 separate /24s fit inside cleanly |
| /17 | 32,768 | Half the size of /16; tighter plan, less spare space |
| /18 | 16,384 | Often used per large site; easier to keep DHCP scopes smaller |
| /20 | 4,096 | Good for big segments without being huge |
| /24 | 256 | Classic VLAN size; fast to reason about |
| /30 | 4 | Point-to-point links in older designs |
| /32 | 1 | Single host route; common for loopbacks |
Practical Tips So Your /16 Doesn’t Turn Into A Mess
A /16 gives a lot of freedom. Freedom can turn into chaos if ranges get handed out ad hoc. A few habits keep it clean.
Assign By Function, Not By Mood
Reserve blocks for roles: user VLANs, servers, voice, printers, guest Wi-Fi, management, and lab. Leave gaps between major categories so you can grow without reshuffling.
Keep A Simple IP Plan Document
A one-page table in your docs or ticket system is enough. List each subnet, its purpose, its gateway, and who owns it. When someone asks for “just one more /24,” you can say yes or no with confidence.
Watch Broadcast Domains
A /16 as one flat Layer 2 domain is rare for good reasons. Broadcast and ARP traffic grow with the number of devices sharing the same segment. Use routing between smaller subnets to keep noise down.
Make Room For Infrastructure Addresses
Even in a /24, addresses get consumed by gateways, firewalls, load balancers, VPN concentrators, and static reservations. Plan that from day one so you don’t cram everything into the first few IPs and regret it later.
Recap For Your Notes
A /16 means 16 host bits. That gives 216 = 65,536 total IPv4 addresses. In the common network/broadcast model, 65,534 are usable for hosts.
If you want to repeat the calculation for any prefix, use 2(32 − prefix). Then use the double/half rule to sanity-check your math when you move one prefix step at a time.
References & Sources
- RFC Editor.“RFC 4632: Classless Inter-domain Routing (CIDR).”Defines CIDR prefix notation and the core idea behind flexible IPv4 block sizing.
- RFC Editor.“RFC 950: Internet Standard Subnetting Procedure.”Describes IPv4 subnetting concepts that shaped common network and broadcast address handling.
