1.6 IPv6 Addressing and Prefix
Key Takeaways
- IPv6 addresses are 128 bits long, written as eight groups of four hexadecimal digits separated by colons.
- Global unicast addresses (2000::/3) are the IPv6 equivalent of public IPv4 addresses.
- Link-local addresses (FE80::/10) are auto-configured and used for local communication on a single link.
- EUI-64 creates the interface ID from a device's MAC address by inserting FFFE in the middle and flipping the 7th bit.
- IPv6 does not use broadcast—it uses multicast (FF00::/8) and anycast instead.
IPv6 Addressing and Prefix
IPv6 was developed to solve IPv4 address exhaustion. With 128-bit addresses, IPv6 provides approximately 340 undecillion (3.4 × 10^38) unique addresses—enough for every grain of sand on Earth to have its own IP.
IPv6 Address Format
An IPv6 address is 128 bits long, written as eight groups of four hexadecimal digits, separated by colons:
Full format: 2001:0DB8:0000:0000:0000:0000:0000:0001
IPv6 Abbreviation Rules
Rule 1: Leading zeros in each group can be removed
2001:0DB8:0000:0000:0000:0000:0000:0001
→ 2001:DB8:0:0:0:0:0:1
Rule 2: One set of consecutive all-zero groups can be replaced with :: (double colon)
2001:DB8:0:0:0:0:0:1
→ 2001:DB8::1
Important: You can only use :: once in an address. Using it twice would create ambiguity about how many zero groups each :: represents.
Abbreviation Examples
| Full Address | Abbreviated |
|---|---|
| 2001:0DB8:0000:0000:0000:0000:0000:0001 | 2001:DB8::1 |
| FE80:0000:0000:0000:0210:A4FF:FE01:0239 | FE80::210:A4FF:FE01:239 |
| FF02:0000:0000:0000:0000:0000:0000:0001 | FF02::1 |
| 0000:0000:0000:0000:0000:0000:0000:0001 | ::1 (loopback) |
| 0000:0000:0000:0000:0000:0000:0000:0000 | :: (unspecified) |
IPv6 Address Types
Global Unicast Addresses (GUA)
Range: 2000::/3 (begins with 2 or 3)
Global unicast addresses are the IPv6 equivalent of public IPv4 addresses. They are globally routable on the internet.
Structure of a /64 GUA:
| Bits | Field | Description |
|---|---|---|
| 48 | Global routing prefix | Assigned by ISP/RIR |
| 16 | Subnet ID | Assigned by the organization |
| 64 | Interface ID | Identifies the host on the subnet |
On the Exam: The standard subnet prefix length for IPv6 is /64. This gives 64 bits for the interface ID, supporting 2^64 addresses per subnet (18.4 quintillion).
Link-Local Addresses
Range: FE80::/10 (always starts with FE80)
Link-local addresses are automatically configured on every IPv6-enabled interface. They are used for:
- Communication on the local link (not routable beyond the local network segment)
- Neighbor Discovery Protocol (NDP) — IPv6's replacement for ARP
- Router discovery
- Next-hop addresses in routing tables
Key Characteristics:
- Automatically generated (no configuration required)
- Not routable across routers
- Required on every IPv6-enabled interface
- Used as the source address for NDP messages
- Routers use link-local addresses as next-hop addresses
Unique Local Addresses (ULA)
Range: FC00::/7 (typically FD00::/8 in practice)
Unique local addresses are the IPv6 equivalent of RFC 1918 private addresses. They are:
- Routable within the organization
- Not routable on the public internet
- Useful for internal communication that doesn't need internet access
Multicast Addresses
Range: FF00::/8 (starts with FF)
IPv6 does not have broadcast addresses. Instead, it uses multicast to send traffic to multiple destinations.
Important Multicast Addresses:
| Address | Scope | Description |
|---|---|---|
| FF02::1 | Link-local | All nodes (like IPv4 broadcast) |
| FF02::2 | Link-local | All routers |
| FF02::5 | Link-local | All OSPF routers |
| FF02::6 | Link-local | All OSPF DRs |
| FF02::9 | Link-local | All RIPng routers |
| FF02::A | Link-local | All EIGRP routers |
| FF02::1:FF00:0/104 | Link-local | Solicited-node multicast |
On the Exam: Know that FF02::1 is "all nodes" and FF02::2 is "all routers." These are the most commonly tested multicast addresses.
Anycast Addresses
An anycast address is a unicast address assigned to multiple devices. When a packet is sent to an anycast address, it is delivered to the nearest device (based on routing metrics) with that address.
Use cases: Load balancing, content delivery networks, DNS anycast
Loopback Address
::1 (0000:0000:0000:0000:0000:0000:0000:0001)
Equivalent to IPv4's 127.0.0.1. Used to test the local IPv6 stack.
Unspecified Address
:: (all zeros)
Equivalent to IPv4's 0.0.0.0. Used as a source address when a device doesn't yet have an address (e.g., during DHCP).
EUI-64 (Extended Unique Identifier 64-bit)
EUI-64 is a method for automatically generating the 64-bit Interface ID portion of an IPv6 address from a device's 48-bit MAC address.
EUI-64 Process
-
Split the MAC address in half
- MAC: 00:1A:2B:3C:4D:5E → 00:1A:2B | 3C:4D:5E
-
Insert FFFE in the middle
- 00:1A:2B:FF:FE:3C:4D:5E
-
Flip the 7th bit (Universal/Local bit) of the first octet
- 00 in binary: 0000 0000 → flip 7th bit → 0000 0010 = 02
- Result: 02:1A:2B:FF:FE:3C:4D:5E
-
Convert to IPv6 notation
- Interface ID: 021A:2BFF:FE3C:4D5E
Full address example (with prefix 2001:DB8:1:1::/64):
2001:DB8:1:1:021A:2BFF:FE3C:4D5E
On the Exam: EUI-64 questions are common. Remember the three steps: split, insert FFFE, flip the 7th bit. Practice converting MAC addresses to EUI-64 interface IDs.
IPv6 Configuration on Cisco Devices
Router(config)# ipv6 unicast-routing ! Enable IPv6 routing globally
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ipv6 address 2001:DB8:1:1::1/64 ! Static GUA
Router(config-if)# ipv6 address FE80::1 link-local ! Static link-local
Router(config-if)# ipv6 address autoconfig ! SLAAC auto-configuration
Router(config-if)# ipv6 address 2001:DB8:1:1::/64 eui-64 ! EUI-64 generated
Router(config-if)# no shutdown
IPv4 vs. IPv6 Summary
| Feature | IPv4 | IPv6 |
|---|---|---|
| Address length | 32 bits | 128 bits |
| Address format | Dotted decimal (192.168.1.1) | Hexadecimal with colons (2001:DB8::1) |
| Address space | ~4.3 billion | ~340 undecillion |
| Broadcast | Yes | No (uses multicast) |
| ARP | Yes | No (uses NDP) |
| Auto-configuration | DHCP, APIPA | SLAAC, DHCPv6 |
| Header | Variable (20-60 bytes) | Fixed 40 bytes |
| Fragmentation | Routers and hosts | End hosts only |
| Checksum in header | Yes | No (removed for efficiency) |
What is the abbreviated form of the IPv6 address 2001:0DB8:0000:0000:0000:0000:0000:0001?
Which IPv6 address type starts with FE80 and is automatically configured on every IPv6-enabled interface?
In EUI-64, what is inserted in the middle of the MAC address to create the 64-bit interface ID?
Which IPv6 multicast address represents "all nodes" on the local link?