IPv4 subnetting reference
In the IPv4 address space certain address blocks are specially allocated or reserved for special uses such as loopback interfaces, private networks (RFC 1918),[1] and state-less autoconfiguration (Zeroconf, RFC 3927)[2] of interfaces. Such addresses may be used without registration or allocation from Regional Internet Registries (RIRs). However, these address ranges must not be routed into the public Internet infrastructure.
The netmask is a bitmask that can be used to separate the bits of the network identifier from the bits of the host identifier. It is often written in the same notation used to denote IP addresses.
Not all sizes of prefix announcement may be routable on the public Internet: see routing, peering.
Class | Leading bits | Start | End | Default Subnet Mask in dotted decimal | CIDR notation |
---|---|---|---|---|---|
A | 0 | 0.0.0.0 | 127.255.255.255 | 255.0.0.0 | /8 |
B | 10 | 128.0.0.0 | 191.255.255.255 | 255.255.0.0 | /16 |
C | 110 | 192.0.0.0 | 223.255.255.255 | 255.255.255.0 | /24 |
D | 1110 | 224.0.0.0 | 239.255.255.255 | not defined | not defined |
E | 1111 | 240.0.0.0 | 255.255.255.255 | not defined | not defined |
The blocks numerically at the start and end of classes A, B and C were originally reserved for special addressing or future features, i.e., 0.0.0.0/8 and 127.0.0.0/8 are reserved in former class A; 128.0.0.0/16 and 191.255.0.0/16 were reserved in former class B but are now available for assignment; 192.0.0.0/24 and 223.255.255.0/24 are reserved in former class C.
While the 127.0.0.0/8 network is a Class A network, it is designated for loopback and cannot be assigned to a network.
See (RFC 5735 Special Use IPv4 Addresses)[3]
CIDR | Host bits | Netmask | Addresses in subnet | Typical usage |
---|---|---|---|---|
/8 | 24 | 255.0.0.0 | 16777216 = 224 | Largest block allocation made by IANA |
/9 | 23 | 255.128.0.0 | 8388608 = 223 | |
/10 | 22 | 255.192.0.0 | 4194304 = 222 | |
/11 | 21 | 255.224.0.0 | 2097152 = 221 | |
/12 | 20 | 255.240.0.0 | 1048576 = 220 | |
/13 | 19 | 255.248.0.0 | 524288 = 219 | |
/14 | 18 | 255.252.0.0 | 262144 = 218 | |
/15 | 17 | 255.254.0.0 | 131072 = 217 | |
/16 | 16 | 255.255.0.0 | 65536 = 216 | |
/17 | 15 | 255.255.128.0 | 32768 = 215 | ISP / large business |
/18 | 14 | 255.255.192.0 | 16384 = 214 | ISP / large business |
/19 | 13 | 255.255.224.0 | 8192 = 213 | ISP / large business |
/20 | 12 | 255.255.240.0 | 4096 = 212 | Small ISP / large business |
/21 | 11 | 255.255.248.0 | 2048 = 211 | Small ISP / large business |
/22 | 10 | 255.255.252.0 | 1024 = 210 | |
/23 | 9 | 255.255.254.0 | 512 = 29 | |
/24 | 8 | 255.255.255.0 | 256 = 28 | Large LAN |
/25 | 7 | 255.255.255.128 | 128 = 27 | Large LAN |
/26 | 6 | 255.255.255.192 | 64 = 26 | Small LAN |
/27 | 5 | 255.255.255.224 | 32 = 25 | Small LAN |
/28 | 4 | 255.255.255.240 | 16 = 24 | Small LAN |
/29 | 3 | 255.255.255.248 | 8 = 23 | Smallest multi-host network |
/30 | 2 | 255.255.255.252 | 4 = 22 | "Glue network" (point to point links) |
/31 | 1 | 255.255.255.254 | 2 = 21 | Point to point links (RFC 3021) |
/32 | 0 | 255.255.255.255 | 1 = 20 | Host route |
In common usage, the "host all zeros" address is reserved for referring to the entire network, while the "host all ones" address is used as a broadcast address in the given subnet; this reduces the number of addresses available for hosts by 2. This explains the reference to /31 networks as "Rarely Used," as the only possible addresses on a /31 network are "host all ones" and "host all zeros." RFC 3021 creates an exception to the "host all ones" and "host all zeros" broadcast usage to make /31 networks usable for point-to-point links. In practice, however, point-to-point links are still typically implemented using /30 networks, or occasionally by /32 and point-to-point explicit host routes.[citation needed] There is generally no technical advantage to /31 versus /32, although one or the other may be more convenient based on other issues. A /30 is always wasteful and has as its sole advantage that it behaves "as expected" for any other subnetwork.
See also
Notes
- ^ RFC 1918 http://www.rfc-editor.org/rfc/rfc1918.txt
- ^ RFC 3927 http://www.rfc-editor.org/rfc/rfc3927.txt
- ^ RFC 5735 http://www.rfc-editor.org/rfc/rfc5735.txt