Skip to content
ToolBoxGenie

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.

CIDR, a dotted mask (10.0.0.0 255.255.255.0), or a bare address.

Finds the smallest prefix with room for that many devices.

Equal-sized blocks, listed below.

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

/24

Wildcard mask
0.0.0.255

For access lists

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

256 total

Scope
Reserved

Private — RFC 1918

Class
C

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

  1. 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.
  2. 2Read the network address, broadcast address and usable range — the first and last addresses you can actually assign.
  3. 3Check the binary breakdown to see which bits the prefix fixes and which are left for hosts.
  4. 4To carve the block up, choose a longer prefix under Split this block into, and read the table of subnets.
  5. 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?
The lowest address in a block identifies the network itself and the highest is the broadcast address for it, so neither can be assigned to an interface. A /24 has 256 addresses and 254 usable ones. The two exceptions are /31, where RFC 3021 removes both concepts so a point-to-point link can use both addresses, and /32, which is a single host route.
What is the wildcard mask for?
It is the subnet mask with every bit inverted, and it is the form Cisco access lists and OSPF network statements expect. A /24 has a subnet mask of 255.255.255.0 and a wildcard mask of 0.0.0.255. Mixing the two up is a common cause of an access list that silently matches nothing, which is why both are shown here.
Does the class of an address still matter?
Barely. Classful addressing tied the prefix length to the first octet — class A meant /8, class B meant /16 — and CIDR replaced it in 1993 because that wasted enormous amounts of address space. The class is shown because certification exams and older documentation still use the terms, but nothing in modern routing derives a prefix from it.
Why is 172.16.0.0/12 private when 172.32.0.0 is not?
Because RFC 1918 sets aside 172.16.0.0/12, which covers 172.16.0.0 through 172.31.255.255 — sixteen /16 blocks rather than the whole of 172. Anything from 172.32.0.0 upwards is public address space belonging to somebody else, and numbering an internal network out of it will eventually collide with the real holder.
Can this look up who owns an address?
No, and deliberately not. This tool does arithmetic on the address you type: it can tell you that 8.8.8.8 is a globally routable public address and that 10.0.0.5 is private, because those facts are properties of the number itself. It performs no query of any kind, identifies no person or organisation, and nothing you enter leaves your browser.
What do the /31 and /32 cases mean in practice?
A /32 is how a single host is expressed in a routing table or a firewall rule — one address, no range. A /31 is the modern way to number a router-to-router link: before RFC 3021 those links used a /30 and wasted two of its four addresses, and a /31 gives you the two you need and nothing more.