IPv6 Subnet Calculator

Free IPv6 address tool. Expand and compress addresses, classify them (link-local, unique local, multicast, global unicast), and calculate subnet ranges.


Subnet range

How IPv6 addressing works

An IPv6 address is 128 bits, written as eight groups of four hex digits separated by colons. Because that's a lot to write out, leading zeros in each group can be dropped (0db8 becomes db8), and one run of consecutive all-zero groups can be collapsed to ::. A CIDR-style prefix, like /32 or /64, marks how many of those 128 bits are fixed as the network portion β€” exactly the same idea as IPv4 CIDR notation, just on a much bigger address space.

Worked example

The address 2001:0db8:0000:0000:0000:0000:0000:0001 compresses to 2001:db8::1. For the subnet 2001:db8::/32, the network address is 2001:db8::, the last address in the range is 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff, and the subnet contains 79,228,162,514,264,337,593,543,950,336 addresses in total (2⁹⁢, since 128 βˆ’ 32 = 96 host bits remain).

Frequently asked questions

What does "::" mean in an IPv6 address?

IPv6 addresses have eight 16-bit groups written in hex, e.g. 2001:0db8:0000:0000:0000:0000:0000:0001. A double colon ("::") compresses one consecutive run of all-zero groups, so that address can be written as 2001:db8::1. Only one "::" is allowed per address, since otherwise the number of compressed groups would be ambiguous.

What is the difference between link-local, unique local, and global unicast addresses?

Link-local addresses (fe80::/10) are only valid on a single local network segment and aren't routed anywhere else. Unique local addresses (fc00::/7) are IPv6's equivalent of private IPv4 ranges like 192.168.0.0/16 β€” usable within an organization but not routed on the public internet. Global unicast addresses are publicly routable, the IPv6 equivalent of a public IPv4 address.

How many addresses are in an IPv6 subnet?

A subnet with a /n prefix has 2^(128βˆ’n) addresses. A /64 β€” the standard size for a single LAN segment β€” has 2⁢⁴ addresses (about 18.4 quintillion), far more than any network could exhaust. A /32, often assigned to an entire ISP, has 2⁹⁢ addresses.

Why is IPv6 written in hexadecimal instead of decimal like IPv4?

IPv6 addresses are 128 bits long β€” four times longer than IPv4's 32 bits β€” and writing that many bits in decimal dotted notation would be unreadably long. Hex groups pack 16 bits into 4 characters each, keeping the address to a more manageable eight groups.