IPv6 Converter
Expand or compress IPv6 addresses, detect address type, and view 16-bit group breakdown with hex, decimal, and binary values.
2001:db8::12001:0db8:0000:0000:0000:0000:0000:00010x20010db800000000000000000000000116-bit groups
2001819300100000000000010db835120000110110111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110000000000000001IPv6 Address Architecture (128-Bit Structure)
Defined by RFC 4291, an Internet Protocol Version 6 (IPv6) address is 128 bits in length, providing an astronomical address space of 2¹²⁸ (approximately 3.4 × 10³⁸ unique addresses). An address is conceptually divided into 8 groups of 16-bit blocks (often called hextets, quads, or chunks), separated by colons:
2001 : 0db8 : 85a3 : 0000 : 0000 : 8a2e : 0370 : 7334
RFC 5952 Standard Compression Rules
To maintain consistency across syslog records, firewall rules, and DNS records, the IETF published RFC 5952, which establishes mandatory canonical representation rules for IPv6:
- Omit Leading Zeros: Within each 16-bit hextet, leading zeros must be suppressed. For example,
:0042:becomes:42:, and:0000:becomes:0:. - Use Double Colon (::) for Longest Zero Run: A single contiguous sequence of two or more
:0:groups must be compressed to::. If there are multiple equal runs of zeros, compress the first one. - No Double Colon for Single Groups: A single zero group (e.g.
2001:db8:0:1::1) must not be written as2001:db8::1::1. - Lowercase Hexadecimal: Hexadecimal characters
athroughfmust always be written in lowercase.
Common IPv6 Address Scopes & Reserved Blocks
| Scope / Type | CIDR Prefix | Standard Format | Purpose & Description |
|---|---|---|---|
| Loopback | ::1/128 | ::1 | Equivalent to IPv4 127.0.0.1 (localhost) |
| Unspecified | ::/128 | :: | Equivalent to IPv4 0.0.0.0 (listening on all interfaces) |
| Global Unicast | 2000::/3 | 2001:db8::/32 | Publicly routable internet addresses assigned by RIRs |
| Unique Local (ULA) | fc00::/7 | fd00::/8 | Private local routing, similar to RFC 1918 private IPv4 |
| Link-Local | fe80::/10 | fe80::/64 | Auto-configured for single-hop neighbor discovery (NDP) |
| Multicast | ff00::/8 | ff02::1 | Packets delivered to all subscribed multicast group members |
| IPv4-Mapped | ::ffff:0:0/96 | ::ffff:192.0.2.1 | Represents legacy IPv4 addresses inside IPv6 system sockets |
Frequently Asked Questions
What is the difference between expanded and compressed IPv6 addresses?
An expanded IPv6 address shows all 8 16-bit groups (hextets) with 4 hexadecimal digits each, including leading zeros (e.g., 2001:0db8:0000:0000:0000:0000:0000:0001). A compressed address uses RFC 5952 rules to strip leading zeros and replace the longest consecutive run of all-zero groups with a double colon "::" (e.g., 2001:db8::1).
Why can the double colon "::" only appear once in an IPv6 address?
The double colon represents a variable number of contiguous 16-bit all-zero groups. If "::" were allowed multiple times in an address (e.g., 2001::1::2), a router or parser could not mathematically deduce how many zero groups belong to the first versus second occurrence.
What are the main IPv6 address scopes and prefixes?
Major IPv6 scopes defined by IETF include: Global Unicast (2000::/3, publicly routable on the Internet), Unique Local Address or ULA (fc00::/7, private internal networks similar to RFC 1918), Link-Local (fe80::/10, non-routable communication within a single local network segment), Loopback (::1/128), and Multicast (ff00::/8).
What is an IPv4-mapped IPv6 address?
An IPv4-mapped IPv6 address has the format ::ffff:A.B.C.D (or ::ffff:7f00:1 in hex). Operating system dual-stack networking kernels use this format to handle legacy IPv4 network sockets through standard IPv6 system call APIs.
How should IPv6 addresses be written in browser URLs?
Because colons are already used to specify port numbers in URIs (e.g. host:port), RFC 3986 mandates that IPv6 addresses must be enclosed within square brackets when used in URLs, such as http://[2001:db8::1]:8080/index.html.