IPv6 troubleshooting becomes easier when you separate four questions:
- What kind of address is this?
- Which prefix identifies the local network?
- How was the interface identifier created?
- Can the device discover its neighbor and a usable path?
Use a short IPv6 decision order
Start with live state rather than rebuilding the address from memory.
- Confirm the interface is up.
- Confirm the expected global or unique-local address and prefix are present.
- Confirm a link-local address exists.
- Check the default gateway or route.
- Check Neighbor Discovery state.
- Test the local link before testing a remote destination.
- Check the return path.
Useful starting commands are:
show ipv6 interface brief
show ipv6 interface GigabitEthernet0/0/0
show ipv6 neighbors
show ipv6 route
Match the address type to its job
| Type | Common value | What it does |
|---|---|---|
| Global unicast | 2000::/3 | Identifies one interface with an address intended for global routing. |
| Link-local | FE80::/10 | Works only on the local link. Routers do not forward it to another network. |
| Unique local | FC00::/7 | Provides internal addressing that is not intended for ordinary internet routing. |
| Loopback | ::1/128 | Refers to the local host. |
| Unspecified | ::/128 | Means no address has been selected yet. It is not assigned as a normal interface address. |
| Multicast | FF00::/8 | Sends traffic to a group of interested interfaces. IPv6 does not use broadcast. |
Every IPv6-enabled interface normally has a link-local address. That address supports local neighbor communication and can be used as a routing next hop when the outgoing interface is also clear.
Read prefixes and compress addresses carefully
A LAN commonly uses a /64 prefix. The first 64 bits identify the subnet, and the last 64 bits identify the interface within that subnet.
Do not apply IPv4 host-count habits to ordinary IPv6 LANs. IPv6 subnet design usually emphasizes a clear address hierarchy rather than saving individual addresses.
To shorten an IPv6 address:
- Remove leading zeros inside a hexadecimal group.
- Replace one continuous run of all-zero groups with
::. - Use
::only once.
2001:0db8:0010:0020:0000:0000:0000:0042
2001:db8:10:20::42
To expand the shortened address, restore eight groups and four hexadecimal digits per group.
Recognize modified EUI-64
Modified Extended Unique Identifier 64-bit (EUI-64) can build a 64-bit interface identifier from a 48-bit MAC address.
For MAC address 00:1A:2B:3C:4D:5E:
- Split the MAC into two halves.
- Insert
FF:FEbetween them. - Flip the universal/local bit in the first byte.
00becomes02. - Combine the result with the
/64prefix.
00:1A:2B:FF:FE:3C:4D:5E
021A:2BFF:FE3C:4D5E
With prefix 2001:db8:10:20::/64, the full address becomes:
2001:db8:10:20:21a:2bff:fe3c:4d5e
Cisco IOS XE can create the interface identifier with:
interface GigabitEthernet0/0/0
ipv6 address 2001:db8:10:20::/64 eui-64
Modern endpoints may use privacy-oriented or randomly generated interface identifiers. The exam still expects you to recognize the modified EUI-64 process.
Neighbor Discovery replaces several IPv4 local-link functions
Neighbor Discovery Protocol (NDP) uses Internet Control Message Protocol version 6 (ICMPv6). It helps devices find local neighbors, learn routers, resolve Layer 3 addresses to Layer 2 addresses, and detect certain reachability problems.
| Message | Plain-language job |
|---|---|
| Router Solicitation | A host asks nearby routers to advertise sooner. |
| Router Advertisement | A router announces prefixes, gateway information, and address-assignment guidance. |
| Neighbor Solicitation | A device asks for a neighbor's Layer 2 address or checks reachability. |
| Neighbor Advertisement | A device answers with neighbor information. |
| Redirect | A router tells a host about a better first hop on the local link. |
If ICMPv6 is blocked too broadly, IPv6 can fail in ways that look unrelated because Neighbor Discovery depends on it.
Separate SLAAC, DHCPv6, and manual configuration
Stateless Address Autoconfiguration (SLAAC) lets a host build an address from a prefix learned in a Router Advertisement.
DHCPv6 can provide addresses or other configuration depending on the design and Router Advertisement flags.
Manual configuration assigns the address directly on the device.
A client can have a valid link-local address but no usable global address. That usually means the local IPv6 stack is running, while prefix advertisement, address assignment, or policy still needs attention.
Treat link-local next hops as local-link addresses
A router can use a global address or a link-local address as an IPv6 next hop. When a link-local next hop is used, the outgoing interface must also be specified because the same link-local range exists on every IPv6 link.
ipv6 route 2001:db8:30::/64 GigabitEthernet0/0/1 FE80::2
A default route matches destinations that do not have a more-specific route:
ipv6 route ::/0 2001:db8:12::2
If the router must forward IPv6 traffic, enable routing globally:
ipv6 unicast-routing
Choose IOS evidence that answers one question
| Question | Useful command |
|---|---|
| Which IPv6 addresses are active? | show ipv6 interface brief |
| What prefix and NDP behavior apply on one interface? | show ipv6 interface |
| Which local neighbors were discovered? | show ipv6 neighbors |
| Which IPv6 route matches a destination? | show ipv6 route |
| Can one source reach one destination? | ping ipv6 or extended ping |
| Where does routed forwarding stop? | traceroute ipv6 |
Scenario comparisons
The host has FE80:: but no global address
The local IPv6 stack is active. Check Router Advertisements, SLAAC or DHCPv6 design, VLAN placement, and filtering before changing the link-local address.
A static route uses FE80::2 and does not install
Confirm the outgoing interface is included and is operational. A link-local next hop needs interface context.
Two addresses look different but represent the same value
Expand both to eight groups before comparing them. Compression changes the notation, not the address.
Local-link ping works but remote traffic fails
Check IPv6 routing, the default route, forwarding state, and the return path. Local neighbor success does not prove end-to-end routing.
Common exam traps
- Treating a link-local address as globally routable.
- Expecting IPv6 broadcast instead of multicast.
- Using
::more than once in one address. - Applying IPv4 host-count optimization to ordinary IPv6
/64LANs. - Forgetting the outgoing interface with a link-local static-route next hop.
- Assuming a link-local address proves that global address assignment succeeded.
- Blocking ICMPv6 without considering Neighbor Discovery.
Rapid review grid
| Clue or need | Best interpretation |
|---|---|
FE80::/10 | Local-link communication only |
2000::/3 | Global unicast address space |
| One omitted run of zero groups | :: compression |
FF:FE inserted into a MAC-derived identifier | Modified EUI-64 |
| Resolve an IPv6 neighbor to a Layer 2 address | Neighbor Solicitation and Neighbor Advertisement |
| Learn a prefix and default router | Router Advertisement |
| Use a link-local next hop in a static route | Specify the outgoing interface |