Troubleshooting IPv6 Unicast Addressing, Prefix Sizing, and Modified EUI-64
Troubleshooting IPv6 introduces fundamental paradigm shifts compared to IPv4. In IPv6, broadcast addresses don't exist, eliminating the traditional subtraction of network and broadcast addresses from host-sizing calculations. Furthermore, a single interface routinely operates with multiple valid IPv6 addresses simultaneously, each assigned to a distinct address scope.
The following CCNA 2.0 exam objectives are addressed in this tutorial.
1.0 Network Infrastructure and Connectivity
1.4 Troubleshoot IPv6 address configuration, assignment, and prefix sizing (unicast and modified EUI 64)
1. IPv6 Address Architecture and Prefix Sizing
An IPv6 unicast address consists of 128 bits divided into two functional components: the Network Prefix and the Interface Identifier (Interface ID).
+------------------------------------+------------------------------------+ | Routing Prefix + Subnet ID | Interface ID | | (n bits) | (128 - n bits) | +------------------------------------+------------------------------------+ |<---------- Typically /64 --------->|<----------- 64 bits -------------->|
Prefix Lengths and Subnet Boundaries
- The Standard /64: The vast majority of host-facing local access networks (LANs), Stateless Address Autoconfiguration (SLAAC) subnets, and inter-switch links mandate a
/64prefix length. - Hexadecimal Nibble Boundaries (Multiples of 4): A single hexadecimal character represents 4 bits (a nibble):
- Multiples of 16: Align cleanly along colon-separated 16-bit quartet boundaries (e.g.,
/48,/64). - Multiples of 4: Terminate exactly at individual hexadecimal characters. For example, in
2001:db8:acad:1200::/56, the first 14 hexadecimal characters comprise the prefix.
- Multiples of 16: Align cleanly along colon-separated 16-bit quartet boundaries (e.g.,
Common Prefix Configuration Errors
- Host Prefix Length Mismatches: If an upstream router interface is configured with or advertises
2001:db8:10:1::1/64, but an administrator manually configures a host with2001:db8:10:1::50/68, both nodes calculate different on-link ranges. Consequently, intra-subnet communications fail because the host misclassifies neighboring on-link hosts as remote destinations, attempting to route traffic via the default gateway. - Double-Colon Syntax Displacement: The double colon (
::) representing contiguous blocks of zeros may appear only once per address. For example,2001::23:2/64and2001:23::2/64expand to completely different prefixes. Misplacing the double colon changes the targeted subnet entirely. - Subnet-Router Anycast Collision: Configuring a 64-bit host portion of all zeros (such as
ipv6 address 2001:db8:cafe:1::/64without explicit host bits) targets the Subnet-Router Anycast address (RFC 4291). Cisco IOS CLI may reject this or output warnings regarding anycast reservation.
2. Address Assignment Methods: SLAAC, DHCPv6, and Static
An IPv6 interface typically binds multiple addresses across different scopes: a Link-Local Address (FE80::/10) for single-link communication and Neighbor Discovery, and one or more Global Unicast Addresses (2000::/3) for end-to-end internetwork routing.
Host Router R1 | | |--- (1) Router Solicitation (To: FF02::2) ------->| | | |<-- (2) Router Advertisement (From: FE80::R1) ----| | [Flags: A=1, M=0, O=0 | Prefix: 2001:db8:1::/64] | |
Address Assignment Mechanisms
- Static Assignment: An administrator manually assigns the full 128-bit address or supplies the 64-bit network prefix combined with the
eui-64parameter to automatically calculate the Interface ID. - SLAAC (Stateless Address Autoconfiguration): The host transmits an ICMPv6 Router Solicitation (RS) to the all-routers multicast address
FF02::2. The local router responds with a Router Advertisement (RA) containing the network prefix, prefix length, and its own link-local address as the default gateway. - Stateless DHCPv6: SLAAC provides the prefix and default gateway, while a DHCPv6 server provides supplemental parameters (e.g., DNS server recursive resolvers and domain search lists).
- Stateful DHCPv6: The router sets the Managed Address Configuration (M) flag in the RA, instructing the host to lease its complete 128-bit IPv6 address and configuration options directly from a DHCPv6 server.
3. Modified EUI-64: Formation, Mathematics, and Recognition
When an Interface ID is derived via Modified EUI-64 (or configured on Cisco IOS with the eui-64 option), the 64-bit identifier is calculated directly from the interface's 48-bit (6-byte) MAC address.
The 3-Step EUI-64 Calculation
- Split: Divide the 48-bit MAC address into two 24-bit (6-digit hex) halves (OUI and NIC extension).
- Insert: Insert the 16-bit hex delimiter
FFFE(orFF:FE) between the two halves to form a 64-bit string. - Invert the Universal/Local (U/L) Bit: Invert the 7th bit of the first byte (reading left-to-right, index 6 in zero-based indexing).
- For globally unique burned-in MACs, bit 7 begins as
0(universal) and flips to1(local scope). - In hexadecimal, flipping bit 7 corresponds to modifying the second character of the first octet (adding
0x2to a universal address).
- For globally unique burned-in MACs, bit 7 begins as
Example
Given the network prefix 2001:db8:acad:10::/64 and MAC address 0013.805a.bc12:
Step 1 (Split): 001380 and 5abc12
Step 2 (Insert): 0013:80FF:FE5A:BC12
Step 3 (Bit 7): First byte = 0x00 -> Binary 0000 0000
Invert bit 7: -> Binary 0000 0010 (Hex 0x02)
Updated identifier: 0213:80ff:fe5a:bc12
Combined Address: 2001:db8:acad:10:213:80ff:fe5a:bc12/64
FFFE. Cisco exam distractors frequently present an address containing FFFE where the first byte's 7th bit was left unchanged (e.g., leaving 0013:... instead of 0213:...). Such options are incorrect.4. Cisco IOS Configuration and Verification
Enable IPv6 unicast routing globally (Prerequisite for transmitting RAs)
Interface Configuration
Option A: Full static 128-bit address
Router(config)# ipv6 unicast-routing
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ipv6 address 2001:db8:10:1::1/64
Router(config-if)# no shutdown
Option B: Static prefix with automated EUI-64 Interface ID
Router(config)# interface GigabitEthernet0/0/1 Router(config-if)# ipv6 address 2001:db8:10:2::/64 eui-64 Router(config-if)# no shutdown
Verification Commands
1. Check operational status, link-local, and global addresses
Router# show ipv6 interface brief
GigabitEthernet0/0/0 [up/up]
FE80::1
2001:DB8:10:1::1
GigabitEthernet0/0/1 [up/up]
FE80::213:80FF:FE5A:BC12
2001:DB8:10:2:213:80FF:FE5A:BC12
2. Verify prefix lengths, MTU, ND parameters, and joined multicast groups
Router# show ipv6 interface GigabitEthernet0/0/1
3. Inspect learned L2-to-L3 IPv6 Neighbor Discovery bindings (IPv6 ARP equivalent)
Router# show ipv6 neighbors

5. Troubleshooting Methodology for Exam Scenarios
When diagnosing IPv6 reachability issues, systematically troubleshoot from the local protocol stack outward:
+-------------------------------------------------------------------------+ | Level 1: Stack Verification -> ping ::1 | | Level 2: Local Addressing -> show ipv6 interface brief / ipconfig | | Level 3: Local Link (L2/L3) -> ping FE80::... / show ipv6 neighbors | | Level 4: Gateway & Routing -> ping 2001:db8:... (Default Gateway) | | Level 5: Remote Reachability -> traceroute to destination | +-------------------------------------------------------------------------+
Diagnostic Decision Matrix
| Symptom / Observation | Likely Root Cause | Verification Command | Corrective Action |
|---|---|---|---|
ping ::1 fails | Host TCP/IP protocol stack is uninitialized or corrupted. | Adapter properties / OS network stack diagnostics | Reinstall or enable the IPv6 protocol stack on the network adapter. |
| Link-local address is present, but SLAAC fails to assign a Global Unicast Address. |
1. ipv6 unicast-routing is disabled globally on the router.2. Upstream router interface lacks an IPv6 address/prefix. 3. Layer 2 VLAN misconfiguration. | show ipv6 interface <interface> on upstream router | Enable ipv6 unicast-routing globally and assign a /64 prefix to the router interface. |
| Pings to local-link devices succeed, but all off-subnet destinations fail. |
1. Host default gateway is missing or misconfigured. 2. Gateway link-local format is missing required zone ID / interface index. | ipconfig /all (Windows) or ip -6 route show (Linux) | Configure the default gateway pointing to the upstream router's link-local address (e.g., FE80::1). |
| Duplicate Address Detection (DAD) collision reported. | Duplicate static address assigned, or cloned VMs sharing identical virtual MAC addresses. | Inspect console logs for %DUPLICATE_ADDR or [TEN] (tentative) state. | Assign unique Interface IDs or re-generate virtual MAC addresses. |
| Hosts cannot resolve IPv6 neighbors; packets dropped. | Control-plane IPv6 ACL, RA Guard, or switch port security dropping ICMPv6 discovery frames. | show ipv6 access-list | Explicitly permit ICMPv6 Type 135 (Neighbor Solicitation) and Type 136 (Neighbor Advertisement). |

Practice Questions with explanation
Modified EUI-64 splits the 48-bit MAC into two 24-bit halves, inserts FFFE in the middle (0013:80FF:FE5A:BC12), and inverts the 7th bit of the first octet (changing 0x00 to 0x02, leading to 0213:80ff:fe5a:bc12).
Because the host prefix length (/68) is longer than the network prefix (/64), the host defines a narrower local subnet boundary and incorrectly sends packets destined for hosts outside its /68 to the default gateway.
Without ipv6 unicast-routing enabled globally, Cisco routers will not transmit ICMPv6 Router Advertisements (RAs), preventing SLAAC autoconfiguration on client devices.
Off-subnet communication requires a valid default router on the same link (either the router's GUA or link-local address); if the static gateway IP has a typo or points to a non-existent host, remote routing fails.
The show ipv6 neighbors command outputs the IPv6 Neighbor Discovery (ND) cache, which maps IPv6 addresses to Layer 2 MAC addresses and displays their reachability states (e.g., REACH, STALE, DELAY).
Author Laxmi Goswami Updated on 2026-11-07