IPv6 Address Types and Notation
Key Takeaways
- IPv6 addresses are 128-bit values written as eight hexadecimal hextets separated by colons, four hex digits per hextet.
- Zero compression with the double colon may be used exactly once per address, and leading zeros within a hextet may be dropped.
- Global unicast, unique local, link-local, multicast, loopback, and unspecified addresses each have a distinct prefix and purpose.
- IPv6 has no broadcast; multicast and Neighbor Discovery Protocol replace ARP, broadcast, and many DHCP behaviors from IPv4.
- Link-local addresses always begin with fe80 and exist automatically on every IPv6 interface, but cannot route off the local segment.
IPv6 Notation
IPv6 uses 128-bit addresses written as eight groups of four hexadecimal digits. Each group is a hextet and hexadecimal digits run 0-9 and a-f. Because 128 bits is too long to write in full, two compression rules shorten addresses, and the exam tests whether you apply them legally.
| Full form | Compressed | Notes |
|---|---|---|
| 2001:0db8:0000:0000:0000:0000:0000:0001 | 2001:db8::1 | Leading zeros and one zero run removed |
| fe80:0000:0000:0000:0202:b3ff:fe1e:8329 | fe80::202:b3ff:fe1e:8329 | Link-local example |
| 0000:0000:0000:0000:0000:0000:0000:0001 | ::1 | Loopback |
| 0000:0000:0000:0000:0000:0000:0000:0000 | :: | Unspecified |
Compression Rules
- Remove leading zeros in each hextet (but keep at least one digit; 0000 becomes 0, not blank).
- Replace one continuous run of all-zero hextets with ::.
- Use :: only once per address, because two would make the zero count ambiguous.
- When two zero runs are equal length, convention compresses the leftmost.
| Invalid notation | Why it fails |
|---|---|
| 2001::db8::1 | Uses :: twice |
| 2001:db8:1 | Too few hextets and no :: |
| 2001:db8:zzzz::1 | z is not a hex digit |
The most-tested rule is the single double-colon: an address may not use :: more than once, so 2001::db8::1 is always wrong.
IPv6 Address Types
Unlike IPv4, the leading bits reliably identify the type because IPv6 has no class system to retire.
| Type | Prefix | Purpose |
|---|---|---|
| Global unicast | 2000::/3 | Internet-routable unicast |
| Unique local | fc00::/7 (usually fd00::/8) | Private internal addressing |
| Link-local | fe80::/10 | Local segment only |
| Multicast | ff00::/8 | One-to-many group delivery |
| Loopback | ::1/128 | Local host testing |
| Unspecified | ::/128 | No address yet assigned |
| Documentation | 2001:db8::/32 | Examples and training only |
Global unicast addresses such as 2606:4700:4700::1111 start with a 2 or 3. Unique local addresses you build internally start with fd. Every interface also auto-generates an fe80:: link-local address whether or not routing is configured.
Neighbor Discovery and No Broadcast
IPv6 eliminates broadcast entirely. The Neighbor Discovery Protocol (NDP) rides on ICMPv6 to handle address resolution, router discovery, and Duplicate Address Detection (DAD). A frequent operational mistake is blocking all ICMPv6 the way teams once blocked ICMP ping; doing so breaks NDP and Path MTU Discovery, so IPv6 connectivity silently fails.
| IPv4 mechanism | IPv6 replacement |
|---|---|
| ARP | Neighbor Discovery (NDP) |
| Broadcast | Multicast or NDP |
| DHCP gateway option | Router Advertisements (RA) |
| 169.254.0.0/16 APIPA | fe80::/10 link-local, always present |
PBQ-Style Thinking
Scenario: a host has only an fe80:: address and cannot reach a remote subnet. That link-local address is normal and expected, but it is insufficient for routed traffic. Check that Router Advertisements are arriving, the global prefix is being assigned (via SLAAC or DHCPv6), the VLAN is correct, and a default route exists.
Scenario: a firewall blocks all ICMPv6 because the team treated it like optional ping. Neighbor Discovery and Path MTU Discovery break, so connections hang or never form. The fix is to permit the required ICMPv6 message types and filter only the unsafe ones, never a blanket deny.
Quick Recognition
| Address | Classification |
|---|---|
| 2001:db8::10 | Documentation prefix |
| 2606:4700:4700::1111 | Global unicast |
| fd12:3456:789a::1 | Unique local |
| fe80::1 | Link-local |
| ff02::1 | Multicast (all nodes) |
| ::1 | Loopback |
| :: | Unspecified |
The pair to memorize for fast PBQ scanning: fe80 means link-local, fd means unique local. Confusing these two private-looking prefixes is the classic IPv6 trap.
How Hosts Get IPv6 Addresses
N10-009 expects you to distinguish the two automatic configuration paths. Stateless Address Autoconfiguration (SLAAC) lets a host build its own global address by combining the prefix advertised in a Router Advertisement with an interface identifier it generates locally. Because the router never tracks which hosts took which addresses, SLAAC is stateless. DHCPv6, by contrast, can hand out addresses statefully and is the path used when an administrator wants central control or needs to push options that Router Advertisements do not carry. Many networks run both: SLAAC or DHCPv6 for the address, with DHCPv6 supplying DNS details.
A host with only an fe80 address received neither a usable RA nor a DHCPv6 lease, which is exactly why it cannot route.
The Special Addresses to Recognize
A handful of fixed IPv6 addresses appear repeatedly. ff02::1 is the all-nodes multicast group on the local link, the rough analog of an IPv4 broadcast. ff02::2 is the all-routers group. ::1 is loopback and :: is the unspecified address a host uses as a source while still performing Duplicate Address Detection. The documentation prefix 2001:db8::/32 exists so writers can show examples without colliding with real global space, which is why it appears throughout study material but never on a production interface.
Comparing IPv4 and IPv6 Behavior
Many IPv6 troubleshooting questions are really IPv4 habits applied incorrectly. Where IPv4 used a broadcast to find a MAC address through ARP, IPv6 multicasts a Neighbor Solicitation and receives a Neighbor Advertisement. Where IPv4 relied on a DHCP server to deliver the default gateway, IPv6 normally learns the gateway from Router Advertisements. And where an IPv4 client falls back to a 169.254 APIPA address on DHCP failure, an IPv6 interface always carries an fe80 link-local address regardless of any DHCPv6 outcome, so the presence of a link-local address proves nothing about global reachability.
Keeping these mappings straight prevents the most common IPv6 mistakes the exam tests.
Which IPv6 address is the loopback address?
An IPv6 address begins with fe80. What type is it most likely?
Which statement about IPv6 notation is correct?