IPv6 Subnet Calculator — split /48 or /56 into /64s and list them
Carve an IPv6 prefix such as a /48 or /56 into /64s (or any length): subnet count, addresses per subnet, a paged list, jump to subnet #N, find which subnet holds an address, nibble-boundary checks and Cisco / YAMAHA RTX / Linux config.
🔒 Runs entirely in your browser. Your input and output are never sent to a server or stored — fully private.
Subnets
A typical plan: the ISP or RIR gives a site /48 (65,536 × /64) or a home /56 (256 × /64); every LAN gets one /64, and the 16 bits between /48 and /64 are your subnet ID. Number subnets on nibble boundaries (/52, /56, /60) so each level is a whole hex digit.
About this tool
This IPv6 subnet calculator splits a parent prefix — a /48 from your RIR or ISP, a /56 or /60 delegated to a home router, or anything else — into longer prefixes, usually /64s. It works with full 128-bit precision, so it shows the exact number of subnets and addresses per subnet, a paged list of every subnet with its first and last address, a jump to subnet number N, and a lookup that tells you which subnet any address falls in. It warns about prefixes that are not on a nibble boundary or longer than /64, and generates interface configuration for Cisco IOS, YAMAHA RTX (with router advertisement for /64) and Linux. Everything runs in your browser.
Frequently asked questions
Why should every LAN be a /64?
IPv6 addressing assumes a 64-bit interface identifier. SLAAC, the way most phones and PCs configure themselves, only works on a /64, and so do temporary privacy addresses and many vendors' features. A longer prefix on a LAN quietly breaks Android, which does not support DHCPv6 address assignment. Address space is not the constraint it is in IPv4: use /64 for every segment, /127 for point-to-point router links (RFC 6164) and /128 for loopbacks, ideally carved out of a /64 reserved for that purpose.
How many /64 subnets are in a /48, /56 and /60?
The count is 2 to the power of the difference in prefix length. A /48 holds 2^16 = 65,536 /64s, a /56 holds 2^8 = 256, a /60 holds 16, and a /52 holds 4,096. Each /64 itself contains 2^64 ≈ 18.4 quintillion addresses, which is why IPv6 planning counts subnets, never hosts. The calculator shows both numbers exactly, even for extreme splits where they exceed what a normal number can store.
My ISP gives me a /56, a /60 or only a /64 — what can I do with each?
With a /56 delegated by DHCPv6-PD you have 256 /64s — one per VLAN with room to spare. A /60 gives 16, enough for a handful of segments. A single /64 announced by router advertisement cannot be subnetted for SLAAC; downstream networks then need ND proxy or NAT66 workarounds. In Japan, NTT FLET'S IPoE typically delegates a /56 when the line has Hikari Denwa (the home gateway then hands /60s downstream) and only a /64 via RA without it, which is why routers behind it often show a single LAN.
What is a nibble boundary and why does it matter?
A nibble is 4 bits — one hexadecimal digit. Prefix lengths that are multiples of 4 (/48, /52, /56, /60, /64) end exactly on a digit, so the subnet ID is visible in the address: in 2001:db8:abcd:12::/64 the 12 is subnet 18. With a /62 or /50 the boundary falls inside a digit, so neighbouring subnets share a character and are easy to misread. Reverse DNS also works per nibble in ip6.arpa, so delegating a non-nibble prefix requires several zones instead of one.
How should I number IPv6 subnets in a /48?
Give the 16-bit subnet ID structure, one nibble per level: for example the first digit for site or building, the second for zone or function, and the last two for the VLAN. A common trick is to write the VLAN number so it reads the same in hex, so VLAN 120 becomes 2001:db8:abcd:120::/64 — subnet 0x120, not 120, but instantly recognisable. Keep one /64 aside for loopbacks and point-to-point /127s, and leave gaps between groups so they can grow without renumbering.