This IPv4 subnet calculator takes one IPv4 address and a prefix length from 0 to 32 and prints the network that contains that address. The address may be four dotted octets, or the same octets with a slash and a prefix. A separate prefix field is used when the address has no slash. If both are filled and the numbers differ, Calculate stops and clears the previous result.
The arithmetic is integer arithmetic on the 32-bit value. The mask is the top prefix bits. The network is the address AND the mask. The wildcard is the inverse of the mask. For prefixes 0 through 30, the broadcast is the network OR the wildcard, the first host is the network plus one, the last host is the broadcast minus one, and the usable host count is the total number of addresses minus 2. A /0 has 4294967296 addresses and 4294967294 usable hosts. Those counts are exact. They are not a rounded floating-point estimate.
A /31 is the exception in RFC 3021. Both addresses are usable, the usable count is 2, and the page does not print a broadcast row. A /32 is a single address. The network is that address, the usable count is 1, and there is no broadcast row.
The range line comes from a fixed list, checked in order: limited broadcast for 255.255.255.255, this network for 0.0.0.0/8, private for 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16, shared address space for 100.64.0.0/10, loopback for 127.0.0.0/8, link-local for 169.254.0.0/16, documentation for 192.0.2.0/24, 198.51.100.0/24, and 203.0.113.0/24, multicast for 224.0.0.0/4, and reserved for 240.0.0.0/4. Any other address is labeled not in the special ranges on this page. That label is not a claim that the address is public, routed, reachable, or safe to use. The page does not say which network announced it.
An invalid address, a hostname, an IPv6 value, a prefix outside 0–32, or a slash that disagrees with the prefix field clears the table. The previous network does not stay on screen. Nothing is sent off the page.
192.168.1.0/24 produces network 192.168.1.0, subnet mask 255.255.255.0, wildcard 0.0.0.255, broadcast 192.168.1.255, first host 192.168.1.1, last host 192.168.1.254, 256 total addresses, and 254 usable hosts. The range line is private. The same result appears if the address field is 192.168.1.0 and the prefix field is 24.
192.168.0.1/31 produces usable addresses 192.168.0.0 and 192.168.0.1, with a usable count of 2 and no broadcast line. 10.1.2.3/32 produces one usable address, 10.1.2.3. 8.8.8.8/0 produces network 0.0.0.0, broadcast 255.255.255.255, and the range line not in the special ranges on this page. 192.168.001.1 is rejected because of the leading zero. 2001:db8::1 is rejected because this page does not calculate IPv6. example.com is rejected because it is a hostname.
The calculation stays in the browser. The address is not stored. A result describes the prefix you typed. It does not tell you whether a host answers, which operator holds the space, or whether a packet would be delivered.
IPv4 only. Type a.b.c.d or a.b.c.d/len. Prefix 0–32. A leading zero in an octet is invalid. /31 treats both addresses as usable (RFC 3021). /32 is one address. Addresses outside the fixed list on this page are described as not in the special ranges on this page. That is not a reachability or safety claim. No DNS, geolocation, or IPv6.
No. The arithmetic stays in the browser. There is no DNS query, no geolocation, and no request to an address API.
A /31 has two addresses and both are usable, following RFC 3021. The page does not subtract 2 and does not invent a broadcast address.
The line says not in the special ranges on this page. That sentence is only the fixed list. It does not mean the address is reachable, announced, or safe.
010 could be read as 10 or as an old octal value. The page rejects a leading zero so the octet is the decimal number you typed.