IPv6 Subnet Calculator

Parse and analyze IPv6 prefixes with full 128-bit precision. See compressed and expanded forms, address ranges, and split a prefix into equal subnets.

e.g. for a /48, enter 64 to see the first 50 /64 subnets inside it.

About IPv6 Addressing

An IPv6 address is 128 bits, written as eight 16-bit hex groups separated by colons: 2001:0db8:0000:0000:0000:0000:0000:0001. Leading zeros in a group may be dropped, and one run of consecutive zero groups may be collapsed to :: — so the same address can be written 2001:db8::1.

Prefixes use CIDR notation: 2001:db8::/32 means the first 32 bits identify the network. All math in this calculator uses JavaScript BigInt for exact 128-bit precision.

Typical Prefix Sizes

PrefixUseSubnets / size
/32Per-ISP allocation from a RIR65,536 × /48
/48Per-organization or per-site65,536 × /64
/56Residential customer (some ISPs)256 × /64
/64Standard LAN / VLAN segment2⁶⁴ addresses
/127Point-to-point link (RFC 6164)2 addresses
/128Single host route1 address

Reserved IPv6 Ranges

Frequently Asked Questions

ISPs typically assign /48 to organizations and /56 or /64 to end users. A single LAN segment should always be a /64 — SLAAC and many protocols depend on it. /127 is used for point-to-point links.
IPv6 uses 128 bits per address, vs 32 for IPv4. That's 2^128 addresses, roughly 3.4 × 10^38 — enough to give every grain of sand on Earth its own internet. The huge space is intentional: it makes large hierarchical allocations and SLAAC (stateless autoconfiguration) practical without conservation worries.
:: is shorthand for one or more consecutive groups of all-zero hexadectets. 2001:db8::1 expands to 2001:0db8:0000:0000:0000:0000:0000:0001. You can only use :: once per address; otherwise the position is ambiguous.
IPv6 has no broadcast address — multicast is used instead. On a /64 LAN, every address in the prefix is technically usable, though convention reserves the all-zeros address (subnet router anycast) and the anycast addresses in the top 128. For point-to-point /127 links, both addresses are used as endpoints.
Exact. The calculator uses JavaScript BigInt for full 128-bit arithmetic, so there is no rounding or precision loss even for /0 prefix sizes (which contain 2^128 ≈ 340 undecillion addresses).
Copied to clipboard!