IPv6 Prefix Splitter

Split an IPv6 prefix into equal sub-prefixes: the subnet count, the first and last blocks, and a CSV export of the full list. The output is capped so large splits never freeze the tab.

Prefix to split

Address and prefix length, for example 2001:db8:abcd::/48.

Must be longer than the parent prefix.

Rows generated before the list is truncated. Default 4,096.

Export

4096 of 65536 subnets (truncated)

The export contains the 4,096 subnets that were generated. Raise the row limit if you need more, but a /48 into /64s is 65,536 rows.

Split summary

Parent prefix
2001:db8:abcd::/48

2^80 = 1,208,925,819,614,629,174,706,176 in total

Sub-prefix
/64

18446744073709551616 addresses each

Number of subnets
65536

2^16 blocks

Rows generated
4,096

Truncated at the limit of 4,096

First subnet
2001:db8:abcd::/64
Last subnet
2001:db8:abcd:fff::/64

Last row generated, not the last block

Output truncated at the row limit16 bits borrowed from the host part

Subnets

First 8 and last 4 — the full list is in the export

#SubnetLast addressAddresses
02001:db8:abcd::/642001:db8:abcd:0:ffff:ffff:ffff:ffff18446744073709551616
12001:db8:abcd:1::/642001:db8:abcd:1:ffff:ffff:ffff:ffff18446744073709551616
22001:db8:abcd:2::/642001:db8:abcd:2:ffff:ffff:ffff:ffff18446744073709551616
32001:db8:abcd:3::/642001:db8:abcd:3:ffff:ffff:ffff:ffff18446744073709551616
42001:db8:abcd:4::/642001:db8:abcd:4:ffff:ffff:ffff:ffff18446744073709551616
52001:db8:abcd:5::/642001:db8:abcd:5:ffff:ffff:ffff:ffff18446744073709551616
62001:db8:abcd:6::/642001:db8:abcd:6:ffff:ffff:ffff:ffff18446744073709551616
72001:db8:abcd:7::/642001:db8:abcd:7:ffff:ffff:ffff:ffff18446744073709551616
… 4084 more rows …
40922001:db8:abcd:ffc::/642001:db8:abcd:ffc:ffff:ffff:ffff:ffff18446744073709551616
40932001:db8:abcd:ffd::/642001:db8:abcd:ffd:ffff:ffff:ffff:ffff18446744073709551616
40942001:db8:abcd:ffe::/642001:db8:abcd:ffe:ffff:ffff:ffff:ffff18446744073709551616
40952001:db8:abcd:fff::/642001:db8:abcd:fff:ffff:ffff:ffff:ffff18446744073709551616

Alignment

Every block is aligned to its own prefix boundary

The first subnet starts at the parent network address, each step adds exactly 2^64 addresses, and the last subnet ends where the parent block ends. Nothing drifts, and no result can fall outside the parent.

Frequently asked

How many /64s are in a /48?
A /48 into /64s gives 2^16, which is 65,536 subnets. That is the standard site-to-VLAN breakdown: the /48 is the site, and each of its 65,536 /64s can be a separate link.
Why does the tool show fewer subnets than I expected?
Large splits are capped at a few thousand rows so the browser stays responsive. The subnet count is always exact and the page says when the list was truncated; the CSV export contains every subnet that was generated within the cap.
Do the subnets stay inside the parent prefix?
Yes. The split starts at the parent network address and steps by the size of the new prefix, so every result is aligned and contiguous and the last subnet ends exactly where the parent block ends.
What happens if the new prefix is shorter?
A new prefix that is not longer than the original produces a single block rather than a split, because there is nothing to divide. Use the subnet calculator if you want the geometry of the parent instead.

Next