IPv6 Subnet Calculator
Split an IPv6 prefix into subnets, find any one of them and plan its reverse DNS.
IPv6 prefix
Prefix details
Documentation (RFC 3849)
- Network (RFC 5952)
- 2001:
db8: abcd: : - Network, expanded
- 2001:
0db8: abcd: 0000: 0000: 0000: 0000: 0000 - First address
- 2001:
db8: abcd: : - Last address
- 2001:
db8: abcd: ffff: ffff: ffff: ffff: ffff - Last address, expanded
- 2001:
0db8: abcd: ffff: ffff: ffff: ffff: ffff - Fixed hex digits
- 2001:
0db8: abcd - Number of addresses
- 2^80 = 1,
208, 925, 819, 614, 629, 174, 706, 176 - /56 and /48 inside
- 256 × /56 · 1 × /48
- Address type
- Documentation (RFC 3849)Reserved for examples in books and documentation; it is never used on the real internet.
- Reverse DNS zone
- d.
c. b. a. 8. b. d. 0. 1. 0. 0. 2. ip6. arpa
- A /48 holds 65,536 /64 subnets — the usual assignment to a whole site or organisation.
- IPv6 has no broadcast address. In each subnet the first address (all interface-identifier bits zero) is the Subnet-Router anycast address (RFC 4291 §2.6.1), and the last one is an ordinary address.
Split into subnets
65,536 subnets of /64, each with 2^64 addresses; the subnet ID has 16 bits (4 hex digits).
| # | Subnet ID | Subnet | Last address |
|---|---|---|---|
| 1 | 0000 | 2001: | 2001: |
| 2 | 0001 | 2001: | 2001: |
| 3 | 0002 | 2001: | 2001: |
| 4 | 0003 | 2001: | 2001: |
| 5 | 0004 | 2001: | 2001: |
| 6 | 0005 | 2001: | 2001: |
| 7 | 0006 | 2001: | 2001: |
| 8 | 0007 | 2001: | 2001: |
| 9 | 0008 | 2001: | 2001: |
| 10 | 0009 | 2001: | 2001: |
| 11 | 000a | 2001: | 2001: |
| 12 | 000b | 2001: | 2001: |
| 13 | 000c | 2001: | 2001: |
| 14 | 000d | 2001: | 2001: |
| 15 | 000e | 2001: | 2001: |
| 16 | 000f | 2001: | 2001: |
Showing 16 of 65,536 subnets.
Downloads and copies list up to 65,536 subnets.
Unique local address (ULA) prefix generator
A private IPv6 /48 for a home lab, office or VPN, made the way RFC 4193 asks: fd followed by a random 40-bit Global ID, so two networks almost never pick the same prefix when they are joined later. The random numbers come from your browser.
About the IPv6 Subnet Calculator
Enter an IPv6 prefix such as 2001:db8:abcd::/48 and see everything you need to plan with it: the network in its short RFC 5952 form and fully expanded, the first and last address, the exact number of addresses and how many /64, /56 and /48 networks fit inside, what kind of address space it is (global unicast, unique local, link-local, documentation…) from IANA’s special-purpose registry, and the ip6.arpa zone to delegate for reverse DNS.
Then split it: choose a subnet size and the page lists the subnets with their subnet IDs, shows subnet number 300 (or hex ID 0x12b) at once, tells you which subnet holds an address, and downloads the whole list (up to 65,536 subnets) as text or CSV. The ULA generator makes a private fd00::/8 site prefix with a random 40-bit Global ID, as RFC 4193 describes. Everything is calculated in your browser.
How to use it
- Type a prefix with its length, for example
2001:db8:abcd::/48, or paste an interface address such as2001:db8::1/64(the host part is cleared and the page says so). Press Calculate. - Read the prefix details: the compressed and expanded network, the first and last address, the address count (2^80 for a /48), the /64 count and the address type.
- Under Split into subnets, pick the subnet size (/64 is the usual LAN size). The table lists the first subnets; Show more adds rows.
- To jump to one subnet, enter its number in Show subnet number (1 is the first) or its hex subnet ID such as
0x12b. To find where an address belongs, paste it into Which subnet holds this address? - Use Copy list, Download .txt or Download .csv for the subnet list, and Copy details for a summary of the prefix.
- For a private network, press Generate a ULA prefix, then Calculate this prefix to plan its /64s.
Examples
2001:db8:abcd::/48, subnet size /64, subnet number 300
65,536 subnets of /64 · subnet 300 = subnet ID 012b = 2001:db8:abcd:12b::/64 (2001:db8:abcd:12b:: to 2001:db8:abcd:12b:ffff:ffff:ffff:ffff)
Subnet IDs count from 0, so subnet 300 has the ID 299 = 0x12b, which becomes the fourth group of the address.
2001:db8:1234:5600::/56
2^72 addresses · 256 /64 subnets (5600 to 56ff in the fourth group) · reverse zone 6.5.4.3.2.1.8.b.d.0.1.0.0.2.ip6.arpa
2001:db8::/50
4 reverse DNS zones of /52: 0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa … 3.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa
ip6.arpa names have one label per hex digit, so a /50 cannot be one zone: it is delegated as the four /52 zones it contains.
2001:db8:0:1::/127
2 addresses: 2001:db8:0:1:: and 2001:db8:0:1::1 — RFC 6164 recommends /127 for links between routers
Common uses
- Planning VLANs, Wi-Fi networks and server subnets from the /48 or /56 your provider or registry assigned.
- Writing an addressing plan where every subnet ID is a hex digit group, such as 2001:db8:abcd:0100::/64 for building 1.
- Working out which ip6.arpa zones to ask your provider to delegate for reverse DNS.
- Creating a unique local prefix for a lab, a VPN such as WireGuard, or a home network that must not depend on the provider’s prefix.
How the numbers are worked out
An IPv6 address has 128 bits (RFC 4291). A prefix of length n fixes the first n bits, so it holds 2^(128 − n) addresses: a /64 has 2^64 (about 18.4 quintillion), a /48 has 2^80. Splitting a /n into subnets of /m gives 2^(m − n) subnets, and the subnet ID is the number written in the m − n bits between the two lengths: in a /48 split into /64s it is the fourth group of the address, 0000 to ffff.
The short form follows RFC 5952: lower-case hex, no leading zeros in a group, and the longest run of two or more zero groups replaced by :: (the first run when two are equally long). The expanded form writes all eight groups with four digits each, as some firewalls and spreadsheets need.
Prefix sizes you will meet
- /32 – a typical first allocation from a regional internet registry to a provider (65,536 /48s).
- /48 – the usual assignment to a site or organisation: 65,536 /64 subnets.
- /56 – common for home and small-office connections: 256 /64 subnets.
- /64 – one subnet (a LAN, VLAN or Wi-Fi network). Stateless address autoconfiguration (SLAAC) builds addresses from a 64-bit interface identifier, which is why longer prefixes are avoided on LANs (RFC 7421).
- /127 – a point-to-point link between two routers, as RFC 6164 recommends, with the Subnet-Router anycast address switched off on it.
- /128 – a single address: loopbacks, router IDs and host routes.
IPv6 has no broadcast address. The first address of each subnet (all interface-identifier bits zero) is the Subnet-Router anycast address (RFC 4291 §2.6.1).
Nibble boundaries and ip6.arpa
Reverse DNS for IPv6 lives under ip6.arpa, where an address is written as its 32 hex digits in reverse order, one label per digit (RFC 3596). A zone can therefore only start on a 4-bit (nibble) boundary: /48 is the zone of 12 digits, /56 of 14, /64 of 16. A prefix in between, such as a /50, is delegated as the zones of the next nibble boundary it contains (four /52 zones). Prefixes on nibble boundaries also keep addressing plans readable, because each subnet ID is a whole hex digit group.
Unique local addresses (ULA)
RFC 4193 sets aside fc00::/7 for private IPv6 networks. With the L bit set the prefix starts with fd, followed by a 40-bit Global ID that must be chosen at random, then a 16-bit subnet ID and the 64-bit interface ID. The random ID makes it very unlikely that two private networks use the same prefix, so they can be connected later (by a VPN or a merger) without renumbering. ULA addresses are not routed on the internet. The generator uses your browser’s cryptographic random number generator for the 40 bits.
Limitations
- Lists on the page show up to 1,024 subnets and downloads up to 65,536; any other subnet can still be shown with Show subnet number.
- The address type comes from IANA’s IPv6 special-purpose and unicast registries as built into this page; it says nothing about whether a prefix is announced on the internet.
- It plans equal-sized subnets. To fit subnets of different sizes into one block, use the VLSM Calculator.
Privacy
Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot.
Frequently asked questions
How many /64 subnets are in a /48?
65,536 (2^16): the 16 bits between /48 and /64 are the subnet ID, written as the fourth group of the address from 0000 to ffff. A /56 holds 256 /64s and a /60 holds 16.
Why is a /64 the standard IPv6 subnet?
Hosts build their own addresses with SLAAC from a 64-bit interface identifier, and other IPv6 features expect the same boundary, so a LAN with a longer prefix needs static addresses or DHCPv6. RFC 7421 explains the reasons.
Is there a broadcast address in IPv6?
No. IPv6 uses multicast instead, so the last address of a subnet is an ordinary one. The first address of each subnet is the Subnet-Router anycast address, which its routers answer; on /127 links RFC 6164 asks routers to switch it off.
Which subnet is number 1?
The first one, whose subnet ID is 0 (for a /48 split into /64s that is 2001:db8:abcd::/64). The page numbers subnets from 1 and also shows the hex subnet ID, which starts at 0; you can type either form.
What does “not on a nibble boundary” mean?
The prefix length is not a multiple of 4, so the prefix ends in the middle of a hex digit. That works for routing, but reverse DNS can only be delegated per hex digit, and addressing plans are harder to read. The page lists the ip6.arpa zones such a prefix needs.
Can two companies get the same ULA prefix?
Only by chance: with 40 random bits there are about 1.1 trillion possible /48s. That is why RFC 4193 says Global IDs must not be assigned sequentially or with well-known numbers — an easy prefix chosen by hand, such as fd00::/48, is far more likely to clash.