Explains how IPv6 neighbor discovery operates on the local link to resolve neighbor addresses, verify reachability, and track neighboring routers by using ICMP-based discovery, advertisement, solicitation, and redirect messages.
IPv6 neighbor discovery is an IPv6 local-link process that
determines the link-layer address of a neighbor on the same local link
verifies neighbor reachability, and
keeps track of neighboring routers.
Neighbor discovery messages
IPv6 neighbor discovery uses Internet Control Message Protocol (ICMP) messages and solicited-node multicast addresses. Neighbor solicitation, neighbor advertisement, router advertisement, router solicitation, and neighbor redirect messages support the neighbor discovery process.
Table 1. Feature History Table
Feature Name
Release Information
Feature Description
IPv6 Neighbor Discovery
Release 25.4.1
Introduced in this release on: Fixed Systems (8010 [ASIC: A100], 8700 [ASIC: K100])(select variants only*)
*This feature is supported on:
8711-48Z-M
8011-32Y8L2H2FH
8011-12G12X4Y-A/D
IPv6 Neighbor Discovery
Release 25.1.1
Introduced in this release on: Fixed Systems (8010 [ASIC: A100])(select variants only*)
*This feature is supported on Cisco 8011-4G24Y4H-I routers.
IPv6 Neighbor Discovery
Release 24.4.1
Introduced in this release on: Fixed Systems (8200 [ASIC: P100], 8700 [ASIC: P100, K100])(select variants only*); Modular Systems (8800 [LC ASIC: P100])(select variants only*)
The integrated network stack allows routers to support both IPv4 and IPv6 protocols, facilitating a seamless transition and coexistence on the same network infrastructure. This feature enhances connectivity options, enabling devices to handle dual-protocol traffic efficiently. By supporting dual stack, the network can leverage the expansive address space of IPv6 while maintaining compatibility with existing IPv4 systems, ensuring smooth operation and future readiness.
*Previously this feature was supported on Q200 and Q100.
*This feature is now supported on:
8212-48FH-M
8711-32FH-M
8712-MOD-M
88-LC1-36EH
88-LC1-12TH24FH-E
88-LC1-52Y8H-EM
How IPv6 neighbor discovery works
IPv6 neighbor discovery operates on the local link. It supports address resolution, reachability verification, router discovery, and redirect behavior.
Summary
The IPv6 neighbor discovery process uses these components:
Solicited-node multicast addresses: Help identify neighbors on the same local link.
Neighboring routers: Are tracked so IPv6 nodes can select reachable routers on the local link.
Workflow
These stages describe how IPv6 neighbor discovery works.
An IPv6 node uses neighbor discovery messages to determine the link-layer address of a neighbor on the same local link.
The node verifies whether the neighbor remains reachable after the link-layer address is known.
The node tracks neighboring routers and uses router advertisement, router solicitation, and redirect behavior to maintain efficient local-link forwarding.
Result
The IPv6 node can resolve neighbor link-layer addresses, verify neighbor reachability, and track neighboring routers on the local link.
IPv6 neighbor solicitation messages
An IPv6 neighbor solicitation message is an ICMP message that
uses Type value 135 in the ICMP packet header
is sent on the local link to determine the link-layer address of another node, and
can verify neighbor reachability and the uniqueness of tentative unicast IPv6 addresses.
Table 2. Feature History Table
Feature Name
Release Information
Feature Description
IPv6 Neighbor Solicitation Message
Release 25.1.1
Introduced in this release on: Fixed Systems (8010 [ASIC: A100])(select variants only*)
*This feature is supported on Cisco 8011-4G24Y4H-I routers.
IPv6 Neighbor Solicitation Message
Release 24.4.1
Introduced in this release on: Fixed Systems (8200 [ASIC: P100], 8700 [ASIC: P100, K100])(select variants only*); Modular Systems (8800 [LC ASIC: P100])(select variants only*)
The dual protocol stack enables devices to concurrently operate IPv4 and IPv6, allowing seamless communication across both address families. This feature supports gradual network transition strategies and ensures continued compatibility with legacy IPv4 systems while embracing IPv6's broader address capabilities. It optimizes network resource allocation and provides flexibility to accommodate evolving network demands without service disruption.
*Previously this feature was supported on Q200 and Q100.
*This feature is now supported on:
8212-48FH-M
8711-32FH-M
8712-MOD-M
88-LC1-36EH
88-LC1-12TH24FH-E
88-LC1-52Y8H-EM
Address fields
This figure displays the structure of an IPv6 neighbor solicitation message.
When a node sends a neighbor solicitation message to determine a link-layer address, the source address is the IPv6 address of the node that sends the message.
The destination address is the solicited-node multicast address that corresponds to the IPv6 address of the destination node. The neighbor solicitation message also includes the link-layer address of the source node.
Neighbor advertisement response
After a destination node receives a neighbor solicitation message, the destination node replies by sending a neighbor advertisement message on the local link.
A neighbor advertisement message uses Type value 136 in the ICMP packet header. The source address in the neighbor advertisement message is the IPv6 address of the node interface that sends the advertisement. The destination address is the IPv6 address of the node that sent the neighbor solicitation message.
The data portion of the neighbor advertisement message includes the link-layer address of the node that sends the advertisement. After the source node receives the neighbor advertisement, the source node and destination node can communicate.
Reachability and duplicate address detection
Neighbor solicitation messages verify reachability after the link-layer address of a neighbor is known. In this use case, the destination address in the neighbor solicitation message is the unicast address of the neighbor.
Neighbor unreachability detection uses neighbor solicitation messages to identify a neighbor failure or a forward-path failure for paths between hosts and neighboring nodes. This detection is performed for neighbors that receive unicast packets and is not performed for neighbors that receive multicast packets.
A solicited neighbor advertisement message confirms that the forward path is working in both directions. A neighbor advertisement message with a solicited flag value of 0 must not be used as a positive acknowledgment that the forward path is working.
Neighbor solicitation messages are also used in stateless autoconfiguration to verify the uniqueness of unicast IPv6 addresses before the addresses are assigned to an interface. Duplicate address detection is performed first on a new link-local IPv6 address.
During duplicate address detection, the new address remains tentative. The node sends a neighbor solicitation message with an unspecified source address and the tentative link-local address in the message body. If another node is using that address, the node returns a neighbor advertisement message that contains the tentative link-local address.
If no neighbor advertisement messages are received in response to the neighbor solicitation message, and no neighbor solicitation messages are received from other nodes that are verifying the same tentative address, the node considers the tentative link-local address unique and assigns it to the interface.
Address-change advertisements
Neighbor advertisement messages are also sent when the link-layer address of a node changes on the local link. In this case, the destination address for the neighbor advertisement message is the all-nodes multicast address.
Every global or link-local IPv6 unicast address must be checked for uniqueness on the link. Until the uniqueness of the link-local address is verified, duplicate address detection is not performed on other IPv6 addresses that are associated with that link-local address.
The Cisco IOS XR implementation of duplicate address detection does not check the uniqueness of anycast addresses or global addresses that are generated from 64-bit interface identifiers.
How IPv6 neighbor solicitation works
Summary
IPv6 neighbor solicitation uses these message fields and responses:
Source address: Uses the IPv6 address of the node that sends the neighbor solicitation message.
Destination address: Uses the solicited-node multicast address that corresponds to the IPv6 address of the destination node.
Source link-layer address: Is included in the neighbor solicitation message.
Workflow
These stages describe how IPv6 neighbor solicitation works.
When a node needs the link-layer address of another node on the same local link, the source node sends a neighbor solicitation message to the solicited-node multicast address of the destination node.
The destination node replies with a neighbor advertisement message on the local link. The source address in the neighbor advertisement message is the IPv6 address of the interface that sends the advertisement. The destination address is the IPv6 address of the node that sent the neighbor solicitation.
The data portion of the neighbor advertisement message includes the link-layer address of the node that sends the advertisement. After the source node receives the neighbor advertisement, the source node and destination node can communicate.
After a link-layer address is known, neighbor solicitation messages can verify reachability. In this case, the destination address in the neighbor solicitation message is the unicast address of the neighbor.
When the link-layer address of a node changes on a local link, neighbor advertisement messages are sent to the all-nodes multicast address.
Neighbor unreachability detection identifies neighbor failures or forward-path failures for neighbors that receive unicast packets. Neighbor unreachability detection is not performed for neighbors that receive multicast packets.
A neighbor is considered reachable when a positive acknowledgment is returned. A positive acknowledgment can come from an upper-layer protocol such as TCP or from a neighbor advertisement message sent in response to a neighbor solicitation message.
When upper-layer acknowledgments are not available, the node probes the neighbor with unicast neighbor solicitation messages. A solicited neighbor advertisement confirms that the forward path still works in both directions.
An unsolicited neighbor advertisement confirms only the one-way path from the source to the destination node. A neighbor advertisement message with the solicited flag set to 0 must not be considered a positive acknowledgment that the forward path still works.
During duplicate address detection, a node sends a neighbor solicitation message with an unspecified source address and a tentative link-local address in the message body. If another node already uses the address, that node returns a neighbor advertisement message that contains the tentative link-local address.
If another node is verifying the same tentative address at the same time, that node returns a neighbor solicitation message. If no neighbor advertisement messages or competing neighbor solicitation messages are received, the node considers the tentative link-local address unique and assigns it to the interface.
Result
Neighbor solicitation and neighbor advertisement messages resolve link-layer addresses, confirm neighbor reachability, and support duplicate address detection on the local link.
IPv6 router advertisement messages
An IPv6 router advertisement message is an ICMP message that
uses Type value 134 in the ICMP packet header
is sent periodically from each configured IPv6 router interface, and
is sent to the all-nodes multicast address.
Message contents
This figure shows the structure of an IPv6 router advertisement message.
Router advertisement messages typically include this information:
One or more on-link IPv6 prefixes that nodes on the local link can use to automatically configure IPv6 addresses.
Lifetime information for each prefix included in the advertisement.
Flags that indicate whether stateless or stateful autoconfiguration can be completed.
Default-router information, including whether the sending router can be used as a default router and the time, in seconds, for which the router can be used as the default router.
Additional host information, such as the hop limit and the MTU that a host should use in packets that it originates.
Router solicitation response
Router advertisement messages are also sent in response to router solicitation messages. A router solicitation message uses Type value 133 in the ICMP packet header.
Hosts send router solicitation messages during system startup so that they can autoconfigure immediately instead of waiting for the next scheduled router advertisement message.
Because router solicitation messages are usually sent during startup before a host has a configured unicast address, the source address is usually the unspecified IPv6 address, 0:0:0:0:0:0:0:0. If the host has a configured unicast address, the source address is the unicast address of the interface that sends the router solicitation message.
The destination address in a router solicitation message is the all-routers multicast address with link scope. When a router advertisement is sent in response to a router solicitation message, the destination address in the router advertisement message is the unicast address of the router solicitation source.
Configurable parameters
You can configure these router advertisement message parameters:
The time interval between periodic router advertisement messages.
The router lifetime value, which indicates the usefulness of a router as the default router for all nodes on a link.
The network prefixes in use on a link.
The time interval between neighbor solicitation message retransmissions on a link.
The amount of time for which a node considers a neighbor reachable on a link.
Configured router advertisement parameters are specific to an interface.
Default behavior and suppression
Router advertisement transmission with default values is automatically enabled on Ethernet and FDDI interfaces. For other interface types, manually enable router advertisement transmission by using the no ipv6 nd suppress-ra command in interface configuration mode.
You can disable router advertisement transmission on individual interfaces by using the ipv6 nd suppress-ra command in interface configuration mode.
From Release 25.4.1, the ipv6 nd suppress-ra command is deprecated. Use the ipv6 nd unsolicited-ra or ipv6 nd solicited-ra command to suppress router advertisement messages.
Prefix length requirement
For stateless autoconfiguration to work properly, the advertised prefix length in router advertisement messages must always be 64 bits.
How IPv6 router advertisements work
A value of 134 in the Type field of the ICMP packet header identifies a router advertisement message. Router advertisement messages are periodically sent out each configured interface of an IPv6 router to the all-nodes multicast address.
Summary
Router advertisement messages can include these parameters:
One or more on-link IPv6 prefixes that nodes on the local link can use to automatically configure IPv6 addresses.
Lifetime information for each advertised prefix.
Flags that indicate the type of autoconfiguration that can be completed.
Default router information, including whether the advertising router should be used as a default router and how long it should be used.
Additional host information, such as the hop limit and MTU that a host should use in originated packets.
The router advertisement parameters are specific to an interface.
Workflow
These stages describe how IPv6 router advertisements work.
An IPv6 router periodically sends router advertisement messages on configured interfaces.
A host can send a router solicitation message, identified by Type value 133, at system startup so that the host can autoconfigure without waiting for the next scheduled router advertisement.
If the host does not have a configured unicast address, the source address in the router solicitation message is usually the unspecified IPv6 address. If the host has a configured unicast address, the source address is the unicast address of the interface that sends the router solicitation message.
The destination address in a router solicitation message is the all-routers multicast address with link scope. When a router advertisement is sent in response to a router solicitation, the destination address in the router advertisement is the unicast source address of the router solicitation message.
Router advertisement messages with default values are automatically enabled on Ethernet and FDDI interfaces. For other interface types, router advertisement messages were manually enabled by using the no ipv6 nd suppress-ra command in interface configuration mode.
Router advertisement messages were disabled on individual interfaces by using the ipv6 nd suppress-ra command in interface configuration mode. From Release 25.4.1, the ipv6 nd suppress-ra command is deprecated. Use the IPv6 ND unsolicited and solicited router advertisement commands instead.
For stateless autoconfiguration to work properly, the advertised prefix length in router advertisement messages must always be 64 bits.
Result
Hosts receive IPv6 prefixes and local-link parameters that support router discovery and stateless address autoconfiguration.
IPv6 neighbor redirect messages
An IPv6 neighbor redirect message is an ICMP message that
uses Type value 137 in the ICMP packet header
is sent by routers to hosts, and
identifies a better first-hop node on the path to a destination.
Structure of an IPv6 neighbor redirect message
This figure displays the structure of an IPv6 neighbor redirect message.
A router must be able to determine the link-local address for each neighboring router so that the target address in a redirect message identifies the neighbor router by its link-local address.
For static routing, specify the next-hop router by using the link-local address of the router. For dynamic routing, IPv6 routing protocols must exchange the link-local addresses of neighboring routers.
Redirect conditions
After forwarding a packet, a router sends a redirect message to the packet source only when these conditions are true:
The destination address of the packet is not a multicast address.
The packet was not addressed to the router.
The packet is about to be sent out the interface on which it was received.
The router determines that a better first-hop node for the packet resides on the same link as the source of the packet.
The source address of the packet is a global IPv6 address of a neighbor on the same link or a link-local address.
Redirect restrictions
A router must not update its routing tables after receiving a neighbor redirect message. Hosts must not originate neighbor redirect messages.
Use the ipv6 icmp error-interval global configuration command to limit the rate at which the router generates IPv6 ICMP error messages, including neighbor redirect messages.
How IPv6 neighbor redirects work
A value of 137 in the Type field of the ICMP packet header identifies an IPv6 neighbor redirect message.
Summary
IPv6 neighbor redirects use these elements:
Router: Sends a redirect message to the source of a packet when a better first-hop node exists on the same link.
Host: Receives the redirect message and can use the better first-hop node for the destination.
Neighbor router link-local address: Identifies the target router in the redirect message.
Workflow
These stages describe how IPv6 neighbor redirects work.
A router determines the link-local address for each neighboring router so that the target address in a redirect message can identify the neighbor router by its link-local address.
After forwarding a packet, a router sends a redirect message to the packet source only when the destination address is not multicast, the packet was not addressed to the router, the packet is about to be sent out the interface on which it was received, and a better first-hop node is on the same link as the source.
The router sends the redirect only when the source address of the packet is a global IPv6 address of a neighbor on the same link or a link-local address.
For static routing, specify the next-hop router by using the link-local address of the router. For dynamic routing, IPv6 routing protocols exchange the link-local addresses of neighboring routers.
A router must not update its routing tables after receiving a neighbor redirect message, and hosts must not originate neighbor redirect messages.
Result
The host can learn a better first-hop node for a destination on the local link.
What’s next
Use the ipv6 icmp error-interval command to limit the rate at which the router generates IPv6 ICMP error messages, including neighbor redirect messages.
IPv6 ND RA suppression and unicast RA messages
IPv6 Neighbor Discovery (ND) router advertisement (RA) control is a traffic-control capability that
suppresses solicited IPv6 ND router advertisement messages, and
enables solicited router advertisement responses to be sent as unicast messages.
Table 3. Feature History Table
Feature Name
Release Information
Feature Description
Suppression of IPv6 ND RA messages and enabling unicast RA messages
Release 25.4.1
Introduced in this release on: Fixed Systems (8200 [ASIC: Q200, P100], 8700 [ASIC: P100, K100]), 8010 [ASIC: A100]); Centralized Systems (8600 [ASIC:Q200]); Modular Systems (8800 [LC ASIC: Q100, Q200, P100])
You can granularly control IPv6 ND RA traffic to reduce network traffic and improve control by
independently suppressing unsolicited and solicited IPv6 ND RA messages and
IPv6 router advertisements inform hosts in the same network about route prefixes, default gateway addresses, router lifetimes, DNS addresses, suggested MTUs, and other network parameters.
Router advertisements allow hosts to obtain network prefixes and program addresses automatically by using stateless address autoconfiguration.
IPv6 router advertisements are part of the Neighbor Discovery Protocol defined in RFC 4861.
Router advertisement message types
Cisco IOS XR software sends these router advertisement message types:
Unsolicited router advertisements: Routers send these messages periodically to announce their presence and network parameters.
Solicited router advertisements: Routers send these messages in response to on-demand router solicitation messages from hosts.
By default, Cisco IOS XR software enables router advertisement transmission on all IPv6 interfaces, except management interfaces.
Deprecated and replacement IPv6 ND RA commands
This table lists the deprecated IPv6 ND router advertisement commands and the replacement commands introduced in Cisco IOS XR Release 25.4.1.
Limitations for IPv6 ND RA suppression and unicast RA message support
Understand these limitations before you suppress IPv6 ND router advertisements or enable unicast router advertisement messages.
Table 5. IPv6 ND RA limitations
Limitation
Details
Default RA state
By default, router advertisements are enabled on all IPv6 interfaces except management interfaces.
Unsolicited RA suppression
Suppressing unsolicited router advertisements stops periodic router advertisement messages. The interface still responds to router solicitations unless you also suppress solicited router advertisements.
Release 25.4.1 subscriber configuration
In Cisco IOS XR Release 25.4.1, the IPv6 ND unsolicited and solicited router advertisement commands are not available through dynamic templates or RADIUS attributes for subscriber interfaces.
All RA messages disabled
If you disable both unsolicited and solicited router advertisements, the interface does not send router advertisements.
VRRP or HSRP edge routers
For VRRP or HSRP, only the master router sends router advertisements. Backup routers ignore router solicitations and do not send router advertisements.
Subscriber BNG interfaces
The IPv6 ND unsolicited and solicited router advertisement configurations are not yet available for subscriber BNG interfaces configured through dynamic templates.
Configure IPv6 ND RA suppression and unicast RA messages
Configure IPv6 ND router advertisement behavior to control router advertisement traffic on an interface.
If you suppress solicited router advertisement messages, enabling unicast solicited router advertisements has no effect because the interface does not send solicited router advertisements.
Procedure
Disable unsolicited router advertisement messages on the interface.