IPv6 Subnet Calculator

Enter an IPv6 address and prefix to get the compressed and expanded forms, the address range, the total addresses and /64 count, the ip6.arpa reverse zone, and split a prefix into smaller ones.

IPv6 addresses are long, and the shorthand rules make them easy to misread. Paste an address and prefix such as 2001:db8:abcd::/48 and this calculator returns both the RFC 5952 compressed form and the fully expanded 128-bit form, the first and last address in the range, the total number of addresses, and how many /64 subnets the prefix contains.

It also generates the ip6.arpa reverse-DNS zone for the prefix and can split a prefix into equal smaller prefixes: the IPv6 equivalent of carving a block into per-site or per-subnet ranges.

Common prefix sizes
Compressed
2001:db8::
Expanded
2001:0db8:0000:0000:0000:0000:0000:0000
Prefix / Network
2001:db8::
Address Range
2001:db8:: – 2001:db8:0:ffff:ffff:ffff:ffff:ffff
Total Addresses
1,208,925,819,614,629,174,706,176 (2^80)
Number of /64s
65,536
CIDR Notation
2001:db8::/48
Address Type
Documentation

Additional details

ip6.arpa
0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa
Integer ID
42540766411282592856903984951653826560
Hex ID
0x20010db8000000000000000000000000

Subdivide this network

Loading...

IPv6 notation and zero compression

An IPv6 address is 128 bits written as eight groups of 16 bits (four hex digits each), separated by colons, for example 2001:0db8:0000:0000:0000:0000:0000:0001.

Two rules shorten that. First, leading zeros within any group are dropped, so 0db8 becomes db8 and 0000 becomes 0. Second, a single run of consecutive all-zero groups can be replaced by a double colon (::), but only once per address, since more than one would be ambiguous. Applying both gives 2001:db8::1.

RFC 5952 defines the canonical form: lowercase hex, no unnecessary leading zeros, and :: used to compress the longest run of zero groups (the first run, if two runs tie). The calculator always outputs this canonical form so addresses compare cleanly.

Prefix sizes and standard allocations

IPv6 prefixes are written just like IPv4 CIDR, an address followed by /n, but the common sizes are different. A /64 is the standard size for a single subnet, a /48 is a typical allocation for an organisation or site, and a /56 is commonly handed to residential connections.

The /64 boundary matters because Stateless Address Autoconfiguration (SLAAC) uses the lower 64 bits as an interface identifier. Making a subnet smaller than /64 breaks SLAAC, so /64 is treated as the smallest practical subnet even though there is address space to go further. A /48 therefore contains 65,536 /64 subnets, plenty to segment without ever subdividing below /64.

Why there's no broadcast or NAT in IPv6

IPv6 has no broadcast address. Functions that relied on broadcast in IPv4 (neighbour discovery, router advertisement) use multicast instead, which reaches only the interested hosts rather than every device on the segment. That is why an IPv6 subnet has no reserved broadcast address to subtract from its usable count.

IPv6 was also designed with enough address space for globally unique addressing end to end, so Network Address Translation (NAT) is not needed to stretch a scarce pool the way it is in IPv4. Hosts can hold globally routable addresses directly, with firewalls, not address translation, providing the security boundary.

IPv6 address types

IPv6 reserves several ranges for specific roles. Knowing which block an address falls in tells you how far it can travel and what it is for:

  • Global unicast (2000::/3): publicly routable addresses, the IPv6 equivalent of a public IPv4 address.
  • Unique local, ULA (fc00::/7): private addressing for internal use, not routed on the public internet.
  • Link-local (fe80::/10): valid only on a single link; auto-configured on every interface and used for neighbour discovery.
  • Multicast (ff00::/8): one-to-many delivery, which replaces IPv4 broadcast.
  • Loopback (::1): the host itself, equivalent to 127.0.0.1.
  • Documentation (2001:db8::/32): reserved for examples and docs, so it is safe to use in write-ups without clashing with real space.

Need IP space for your project?

Serverside dedicated servers come with full root access and generous IPv6 allocations alongside IPv4, on a network with always-on DDoS protection, plenty of prefix to segment across sites and services.

Frequently asked questions

Two rules apply. Leading zeros inside each 16-bit group are dropped (0db8 → db8). Then a single run of consecutive all-zero groups can be replaced with a double colon (::). The :: may appear only once in an address, because two of them would make the number of omitted groups ambiguous. So 2001:0db8:0000:0000:0000:0000:0000:0001 compresses to 2001:db8::1.

More tools