IPv6 Compress/Expand
Compress (::) or expand IPv6 addresses and validate them.
What IPv6 Normalization Does
An IPv6 address is 128 bits written as eight groups of 16 bits separated by colons. The same address can be written several ways, since leading zeros in a group can be dropped and a run of all-zero groups can be collapsed to ::. This makes it hard to tell whether two address strings are the same. Normalization rewrites these varied forms into one canonical shape.
This tool validates your IPv6 address and produces two forms: the expanded form, where every group is padded to four digits, and the compressed form, which applies the :: compression rule. The compressed form follows the standard of collapsing only the single longest run of zero groups, and invalid addresses (more than one ::, or the wrong number of groups) are reported as errors.
Validation and conversion run entirely in your browser and the address you enter is never sent to a server, so it is safe to paste real infrastructure addresses.
How to Use
- Type an IPv6 address into the input field, for example 2001:db8::1. You can enter it in either compressed or expanded form.
- Read the compressed form (the short, human-friendly version) and the expanded form (with every group padded to four digits) from the result card.
- If you need an exact form for a config file or document, copy that representation. Invalid addresses come with an error message explaining which rule was broken.
Frequently Asked Questions
- How many times can :: appear in one address?
- Exactly once. The :: stands in for a run of zero groups, and if it appeared twice there would be no unique way to know how many zero groups each :: represents. This tool treats any address with more than one :: as invalid.
- Should I use the expanded or compressed form?
- The short compressed form is easier to read and write, and RFC 5952 recommends it as the canonical presentation. But where the shape must be uniform, such as string matching, sorting, or log comparison, the fully padded expanded form is easier to work with.
- Is 2001:db8::1 a real address I can use?
- The 2001:db8::/32 range is reserved for documentation and examples under RFC 3849. It is not routed on real networks, so it is great for demos and docs but must not be assigned in production.