Technology & Internet

How IPv6 Subnetting Is Calculated

IPv6 subnetting works the same way as IPv4 — masking the address by a prefix length — but with 128-bit addresses instead of 32-bit ones, producing address counts so large they're shown as exact text rather than a rounded number.

The same masking idea, at 128 bits

For the address 2001:0db8:0000:0042:0000:0000:0000:0001 with a /64 prefix, the network address is 2001:0db8:0000:0042:0000:0000:0000:0000, and the range extends to 2001:0db8:0000:0042:ffff:ffff:ffff:ffff — a total of 18,446,744,073,709,551,616 addresses in that one subnet.

A larger prefix means a vastly larger subnet

The same address with a /48 prefix instead (16 fewer bits reserved for network) gives a network of 2001:0db8:0000:0000:0000:0000:0000:0000, ranging up to 2001:0db8:0000:ffff:ffff:ffff:ffff:ffff — 1,208,925,819,614,629,174,706,176 addresses, vastly more than the /64 subnet's already-enormous count.

Why every address in the range is usable

Unlike IPv4, IPv6 has no reserved network or broadcast address concept — both the network address and the last address in the range shown above are themselves usable host addresses, not off-limits placeholders.

Why /64 is the standard subnet size

IETF recommends /64 as the standard subnet size for most IPv6 networks, leaving a full 64 bits for the interface identifier — far more addresses than any practical network would ever assign to hosts, existing specifically to simplify address auto-configuration rather than to conserve address space the way IPv4 subnetting does.