IP Subnet Calculator
Developer Tools · Added 18 August 2026
Enter an address with a prefix — or a dotted subnet mask, whichever you have — and get every figure that follows from it: the network and broadcast addresses, the usable host range, the host count, the wildcard mask for an access list, and where the prefix actually falls in binary. The block can also be split into equal subnets, and the tool will size a prefix from a host count if that is the direction you are working in.
Subnet
Network
192.168.1.0/24
254 usable addresses, from 192.168.1.1 to 192.168.1.254.
- Subnet mask
- 255.255.255.0
- Wildcard mask
- 0.0.0.255
- Network address
- 192.168.1.0
- Broadcast address
- 192.168.1.255
- First usable
- 192.168.1.1
- Last usable
- 192.168.1.254
- Usable addresses
- 254
- Scope
- Reserved
- Class
- C
/24
For access lists
256 total
Private — RFC 1918
Classful notation, superseded by CIDR
The address you entered is the network address itself, so it cannot be assigned to a host.
This block is private — rfc 1918. Traffic to it is not carried across the public internet, which is what makes it safe to reuse inside any number of separate networks.
Where the prefix falls
11000000101010000000000100000000
The first 24 bits are the network and never change inside this subnet; the remaining 8 identify the host. In dotted form that is 11000000.10101000.00000001.00000000.
Copyable values
- CIDR
- 192.168.1.0/24
- Address entered
- 192.168.1.0
- Netmask
- 255.255.255.0
- Host range
- 192.168.1.1 – 192.168.1.254
- Integer form
- 3232235776
Every figure here is arithmetic on the address and prefix you typed. Nothing is looked up: this tool does not resolve an address to an owner, a location or a device, and no address you enter leaves your browser.
How to use the ip subnet calculator
- 1Type an address and prefix, such as 192.168.1.0/24. A dotted mask (10.0.0.0 255.255.255.0) or a bare address also works.
- 2Read the network address, broadcast address and usable range — the first and last addresses you can actually assign.
- 3Check the binary breakdown to see which bits the prefix fixes and which are left for hosts.
- 4To carve the block up, choose a longer prefix under Split this block into, and read the table of subnets.
- 5To work backwards from a requirement, enter the number of hosts you need and the tool names the smallest prefix that fits.
Examples
A host inside a /26
- Input
- 192.168.1.130/26
- Result
- Network 192.168.1.128, broadcast 192.168.1.191, usable 192.168.1.129-192.168.1.190, 62 hosts
The address entered is a host rather than the network address — the prefix is what decides which subnet it lands in.
A point-to-point link
- Input
- 10.0.0.4/31
- Result
- Both 10.0.0.4 and 10.0.0.5 are usable, and there is no broadcast address
RFC 3021. The usual 2^n minus 2 formula would report zero usable addresses here.
Splitting a /24 into four
- Input
- 10.0.0.0/24 split into /26
- Result
- 10.0.0.0/26, 10.0.0.64/26, 10.0.0.128/26, 10.0.0.192/26 — 62 hosts each
Sizing from a host count
- Input
- 500 hosts needed
- Result
- /23 — mask 255.255.254.0, 510 usable addresses
A /24 gives 254, which is short. The next size up is the answer, and it leaves room to grow.
About the ip subnet calculator
The prefix is the only thing that matters
Every field on this page is derived from one number. The prefix says how many leading bits of the address identify the network; the rest identify a host within it. Clear the host bits and you have the network address; set them all and you have the broadcast address. The mask is the prefix written as a dotted quad, and the wildcard mask is that inverted.
This is why the binary view is worth a glance even when the decimal answer is what you came for. A /26 looks arbitrary in dotted notation — why does 192.168.1.130 belong to 192.168.1.128? — and obvious in binary, where the prefix boundary falls two bits into the last octet and the first two bits of 130 are the same as those of 128.
Choosing a prefix
Work from the host count and then add headroom. A prefix that fits exactly today will not survive the first batch of new devices, and enlarging a live subnet is not a configuration change — it means renumbering every static address, every firewall rule and every DHCP reservation that references the old range.
The other constraint is that subnets should stay aggregatable. Allocating /24s out of a /16 in order keeps the routing table small, because contiguous blocks can be summarised into a single route. Allocating them at random produces the same number of usable addresses and a routing table nobody can read.
The private ranges, and why they are reused everywhere
RFC 1918 sets aside three blocks — 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16 — that no router on the public internet will carry. That is what makes them reusable: every office and home network can number itself out of the same space without conflict, because the addresses never appear outside their own network.
Two other reserved ranges show up often enough to be worth recognising. 169.254.0.0/16 is link-local, and an interface holding one of those has failed to get a DHCP lease and assigned itself an address instead — it is a symptom rather than a configuration. 100.64.0.0/10 is carrier-grade NAT, used by ISPs that have run out of public IPv4 addresses; a customer router with one of those has no directly reachable public address at all, which is why inbound port forwarding stops working on those connections.
Frequently asked questions
Why are two addresses missing from the host count?
What is the wildcard mask for?
Does the class of an address still matter?
Why is 172.16.0.0/12 private when 172.32.0.0 is not?
Can this look up who owns an address?
What do the /31 and /32 cases mean in practice?
Related tools
Chmod Calculator
Developer Tools
Convert Unix file permissions between the octal number, the symbolic string and a tick-box grid.
Number Base Converter
Converters
Convert between binary, octal, decimal, hexadecimal and any base from 2 to 36.
HTTP Status Code Lookup
Developer Tools
Search every HTTP status code — what it means, when to return it, and whether it caches.