CIDR & Subnet Calculator
Network, broadcast, usable hosts and subnet splits from any block.
Everything runs inside your browser. Your files never leave your device.
Input
Result
Ask about CIDR & Subnet Calculator
Questions about what this tool does, which option to pick, or what it can and cannot handle.
The question you type here is sent to an AI provider to be answered — your files and whatever you put in the tool above are not, and the assistant cannot see them. Answers are generated and can be wrong. The tool itself is not guessing: it runs deterministic code on your device.
About the CIDR & Subnet Calculator
A CIDR block such as 10.0.0.0/16 is a compact way of saying "these addresses". The number after the slash counts how many leading bits are fixed; everything after them varies. Working out what that means in practice — the first usable address, the broadcast address, how many machines fit — is arithmetic nobody enjoys doing in their head at the moment they need it.
This calculator does it for IPv4 and IPv6. Give it a block and it reports the network address, the netmask, the wildcard mask that access lists want, the broadcast address, the first and last usable host, and the total and usable counts. It also names the scope: whether the block is private under RFC 1918, loopback, link-local, carrier-grade NAT or genuinely public. That last line catches a surprising number of misunderstandings before they become firewall rules.
Two boundary cases are handled properly rather than glossed over. A /31 has no network or broadcast address at all: RFC 3021 makes both addresses usable, because a point-to-point link between two routers has no need to reserve either. A /32 is a single host. Most calculators subtract two regardless and quietly report a /31 as having zero usable addresses, which is wrong and confusing in exactly the situation where you are checking.
The subnet split does the planning half. Give it a target prefix and it lists the resulting subnets with their ranges and host counts, so dividing a /16 into /24s becomes a table rather than an exercise. It refuses if you ask for a prefix larger than the block you started with, since that is not a division.
IPv6 is described rather than split, because a /64 contains more addresses than there are grains of sand on Earth and enumerating them would help nobody. Addresses are printed collapsed in the canonical RFC 5952 form.
How to use it
- 1Type a block such as 192.168.1.0/24, or a bare address to treat it as a single host.
- 2Read the network, broadcast and usable host range. The scope line tells you whether the block is private, public or reserved.
- 3To divide the block, set the target prefix — 24 to split a /16 into /24s — and the tool lists the subnets.
- 4Raise the row limit if the split produces more subnets than are shown, or switch on the binary view to see where the mask actually falls.
Questions
- Why does a /24 have 254 usable hosts rather than 256?
- The first address identifies the network itself and the last is the broadcast address, so neither can be assigned to a machine. That subtraction applies to every block from /30 upwards.
- Why does a /31 show two usable hosts?
- Because RFC 3021 defines it that way for point-to-point links. With exactly two addresses there is nothing to broadcast to, so both are usable. Tools that report zero are applying the general rule where a specific exception exists.
- Which private ranges are there?
- 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16 under RFC 1918, plus 100.64.0.0/10 for carrier-grade NAT and 169.254.0.0/16 for link-local. The tool names whichever your block falls in.
- Why will it not split an IPv6 block?
- Because the numbers stop being useful. A single /64 holds 18 quintillion addresses, and listing subnets of it would produce a table nobody could read. For IPv6, the convention is a /64 per LAN and a /48 or /56 per site, and the tool reports the boundaries rather than enumerating them.

