🔒 All processing happens in your browser. No data is sent to any server.
FREE

IPv6 Address Calculator

← All Tools
IPv6 Address
Examples

What is IPv6 Calculator?

IPv6 Calculator expands, compresses, and analyzes IPv6 addresses. Enter a compressed IPv6 address (like ::1 or 2001:db8::1) to see the full 128-bit expanded form, the address type (loopback, link-local, global unicast, multicast), prefix length, and network/host portions. Also converts between IPv6, its hex representation, and dual IPv4-mapped format (::ffff:192.168.1.1).

IPv6 is the 128-bit successor to IPv4 (32-bit), providing approximately 3.4 × 10^38 addresses — enough to assign every atom on Earth a unique address. Written as 8 groups of 4 hex digits separated by colons: 2001:0db8:0000:0000:0000:0000:0000:0001. Compression rules: leading zeros in each group can be omitted (0001 → 1), and consecutive all-zero groups can be replaced once with :: (2001:db8::1). The :: can appear only once in an address.

Special IPv6 addresses: ::1 (loopback, equivalent to 127.0.0.1). :: (unspecified, like 0.0.0.0). fe80::/10 (link-local, assigned automatically, non-routable — used for local link communication). fc00::/7 (unique local, like private IPv4 ranges). ff00::/8 (multicast). 2001:db8::/32 (documentation examples, like 192.0.2.0/24 in IPv4). Global unicast: 2000::/3 (the main public internet address space).

How to Use

  1. Enter an IPv6 address in any format — compressed (::1), full (0:0:0:0:0:0:0:1), or with CIDR (/64).
  2. Click 'Analyze' to see the expanded form, address type, and prefix/host split.
  3. Enter an IPv6 network (address + prefix length) to see the network range.
  4. Use 'Compress' to find the shortest valid representation of a full IPv6 address.
  5. Toggle 'IPv4-mapped' to see the ::ffff:192.168.1.1 format for IPv4 compatibility.

Examples

Expand loopback

Result: ::1 → 0000:0000:0000:0000:0000:0000:0000:0001 → Type: Loopback

Network analysis

Result: 2001:db8::1/64 → Network: 2001:db8::/64, Host: ::1, Range: 2001:db8:: to 2001:db8::ffff:ffff:ffff:ffff

Compress address

Result: 2001:0db8:0000:0000:0000:0000:0000:0001 → 2001:db8::1

Frequently Asked Questions

What is the difference between IPv4 and IPv6?

IPv4 (32-bit): 4.3 billion addresses, dotted-decimal notation (192.168.1.1), uses NAT to extend address space, has broadcast, requires manual or DHCP configuration. IPv6 (128-bit): 340 undecillion addresses (effectively unlimited), colon-hex notation (2001:db8::1), no NAT needed (end-to-end addressing), no broadcast (uses multicast instead), has Stateless Address Autoconfiguration (SLAAC — devices auto-configure without DHCP), built-in IPsec support. As of 2026, most major internet services and networks support IPv6 — roughly 40-50% of Google traffic is IPv6.

What does /64 mean in IPv6?

The /64 notation is CIDR prefix length — the number of bits in the network portion. For IPv6, /64 is the standard subnet size for most networks: the first 64 bits are the network prefix (assigned by ISP or network admin), and the last 64 bits are the interface identifier (host portion). Interface IDs are often derived from the MAC address via EUI-64 or randomly generated (RFC 7217). A /64 subnet contains 2^64 = 18.4 quintillion addresses — enough for every device in a network. ISPs typically assign /48 or /56 to customers, who then subnet into /64s.

How does IPv6 address autoconfiguration (SLAAC) work?

Stateless Address Autoconfiguration (SLAAC, RFC 4862): a device generates its own IPv6 address without a DHCP server. Process: (1) Device starts with link-local address (fe80::) derived from MAC address or random. (2) Device sends Router Solicitation (RS) to ff02::2 (all-routers multicast). (3) Router responds with Router Advertisement (RA) containing the network prefix (e.g., 2001:db8::/64). (4) Device combines the prefix with its EUI-64 or random interface ID to form its global address. (5) Duplicate Address Detection (DAD) confirms the address is unique on the link.

What is a link-local IPv6 address?

Link-local addresses (fe80::/10) are automatically assigned to every IPv6-capable interface and are valid only on the local network segment (not routed beyond the link). Every IPv6 interface has a link-local address, even if it has no global address. Used for: neighbor discovery (ARP replacement in IPv6), router discovery (find default gateway), and DHCPv6. When you see fe80:: addresses in ifconfig/ip addr output, they're link-local. To ping a link-local address: ping6 fe80::1%eth0 — you must specify the interface with % because link-local addresses are ambiguous without it.

How do I convert IPv4 to IPv6?

IPv4-mapped IPv6 addresses represent IPv4 addresses within IPv6 space: the format is ::ffff:IPv4_address or ::ffff:0:IPv4_address. Example: 192.168.1.1 → ::ffff:192.168.1.1 or ::ffff:c0a8:0101 (hex). Used in dual-stack applications that bind to IPv6 sockets but accept IPv4 connections. IPv4-compatible addresses (::IPv4) are deprecated. For translation between IPv4-only and IPv6-only networks: NAT64/DNS64 (RFC 6146/6147) — the translator maps IPv6 addresses to IPv4 destinations, allowing IPv6-only hosts to reach IPv4 servers.

Related Tools