/23 Subnet Mask — 255.255.254.0
Everything about the /23 prefix: the subnet mask 255.255.254.0, wildcard mask 0.0.1.255, 512 addresses with 510 usable hosts, and how the block is laid out in practice.
Complete CIDR reference table
Every valid IPv4 prefix from /0 to /32 with its mask, wildcard and address counts.
| Prefix | Subnet mask | Wildcard | Total addresses | Usable hosts | Block size |
|---|---|---|---|---|---|
| /0 | 0.0.0.0 | 255.255.255.255 | 4,294,967,296 | 4,294,967,294 | 4,294,967,296 |
| /1 | 128.0.0.0 | 127.255.255.255 | 2,147,483,648 | 2,147,483,646 | 2,147,483,648 |
| /2 | 192.0.0.0 | 63.255.255.255 | 1,073,741,824 | 1,073,741,822 | 1,073,741,824 |
| /3 | 224.0.0.0 | 31.255.255.255 | 536,870,912 | 536,870,910 | 536,870,912 |
| /4 | 240.0.0.0 | 15.255.255.255 | 268,435,456 | 268,435,454 | 268,435,456 |
| /5 | 248.0.0.0 | 7.255.255.255 | 134,217,728 | 134,217,726 | 134,217,728 |
| /6 | 252.0.0.0 | 3.255.255.255 | 67,108,864 | 67,108,862 | 67,108,864 |
| /7 | 254.0.0.0 | 1.255.255.255 | 33,554,432 | 33,554,430 | 33,554,432 |
| /8 | 255.0.0.0 | 0.255.255.255 | 16,777,216 | 16,777,214 | 16,777,216 |
| /9 | 255.128.0.0 | 0.127.255.255 | 8,388,608 | 8,388,606 | 8,388,608 |
| /10 | 255.192.0.0 | 0.63.255.255 | 4,194,304 | 4,194,302 | 4,194,304 |
| /11 | 255.224.0.0 | 0.31.255.255 | 2,097,152 | 2,097,150 | 2,097,152 |
| /12 | 255.240.0.0 | 0.15.255.255 | 1,048,576 | 1,048,574 | 1,048,576 |
| /13 | 255.248.0.0 | 0.7.255.255 | 524,288 | 524,286 | 524,288 |
| /14 | 255.252.0.0 | 0.3.255.255 | 262,144 | 262,142 | 262,144 |
| /15 | 255.254.0.0 | 0.1.255.255 | 131,072 | 131,070 | 131,072 |
| /16 | 255.255.0.0 | 0.0.255.255 | 65,536 | 65,534 | 65,536 |
| /17 | 255.255.128.0 | 0.0.127.255 | 32,768 | 32,766 | 32,768 |
| /18 | 255.255.192.0 | 0.0.63.255 | 16,384 | 16,382 | 16,384 |
| /19 | 255.255.224.0 | 0.0.31.255 | 8,192 | 8,190 | 8,192 |
| /20 | 255.255.240.0 | 0.0.15.255 | 4,096 | 4,094 | 4,096 |
| /21 | 255.255.248.0 | 0.0.7.255 | 2,048 | 2,046 | 2,048 |
| /22 | 255.255.252.0 | 0.0.3.255 | 1,024 | 1,022 | 1,024 |
| /23 | 255.255.254.0 | 0.0.1.255 | 512 | 510 | 512 |
| /24 | 255.255.255.0 | 0.0.0.255 | 256 | 254 | 256 |
| /25 | 255.255.255.128 | 0.0.0.127 | 128 | 126 | 128 |
| /26 | 255.255.255.192 | 0.0.0.63 | 64 | 62 | 64 |
| /27 | 255.255.255.224 | 0.0.0.31 | 32 | 30 | 32 |
| /28 | 255.255.255.240 | 0.0.0.15 | 16 | 14 | 16 |
| /29 | 255.255.255.248 | 0.0.0.7 | 8 | 6 | 8 |
| /30 | 255.255.255.252 | 0.0.0.3 | 4 | 2 | 4 |
| /31 | 255.255.255.254 | 0.0.0.1 | 2 | 2 (RFC 3021) | 2 |
| /32 | 255.255.255.255 | 0.0.0.0 | 1 | 1 | 1 |
Quick reference: mask to prefix
Reading a mask written in dotted-decimal form. Count the 1 bits, or use the octet boundaries below.
| Subnet mask | Prefix | Wildcard | Usable hosts | Block size |
|---|---|---|---|---|
| 255.255.255.128 | /25 | 0.0.0.128 | 126 | 128 |
| 255.255.255.192 | /26 | 0.0.0.64 | 62 | 64 |
| 255.255.255.224 | /27 | 0.0.0.32 | 30 | 32 |
| 255.255.255.240 | /28 | 0.0.0.16 | 14 | 16 |
| 255.255.255.248 | /29 | 0.0.0.8 | 6 | 8 |
| 255.255.255.252 | /30 | 0.0.0.4 | 2 | 4 |
| 255.255.255.254 | /31 | 0.0.0.2 | 0 | 2 |
| 255.255.255.255 | /32 | 0.0.0.1 | 0 | 1 |
Example: 255.255.255.224 has three 1 bits in its last octet, so the prefix is 24 + 3 = /27, the wildcard is 0.0.0.31 and there are 32 addresses of which 30 are usable.
What a /23 means
The number after the slash counts the network bits, so a /23 has 23 network bits and 9 host bits. Those 9 bits are what produce the address count: 2^9 = 512 addresses in the block.
Prefix /23 Subnet mask 255.255.254.0 Wildcard 0.0.1.255 Binary mask 11111111.11111111.11111110.00000000 Host bits 9
Two /24s — often an aggregation of two VLANs.
A worked /23 block
Taking 192.168.0.0 as the starting point and applying the /23 mask gives the boundaries below. The network address is the base with every host bit cleared, and the broadcast address is the base with every host bit set — which is why they are always the first and last addresses in the block.
192.168.0.0/23
Network address 192.168.0.0
First host 192.168.0.1
Last host 192.168.1.254
Broadcast 192.168.1.255
Usable hosts 510 of 512 addresses
Consecutive /23 blocks start every 512 addresses — that spacing is the block size, and it is the same number as the address count. A /23 block that does not begin on a multiple of 512 overlaps its neighbour, which is the most common subnetting error in a hand-written address plan.
Sizing a /23
To decide whether a /23 fits a requirement, compare the usable host count against the number of devices you need to address, then add spare capacity.
| Measure | Value | What it means |
|---|---|---|
| Network bits | 23 | Fixed portion identifying the subnet |
| Host bits | 9 | Bits available for device addresses |
| Total addresses | 512 | The size of the block |
| Usable hosts | 510 | Excludes the network and broadcast address |
| Block size | 512 | Spacing between consecutive subnets |
Subnets inside a /23
Splitting a /23 by borrowing one more bit produces two /24 blocks, each half the size. Borrowing two bits produces four /25 blocks, and so on. The counts are always powers of two.
| Child prefix | Blocks that fit | Addresses each | Total addresses |
|---|---|---|---|
| /24 | 2 | 256 | 512 |
| /25 | 4 | 128 | 512 |
| /26 | 8 | 64 | 512 |
| /27 | 16 | 32 | 512 |
Use the VLSM planner when the subnets inside a /23 need to be different sizes — for example a /25 for a user VLAN and several /30s for the links between switches.
Common mistakes
- Forgetting the two reserved addresses. A /23 has 512 addresses but only 510 assignable to devices. Sizing a subnet at exactly 510 hosts of requirement leaves nothing for the network and broadcast address.
- Writing the mask wrong. There is exactly one valid mask for a /23: 255.255.254.0. Anything else is a different prefix and will silently create a different network.
- Using the wildcard as the mask. 0.0.1.255 is the wildcard for a /23, not the mask. In a Cisco ACL the wildcard convention is inverted, so the two get swapped constantly.
- Starting the subnet off its boundary. A /23 must start on a multiple of 512. Starting anywhere else overlaps neighbouring subnets and produces routing loops or unreachable ranges.
- Assuming a /23 is the right size for every case. Check the host requirement first — the CIDR calculator has a host-to-prefix cheat sheet, and the subnet calculator shows the full breakdown for any address.
Other prefixes
Jump to another prefix, or see the complete table with all 33 values.
Neighbouring prefixes compared
| Prefix | Mask | Hosts | Block size | Relationship |
|---|---|---|---|---|
| /21 | 255.255.248.0 | 2,046 | 2,048 | A further halving or doubling |
| /22 | 255.255.252.0 | 1,022 | 1,024 | Half the hosts — one bit borrowed |
| /23 | 255.255.254.0 | 510 | 512 | This page |
| /24 | 255.255.255.0 | 254 | 256 | Double the hosts — one bit returned |
| /25 | 255.255.255.128 | 126 | 128 | A further halving or doubling |
Every step to a shorter prefix doubles the address count, and every step to a longer prefix halves it. That single rule explains the whole table.
Related: CIDR calculator, subnet calculator, VLSM planner, CIDR notation explained, subnetting guide.
IP to Binary Converter · Binary to IP Converter · IP to Hex Converter · Hex to IP Converter · IP to Decimal Converter ·
Frequently asked questions
What is the subnet mask for a /23?
The subnet mask for a /23 is 255.255.254.0. It is 23 consecutive 1 bits followed by 9 0 bits, which is what makes the host portion of the address 9 bits wide. The corresponding wildcard mask is 0.0.1.255, which is the bitwise inverse and is what you would use in a Cisco ACL or an OSPF network statement.
How many addresses are in a /23?
A /23 contains 2^9 = 512 addresses. That follows directly from the host bit count: a /23 leaves 9 bits for the host portion, and each bit doubles the count. Every step to a longer prefix halves this number, and every step to a shorter prefix doubles it.
How many usable hosts does a /23 have?
A /23 has 510 usable host addresses out of 512 total. The two that are not assignable are the network address, which has all 9 host bits set to 0, and the broadcast address, which has all 9 host bits set to 1. That is why the usable count is always exactly two less than the total.
What is the block size of a /23?
The block size is 512, the same as the address count. Consecutive /23 subnets therefore start every 512 addresses. A /23 that does not begin on a multiple of 512 overlaps its neighbours, which causes addresses to be unreachable or routed to the wrong place.
How do I split a /23 into smaller subnets?
Borrow one bit to create two /24 subnets of 256 addresses each. Borrow two bits for four /25 subnets, three bits for eight /26 blocks, and so on. The count of child subnets is always a power of two equal to 2 raised to the number of borrowed bits.
Is a /23 a private or public subnet?
The prefix length says nothing about whether an address is private or public — that is determined by the address range, not the mask. A 192.168.1.0/24 is private because it sits inside the RFC 1918 block 192.168.0.0/16, while 203.0.113.0/24 is documentation space and 8.8.8.0/24 is public. Use the subnet calculator with any address in the block to see its classification.