Chapter 21: IPv6 routing
The introduction connects IPv6 routing to familiar IPv4 routing fundamentals and identifies the chapter’s CCNA exam scope.
After this chapter you will be able to
- Shared routing fundamentals. Explain that the fundamentals of IPv6 routing are largely the same as those of IPv4 routing, so earlier routing concepts carry over.
- Next-hop MAC address resolution. Explain why a sender needs the next hop’s MAC address to send an IP packet in an Ethernet frame, and distinguish IPv6’s use of NDP from IPv4’s use of ARP.
- Solicited-node address derivation. Explain how to generate a solicited-node multicast address from a global unicast, unique local, or link-local IPv6 address, and state its scope.
- NDP address resolution exchange. Trace how a host learns a neighbor’s MAC address using a Neighbor Solicitation and Neighbor Advertisement, and contrast their delivery with IPv4 ARP.
- Router discovery message exchange. Explain how Router Solicitation and Router Advertisement messages let a host discover local routers and network information.
- SLAAC address generation. Trace how the illustrated Cisco router uses SLAAC to generate an IPv6 address from information learned through NDP.
- DAD timing and tentative addresses. Explain when Duplicate Address Detection runs and why a tentative IPv6 address cannot yet be used for communication.
- NS and NA duplicate test. Trace how DAD uses Neighbor Solicitation and Neighbor Advertisement messages, and distinguish the outcomes when a response is or is not received.
- IPv6 routing table and routes. Explain that an IPv6 router keeps a routing table of its best known routes to destinations and can learn routes through static or dynamic routing, as well as automatically from configured interface addresses.
- Connected and local routes. Distinguish a connected route to an interface’s network from a local route to the router’s own interface address, including what the router does with packets matching each.
- IPv6 forwarding route choice. Explain that a router looks up a packet’s destination IPv6 address, forwards it using the matching route with the longest prefix length, and drops the packet if no route matches.
- Routes to remote destinations. Distinguish what connected and local routes provide from what a router needs to forward packets to remote destinations. Explain that remote routes can be configured manually or learned through a dynamic routing protocol.
- PC1 to PC3 route requirements. Trace which routers need static routes for communication between PC1 and PC3, accounting for the networks R1 and R3 already have as connected routes.
- Recursive IPv6 static routes. Explain how to configure a recursive IPv6 static route and why forwarding through it requires two routing-table lookups.
- Exit-interface route limitations. Explain why an IPv6 static route specifying only an exit interface fails on Ethernet despite appearing in the routing table, and why the same form works on a serial link.
- Fully specified route choice. Describe what a fully specified IPv6 static route includes and compare its practical use with a recursive route.
- Link-local next-hop use. Explain how a link-local address can serve as a route’s next hop even though packets sourced from or destined for link-local addresses are not routable.
- Link-scoped uniqueness and routes. Explain why the same link-local address can appear on separate links and why a static route using a link-local next hop must specify an exit interface.
- IPv6 default route matching. Explain that an IPv6 default route is ::/0, the IPv6 equivalent of 0.0.0.0/0, and is selected only when no more specific route matches the destination.
- Floating static route failover. Explain how to make an IPv6 static route a backup by specifying a higher administrative distance at the end of the route, and describe when that route enters the routing table.
What it builds on
- The basics of routing (chapter 9) · Introduces the basics of routing from an IPv4 perspective.
- Address Resolution Protocol (chapter 6) · The earlier explanation of ARP provides the IPv4 comparison.
- Multicast (chapter 20) · IPv6 multicast addresses.
- Modified EUI-64 (chapter 20) · Modified EUI-64 as a way to generate an IPv6 address's host portion
- IPv6 address configuration (chapter 20) · IPv6 addresses being assigned to interfaces
- Manually assigning an IPv6 address (chapter 20) · manually assigning an IPv6 address
- The routing table (chapter 9) · The earlier explanation of a router's routing table.
- Identifying the IPv6 prefix (chapter 20) · Reading the prefix of an IPv6 address.
Section by section
Introduction
The introduction connects IPv6 routing to familiar IPv4 routing fundamentals and identifies the chapter’s CCNA exam scope.
- Shared routing fundamentals: Explain that the fundamentals of IPv6 routing are largely the same as those of IPv4 routing, so earlier routing concepts carry over.
Why it matters: Your earlier work on IPv4 routing gives you a starting point for IPv6 routing. - IPv6 routing exam scope: State that the CCNA exam includes IPv6 static routing but not IPv6 dynamic routing, and distinguish the IPv4 and IPv6 support mentioned for OSPFv2 and OSPFv3.
Why it matters: This distinction helps you focus your CCNA study on the IPv6 routing material the introduction identifies as in scope.
Key terms: IPv6 routing, IPv4 routing, IPv6 dynamic routing, static routing, OSPFv2, OSPFv3
21.1 Neighbor Discovery Protocol
The section explains why IPv6 packet delivery needs next-hop MAC address resolution and introduces NDP as IPv6’s alternative to ARP.
- Next-hop MAC address resolution: Explain why a sender needs the next hop’s MAC address to send an IP packet in an Ethernet frame, and distinguish IPv6’s use of NDP from IPv4’s use of ARP.
Why it matters: This distinction explains why IPv6 devices use NDP when they need to address a frame to the next hop.
Key terms: next hop, Ethernet frame, ARP table, Neighbor Discovery Protocol (NDP), MAC address
21.1.1 Solicited-node multicast
This section shows how to derive a link-local solicited-node multicast address from an IPv6 unicast address and illustrates the multicast groups a router joins.
- Solicited-node address derivation: Explain how to generate a solicited-node multicast address from a global unicast, unique local, or link-local IPv6 address, and state its scope.
Why it matters: This lets you recognize and derive the multicast addresses used by some NDP functions. - Solicited-node group membership: Describe the solicited-node multicast groups R1 has joined and how packets destined for such an address are carried in frames.
Why it matters: The example connects a router’s IPv6 addresses to the multicast groups it joins.
Key terms: solicited-node multicast address, unicast address, ff02::1:ff, link-local, multicast groups, global unicast, multicast MAC address
21.1.2 Address resolution with NDP
This section explains how IPv6 Neighbor Discovery Protocol resolves a neighbor’s MAC address and records IPv6-to-MAC mappings.
- NDP address resolution exchange: Trace how a host learns a neighbor’s MAC address using a Neighbor Solicitation and Neighbor Advertisement, and contrast their delivery with IPv4 ARP.
Why it matters: This exchange explains how an IPv6 host finds the link-layer address needed to contact a neighbor. - Overlapping multicast target identification: Explain how hosts distinguish the intended recipient when different IPv6 addresses produce the same solicited-node multicast address.
Why it matters: The Target Address explains why multicast-address overlap need not cause the wrong host to answer. - IPv6 neighbor table mappings: Describe what the IPv6 neighbor table stores and what the shown command reveals about its entries.
Why it matters: The neighbor table lets you see the address mappings produced by IPv6 neighbor discovery.
Key terms: NDP, address resolution, Neighbor Solicitation, Neighbor Advertisement, ICMPv6, solicited-node multicast, solicited-node multicast address, Target Address field, unicast IPv6 address, IPv6 neighbor table
21.1.3 Router discovery with NDP
This section explains how NDP router discovery supports SLAAC and how Cisco routers use advertisements to configure an IPv6 address and, optionally, a default route.
- Router discovery message exchange: Explain how Router Solicitation and Router Advertisement messages let a host discover local routers and network information.
Why it matters: This exchange is how a device learns about routers and the local network without being told those details manually. - SLAAC address generation: Trace how the illustrated Cisco router uses SLAAC to generate an IPv6 address from information learned through NDP.
Why it matters: It connects router discovery to the IPv6 address a device configures for itself. - Stateless and manual prefix distinction: Distinguish SLAAC's stateless operation and automatic prefix learning from manually specifying a prefix with `ipv6 address prefix eui-64`.
Why it matters: It clarifies what is automatic about SLAAC and why it is called stateless. - Autoconfig default route option: Describe the additional routing-table effect of `ipv6 address autoconfig default` on a Cisco router.
Why it matters: The command can configure not just an address but also where the router sends traffic without a more specific route.
Key terms: Neighbor Discovery Protocol, Router Solicitation (RS), Router Advertisement (RA), ff02::2, ff02::1, Stateless Address Autoconfiguration (SLAAC), ipv6 address autoconfig, network prefix, Modified EUI-64, stateless
21.1.4 Duplicate Address Detection
This section explains when IPv6 Duplicate Address Detection runs, how NDP messages establish whether an address is unique, and what to do when a duplicate is found.
- DAD timing and tentative addresses: Explain when Duplicate Address Detection runs and why a tentative IPv6 address cannot yet be used for communication.
Why it matters: It explains why a newly assigned IPv6 address may not be usable immediately. - NS and NA duplicate test: Trace how DAD uses Neighbor Solicitation and Neighbor Advertisement messages, and distinguish the outcomes when a response is or is not received.
Why it matters: The response to the solicitation determines whether the device may use the address. - Duplicate address correction: Describe how a duplicate address appears in the Cisco example and how to correct it.
Why it matters: It connects DAD’s result to a visible configuration problem and its fix.
Key terms: Duplicate Address Detection (DAD), tentative, up/up state, Neighbor Solicitation (NS), Neighbor Advertisement (NA), solicited-node multicast address, duplicate, [DUP], show ipv6 interface, no
21.2 The IPv6 routing table
Introduces the IPv6 routing table and the ways a router learns routes.
- IPv6 routing table and routes: Explain that an IPv6 router keeps a routing table of its best known routes to destinations and can learn routes through static or dynamic routing, as well as automatically from configured interface addresses.
Why it matters: This gives you a starting point for reading an IPv6 routing table and understanding where its entries come from.
Key terms: routing table, static routing, dynamic routing, connected routes, local routes
21.2.1 Connected and local routes
This section explains how IPv6 connected and local routes appear in a router’s routing table, why link-local addresses do not create such routes, and why a multicast route points to Null0.
- Connected and local routes: Distinguish a connected route to an interface’s network from a local route to the router’s own interface address, including what the router does with packets matching each.
Why it matters: The distinction tells you whether a matching packet is delivered to the router or forwarded toward a host. - IPv6 host and network routes: Explain how the section classifies local and connected routes as host and network routes using IPv6 prefix lengths.
Why it matters: Prefix lengths help you recognize whether a routing-table entry names one destination or a network. - Link-local routing-table exception: Explain why the router does not add connected or local routes for its link-local addresses, while distinguishing that from using a link-local address as a next hop.
Why it matters: Missing link-local entries are expected, not evidence that the router lacks link-local addresses. - Multicast Null0 route: Explain the purpose of the automatically inserted ff00::/8 route to Null0 and its limit on multicast behavior.
Why it matters: This entry explains why multicast appears in the routing table without blocking the router’s own multicast exchanges.
Key terms: connected route, local route, up/up, host route, network route, /128, /127, link-local address, next-hop address, ff00::/8
21.2.2 Route selection
This subsection explains how an IPv6 router chooses a matching route for a packet and what happens when no route matches.
- IPv6 forwarding route choice: Explain that a router looks up a packet’s destination IPv6 address, forwards it using the matching route with the longest prefix length, and drops the packet if no route matches.
Why it matters: This lets you predict which route an IPv6 router uses to forward a packet. - Two route selection meanings: Distinguish selecting a route to forward a packet from selecting which routes enter the routing table.
Why it matters: The distinction prevents confusion between forwarding a packet and building the routing table.
Key terms: route selection, most specific matching route, longest prefix length, metric, administrative distance
21.3 IPv6 static routing
This section explains why routers need static routes to reach remote IPv6 networks and identifies the routes needed for PC1 and PC3 to communicate.
- Routes to remote destinations: Distinguish what connected and local routes provide from what a router needs to forward packets to remote destinations. Explain that remote routes can be configured manually or learned through a dynamic routing protocol.
Why it matters: It explains why assigning IPv6 addresses alone does not give a router routes to remote networks. - PC1 to PC3 route requirements: Trace which routers need static routes for communication between PC1 and PC3, accounting for the networks R1 and R3 already have as connected routes.
Why it matters: Counting existing connected routes prevents unnecessary static routes while ensuring both PC networks are reachable.
Key terms: connected routes, local routes, remote destinations, static routing, dynamic routing protocol, PC1’s network, PC3’s network, connected route, static routes
21.3.1 Configuring IPv6 static routes
This section explains three ways to configure IPv6 static routes and why routes that specify only an exit interface fail on Ethernet but work on serial links.
- Recursive IPv6 static routes: Explain how to configure a recursive IPv6 static route and why forwarding through it requires two routing-table lookups.
Why it matters: A next-hop address tells the router where to send a packet, but the router must also find how to reach that next hop. - Exit-interface route limitations: Explain why an IPv6 static route specifying only an exit interface fails on Ethernet despite appearing in the routing table, and why the same form works on a serial link.
Why it matters: A route's presence in the routing table does not guarantee that Ethernet frames can be addressed and forwarded. - Fully specified route choice: Describe what a fully specified IPv6 static route includes and compare its practical use with a recursive route.
Why it matters: This distinguishes a usable route form from an exit-interface-only Ethernet route without assuming a performance advantage.
Key terms: ipv6 route, destination prefix, recursive static route, next-hop IP address, show ipv6 route connected, directly connected static route, exit interface, proxy NDP, neighbor solicitation, INCMP
21.3.2 Link-local next hops
Explains why link-local addresses can serve as IPv6 static-route next hops, why they can suffice on transit links, and why such routes must specify an exit interface.
- Link-local next-hop use: Explain how a link-local address can serve as a route’s next hop even though packets sourced from or destined for link-local addresses are not routable.
Why it matters: It resolves the apparent contradiction between an unroutable address and a usable next hop. - Transit-link address sufficiency: Explain why link-local addressing alone may be sufficient on a transit link.
Why it matters: It explains why the example’s router-to-router links need no global unicast addresses. - Link-scoped uniqueness and routes: Explain why the same link-local address can appear on separate links and why a static route using a link-local next hop must specify an exit interface.
Why it matters: It connects link-local address reuse to the required form of a working static route.
Key terms: link-local address, next hop, local link, transit links, link-local addressing, global unicast addresses, unique local addresses, link-local addresses, fully specified routes, exit interface
21.3.3 Configuring a default route
This section defines the IPv6 default route and explains why it commonly provides a path to the internet.
- IPv6 default route matching: Explain that an IPv6 default route is ::/0, the IPv6 equivalent of 0.0.0.0/0, and is selected only when no more specific route matches the destination.
Why it matters: This explains when a router uses the default route instead of another route in its table. - Internet-bound default routing: Explain why a default route commonly points toward the internet: internal destinations should have more specific routes, leaving unmatched destinations likely to be internet-bound.
Why it matters: It connects the catch-all route to a common network use.
Key terms: IPv6 default route, ::/0, catch-all, default route, internal network, internet
21.3.4 Floating static routes
This section explains how a higher administrative distance makes an IPv6 static route serve as a backup, then applies IPv6 static-route terminology to an exam example.
- Floating static route failover: Explain how to make an IPv6 static route a backup by specifying a higher administrative distance at the end of the route, and describe when that route enters the routing table.
Why it matters: A floating route provides a backup path without displacing the preferred route while it is available. - IPv6 static route identification: Distinguish the host route and fully specified route characteristics of the IPv6 static-route command shown in the exam example.
Why it matters: These two details let you classify a static route from the command itself.
Key terms: floating static route, administrative distance (AD), routing table, next hop, host route, fully specified route, /128 prefix length, exit interface, next-hop IP address
21.4 Summary
Concepts explained in this chapter
- Neighbor Discovery ProtocolNDP is the IPv6 Neighbor Discovery Protocol, which provides mechanisms for discovering neighboring nodes and maintaining local-link reachability information.
- ipv6 neighbor tableAn IPv6 neighbor table is a device-maintained database that maps IPv6 neighbor addresses to link-layer addresses and associated resolution state or interface information.
- neighbor solicitation messageA Neighbor Solicitation is an ICMPv6 Neighbor Discovery message used to request link-layer information or verify the reachability of a neighboring node.
- ipv6 route commandThe Cisco IOS ipv6 route command creates a static IPv6 route in a router's routing table.
- host routeA host route is a route to a single destination IP address, represented in IPv6 by a /128 prefix length.
- router advertisementA Router Advertisement is an ICMPv6 message that a router sends to announce itself and provide local network configuration information.
- router solicitationA Router Solicitation is an ICMPv6 message that asks local routers to identify themselves and provide configuration information.
- link-local addressAn IPv6 link-local address is an IPv6 unicast address valid only for communication between devices on the same local network segment.
- solicited-node multicast addressA solicited-node multicast address is an IPv6 multicast address derived from the last six hexadecimal digits of a unicast address for targeting specific neighbors on a link.
- router discoveryRouter discovery is the process by which an IPv6 host learns about available routers and related network configuration information.
- icmpv6ICMPv6 is the IPv6-specific version of the Internet Control Message Protocol for communicating control, error, and diagnostic information.
- neighbor advertisementA Neighbor Advertisement is an ICMPv6 message that communicates a neighbor's link-layer address or indicates that an IPv6 address is already in use.
- duplicate address detectionDuplicate address detection is the process of determining whether an IPv6 address is already in use on a link before assigning it to an interface.
- fully specified static routeA fully specified route is a route that specifies both a next-hop IP address and an exit interface.
- eui-64 keywordAn EUI-64 interface identifier is a 64-bit IPv6 interface identifier derived using the Extended Unique Identifier format.
- ipv6 address autoconfigipv6 address autoconfig default is a Cisco IOS interface command that autoconfigures an IPv6 address and installs a default route learned through router discovery.
- stateless address autoconfigurationStateless Address Autoconfiguration is an IPv6 mechanism by which a host generates its own address and obtains network configuration without a centralized address-assignment server.
- static routeIPv6 static routing is a routing method in which IPv6 routes are manually configured on routers.
- directly connected static routeA directly connected route is a route that specifies an exit interface without specifying a next-hop IP address.
- recursive static routeA recursive static route is a static route that specifies a next-hop IP address and requires an additional lookup to determine the forwarding interface.
- connected routeA connected route is a route to a network directly attached to an interface with an IP address that is operationally up.
- ipv6 unicast-routing commandThe Cisco IOS ipv6 unicast-routing command enables IPv6 unicast packet forwarding between interfaces.
- local routeA local route is a route to the exact IP address configured on a router interface, represented with a /32 prefix.
- floating static routeA floating static route is a static route configured with an administrative distance higher than the preferred route source so it can serve as a backup route.
- IPv6IPv6 is the sixth version of the Internet Protocol, using 128-bit network addresses written in hexadecimal notation.
- routing tableA routing table is a data structure containing routes that describe reachable network destinations and how to forward packets toward them.
- switchingA forwarding decision is a router's selection of the next forwarding action for a packet based on its destination and routing information.
- most specific matching routeThe most specific matching route is the route whose network prefix has the greatest number of bits matching a packet's destination IP address.
- default routeA default route is a route with destination prefix 0.0.0.0/0 that matches every IPv4 address when no more specific route matches.
- proxy ndpProxy NDP is a router behavior in which the router responds to IPv6 Neighbor Discovery messages on behalf of another host.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
