How it works
IPv6 has 128 bits. Clearing the low 128 − p bits gives the network boundary. The block size is exactly 2^(128 − p), calculated with integer arithmetic rather than floating point.
Worked example
2001:db8:42:7::93/64 belongs to 2001:db8:42:7::/64. Its final address is 2001:db8:42:7:ffff:ffff:ffff:ffff.
Inputs, edge cases & common mistakes
Prefixes /0–/128 are accepted. IPv6 has no broadcast address. A first/last range is not a usable-host list: subnet-router anycast and interface addressing conventions matter. /64 is common for SLAAC, but this arithmetic permits every prefix. Zone identifiers are not accepted.
Technical references
Reviewed 9 September 2026. Found an issue? Send a correction with a reproducible example.