Subnet Calculator

How To Use

To use: Input IP Address in dotted-decimal format (e.g. Classful calculation is based on classful network addressing architecture. Classful networking was used until the introduction of CIDR (classless inter domain routing). Calculations are given instantly when typing. Invalid input gives no results. Calculator will assume that unfinished IP addresses end with zeros. Network class will be determined automatically. Only Network classes A,B and C will calculate results. For classes network calculations, please use CIDR calculator, for route aggregation, please use Supernet calculator.

Class First octet range Leading bits Number of subnets Number of hosts
Class A 1-126 0 128 (27) 16777216 (224)
Class B 128-191 10 16384 (214) 65536 (216)
Class C 192-223 110 2097152 (221) 256 (28)

Select Mask in dotted-decimal format or by adjusting network bits or max sub-networks you want.

Feature list:

  • Provides calculations using IP address and Mask (sub-net bits, max networks, host bits, max hosts);
  • Subnet ID, Broadcast, Host addresses, Wildcard mask and class bit usage bitmap are provided as calculation results;
  • Optional RFC 3021 support.


Internet Protocol Address (or IP) are used by network devices as host identifiers for communication with other network devices using Internet Protocol. Internet Protocol version 4 (IPv4) are 32-bit binary numbers, usually represented in human-readable dotted-decimal format (e.g. Certain IP addresses are reserved by the Internet Assigned Numbers Authority (IANA) for special use and cannot be used as host addresses (listed in RFC 5735). To convert IP address value between binary, decimal and hex, please use IP conversion.


The MASK is binary number (also usually represented in dotted-decimal format) used to separate network and host parts in IP address. IPv4 subnet mask is 32 bits large. In a valid subnet mask network part is represented with "1" from left side followed and ended by host part "0" - 11111111.11111111.11111111.00000000 (binary form), (dotted-decimal form) or simply "/24" (where 24 represents that subnet network part is 24 bits long). Subnet calculator allows calculation for

Host Bits

Subnet bits are the number of bits used to identify subnet. IP network is divided into network prefix and host identifier. Host bits are there to identify hosts and it is divided into subnet and host identifier.

Subnet mask
IP address Network Hosts
IP address Network Subnet Hosts

Max Networks and Hosts

Maximum number of subnets and hosts available in the specified subnet mask.

  • Max Subnets = 2subnet_bits
  • Max Hosts = 2host_bits - 2 (subtraction of network and broadcast addresses. Exceptions are subnets with /31 subnet mask where there is no subtraction part)

Network ID

This is the Reserved Address that represents the Network. It is destination part of the IP routes and it cannot be assigned to host as an identifier. Network ID is calculated by using bitwise AND between IP address and subnet mask.

    11000000.10101000.01011000.00000001 (
AND 11111111.11111111.00000000.00000000 ( or /16)
  = 11000000.10101000.00000000.00000000 (

Broadcast Address

Reserved address that is used to target all devices in given network. It cannot be assigned to the host. Broadcast address is calculated by performing bitwise NOT on subnet mask:

NOT 11111111.11111111.00000000.00000000 ( or /16)
  = 00000000.00000000.11111111.11111111
then using bitwise OR between inverted subnet mask and IP address:
    11000000.10101000.01011000.00000001 (
 OR 00000000.00000000.11111111.11111111 (~
  = 11000000.10101000.11111111.11111111 (

Host Addresses

Address range calculation: network ID + 1 to broadcast - 1

Wildcard Mask

Wildcard mask is calculated by Inverting the Subnet Mask:

NOT 11111111.11111111.00000000.00000000 (
  = 00000000.00000000.11111111.11111111 (

Class Bit Usage

Visually see network prefix, subnet and host bits structure in the given IP address. "n" stands for network part of the network, "s" - subnet part and "h" - host part.


Whether to use /31 or subnet mask specified in RFC 3021