| Expanded (full) | 2001:0db8:0000:0000:0000:0000:0000:0001 |
| Compressed (RFC 5952) | 2001:db8::1 |
| Groups (hextets) | 2001 : db8 : 0 : 0 : 0 : 0 : 0 : 1 |
| Type | Global unicast (2000::/3) |
IPv6 expand/compress runs entirely in your browser — nothing is uploaded.
Expand or compress an IPv6 address, free. IPv6 addresses (RFC 4291) are 128 bits written as eight groups of four hex digits, but they're usually abbreviated — leading zeros dropped and one run of zero groups collapsed to ::. This tool expands an abbreviated IPv6 address to its full eight-group form, compresses a full address to the canonical short form defined by RFC 5952, validates it and reports its type — entirely in your browser.
It converts between the full and compressed IPv6 forms and applies the RFC 5952 canonical rules, so addresses you store, compare or log are unambiguous and consistently formatted. 100% free, no registration, and complete privacy — everything runs locally in your browser, so your data never touches a server.
Pads every group to four hex digits and writes all eight groups, e.g. 2001:db8::1 → 2001:0db8:0000:0000:0000:0000:0000:0001.
Collapses the longest run of zero groups to :: and strips leading zeros to produce the canonical short form.
Identifies global unicast (2000::/3), link-local (fe80::/10), unique-local (fc00::/7) and the unspecified address.
Parsing runs locally in your browser; nothing you enter is uploaded or stored.
IPv4 CIDR breakdown
First/last IP of a block
IPv4 to decimal, hex, binary
Restore the dropped leading zeros in each group and replace :: with the right number of 0000 groups so there are eight groups total. For example fe80::1 expands to fe80:0000:0000:0000:0000:0000:0000:0001. This tool does it automatically.
RFC 5952 defines a single recommended text form: lowercase hex, no leading zeros in a group, and the longest run of zero groups (at least two) compressed to :: — appearing only once. Storing addresses in this form makes string comparison reliable.
Because :: stands for 'one or more groups of zeros', allowing it twice would be ambiguous — you couldn't tell how many zero groups each :: represents. RFC 5952 requires a single ::.
The high bits decide scope: fe80::/10 is link-local, fc00::/7 is unique-local, 2000::/3 is global unicast and :: is the unspecified address. The tool flags these for you.
No. Expansion and compression happen entirely in your browser; nothing you type leaves your device.
We use cookies for analytics and personalized ads to help keep these tools free. Until you accept, ads stay non-personalized and analytics cookies are off. See our Privacy Policy.