IPv6 Subnet Calculator

Split any IPv6 prefix into subnets with counts and child nets.

Technology and NetUpdated 2026-10-111 min read
IPv6 Subnet Calculator
Full hex form; :: once at most, no embedded IPv4.
Subnets
...
Per subnet...
Second child...

What it does

IPv6 subnets split prefixes by bit count: carving a /48 into /64s adds 16 subnet bits for 65,536 networks, each holding 2^64 addresses. Powers of two price every split with no remainder math.

The tool above takes a parent address with old and new prefix lengths. It returns subnet count, addresses per subnet, and the second child network. The default 2001:db8:abcd:: from /48 to /64 gives 65,536 subnets of 18,446,744,073,709,551,616 addresses with 2001:db8:abcd:1::/64 second.

Rules follow the addressing architecture with registry guidance beside it: 128 bit hex in eight groups, one :: compression at most, prefix lengths counting leftmost bits. Standard LANs stay /64 for stateless autoconfiguration, and IPv6 keeps no broadcast address.

Leading zeros drop per group while case never matters. Embedded IPv4 tails stay out of this page; write full hex form for those ranges.

How to use

  1. Type the parent address in hex form.
  2. Type the parent prefix length.
  3. Type the longer new prefix length.
  4. Read subnet count first, size beside it.
  5. Use the second child as a numbering pattern.
  6. Keep LANs at /64 for SLAAC.

Formula

Subnets = 2^(new minus old). Addresses each = 2^(128 minus new). Child = parent net + index x 2^(128 minus new).
prefix
Leftmost bits that define the network.
/64
Standard LAN size with SLAAC support.
::
One compression of zero groups at most.

Big integer math carries all 128 bits exactly. First child equals the parent network; the page prints the second as the pattern.

Worked example

Example: /48 to /64

Defaults: 2001:db8:abcd::, old 48, new 64.

  1. New bits: 64 minus 48 = 16.
  2. Subnets: 2^16 = 65,536.
  3. Each: 2^(128 minus 64) = 2^64 addresses.
  4. Parent net keeps top 48 bits.
  5. Second child adds one /64 step: 2001:db8:abcd:1::/64.
  6. Tool shows counts with the child pattern.

Reference table

Checked splits
SplitSubnetsEach
/48 to /6465,53618,446,744,073,709,551,616
/32 to /4865,5361,208,925,819,614,629,174,706,176
/64 to /7225672,057,594,037,927,936
Loopback ::1Single /1281 address
Specials::, ::1, FE80::/10, FF00::/8Once-only :: rule

Limits

  • Hex form only; embedded IPv4 rejected.
  • Counts subnets, not routing policy.
  • Allocation floors ignored.
  • 128 bit math; /129 never exists.

Common mistakes

  • Using :: twice in one address.
  • Counting broadcast like IPv4.
  • Carving LANs past /64 with SLAAC on.
  • New prefix shorter than parent.
  • Reading hex letters as decimal.

Try it yourself

Quick checks. Answers sit tucked under each question.

/32 to /48?

65,536 subnets.

/64 to /72?

256 subnets of 72,057,594,037,927,936.

New shorter than parent?

Rejected: new prefix must exceed parent.

Questions

Default split?

65,536 /64s from one /48.

Addresses per /64?

2^64: 18,446,744,073,709,551,616.

Why /64 LANs?

Stateless autoconfiguration expects 64 host bits.

Broadcast address?

None in IPv6; multicast replaces it.

:: rules?

Once at most, 1 to 4 hex digits per group, 8 groups.

IPv4 page versus this?

That masks 32 bit dotted quads; this prefixes 128 bit hex.

Sources

How this page was checked. The formula above was matched against the cited sources, and the worked example was run through the tool on this page before publishing. If you spot an error, contact us so we can fix it and note the correction.