Read an IPv6 address

Long hex, a :: gap, maybe a %zone suffix — expand it, compress it canonically, and see what kind of address it actually is.

Tools used in this guide

The job

IPv6 addresses appear in logs and firewall rules in every shorthand at once — leading zeros dropped, runs collapsed to ::, an embedded IPv4 tail. Expanding to the full eight groups and compressing canonically answers whether two spellings are the same address.

How to do it

Paste the address — full form, :: compressed, with an IPv4 tail or a %eth0-style zone — and read the expanded form, the RFC 5952 compressed form, and the classification (loopback, link-local, multicast, unique-local, documentation, global…).

  • The compressed form is the canonical spelling — copy it when writing config or documentation.
  • A %zone suffix means link-local addressing on a specific interface; it is kept and reported, not stripped.

Worked example

Pasting 2001:0db8:0000:0000:0000:ff00:0042:8329 expands to the full eight groups and compresses to 2001:db8::ff00:42:8329 — and the classification flags it as documentation-space, explaining why it never routed.

Limits

This inspects one address — it does not compute subnets, ranges or CIDR prefixes (the subnet calculator does IPv4 CIDR math). Classification names the common reserved blocks, not a routing verdict; a 'global' range can still be filtered by policy.