IPv6 Address Expander
NewExpand shorthand IPv6 addresses with :: zero-compression to their full 8-group form, or compress a full address back to its shortest valid representation.
IPv6 addresses have 8 groups of 4 hex digits. A double colon (::) may appear once, replacing one or more consecutive all-zero groups. Expanding fills those groups back in and pads each to 4 digits; compressing removes leading zeros in each group and replaces the longest run of zero groups with ::.
Frequently Asked Questions
What does the :: shorthand actually mean?
A double colon replaces one or more consecutive groups of all-zero hex digits, and can appear at most once in an address (since it would otherwise be ambiguous how many zero groups it stands for). For example, "2001:db8::1" expands to "2001:0db8:0000:0000:0000:0000:0000:0001".
Why does compression sometimes not add a :: at all?
The :: shorthand is only used to replace the single longest run of consecutive all-zero groups, and only if that run is at least 2 groups long. If there's no run of 2+ zero groups, the address is already in its shortest form without :: .
What happens if I enter an invalid IPv6 address?
The tool validates the group count (must total 8), the hex format of each group (1-4 hex digits), and that :: appears at most once — if any check fails, it shows an explanation instead of a result.
Does expanding pad each group to 4 digits?
Yes — expansion always produces exactly 8 groups of 4 lowercase hex digits each, zero-padded on the left, which is the canonical "fully expanded" representation used in RFCs and documentation.