11-08-2011 02:04 AM - edited 03-01-2019 04:44 PM
As defined in RFC 2461 of IETF, the Neighbor Discovery is a key protocol of IPv6. Neighbor Discovery Protocol is an umbrella that defines these mechanisms:
Neighbour Discovery (ND) is for end hosts predominately, whereas routers themselves advertise gateway capabilities via Router Advertisements (RA). This mechanism rely on ICMPv6 Type 133 and 134. NS/ND’s can be triggered with pings when using routers.
ICMPv6 TypeName of Message
Type 133 | Router Solicitation (RS) |
Type 134 | Router Advertisement (RA) |
Type 135 | Neighbor Solicitation (NS) |
Type 136 | Neighbor Advertisement (NA) |
Type 137 | Redirect Message |
The table 1-A, shows the ICMPv6 messages that are used by NDP mechanisms. ARP subsitution uses neighbor solicitation (ICMPv6 Type 135) and neighbor advertisement (ICMPv6 Type 136) messages. Prefix advertisemnet and prefix renumbering use router solicitaion (ICMPv6 Type 133) and router advertisement (ICMPv6 Type 134) messages. DAD uses neighbor solicitation. Router redirection uses redirect messages (ICMPv6 137).
MechanismICMPv6 Type 133
ICMPv6 Type 134
ICMPv6 Type 135
ICMPv6 Type 136
ICMPv6 Type 137
Replacement Of ARP | X | X | |||
Prefix Advertisement | X | X | |||
Prefix Renumbering | X | X | |||
DAD | X | ||||
Router Redirection | X |
On Cisco devices, parameters of NDP and the mechanisms under it's umbrella are controlled by using the ipv6 nd command.
Multicast Address and ICMPV6 Addresses used by NDP for replacing ARP
To verify the neighbor adjancy enteries in the neighbor discovery table use the command, "show ipv6 neighbors [ipv6-address-or-name | interface_type interface_number]"
This section describes in detail how neighbor solicitation messages, neighbor advertisement messages, and solicited-node multicast addresses are used in IPv6 to replace ARP. Then, Cisco IOS Software commands related to neighbor solicitation and neighbor advertisement are explained.
Following is the neighbor discovery process (refer Figure A)
Learned link-layer addresses are kept in a neighbor discovery table (neighbor cache). Therefore, the nodes can communicate on the local link. The neighbor solicitation message is also used by nodes to verify the reachability of neighbor nodes in the neighbor discovery table (neighbor cache). However, the unicast addresses of the neighbor nodes are used as destination IPv6 addresses in ICMPv6 messages instead of solicited-node multicast addresses in this situation. It is possible for a node that changes its link-layer address to inform all other neighbor nodes on the local link by sending a neighbor advertisement message using the all-nodes multicast address FF02::1 . The neighbor discovery table of the nodes on the local link is updated with the new linklayer address.
Figure A
Router#show ipv6 neighbors
IPv6 Address Age Link-layer Addr State Interface FE80::221:A0FF:FEC1:3D80 0 0021.a0c1.3d80 REACH Gi0/1.1 2607:F3B0:252:6::1 0 0021.a0c1.3d80 REACH Gi0/1.1
Here is another example of WireShark Capture from Router R1 (Fa0/0) interface, explaining Neighbour Discovery.
Two Routers R1 and R2 are connected via interface FastEthernet 0/0.
R1(Fa0/0) ----------- (Fa0/0) R2
R1 (Fa 0/0)
2012::1
R2 (Fa 0/0) | 2012::2 |
Implementing IPv6 Addressing and Basic Connectivity
IETF: Neighbor Doscovery For IP Version 6 (IPv6)
IPv6 Frequenty Asked Questions (FAQ's)
Excellent post... I like packet captures.
HI ,
if we have 2 routers connected to the same network , one PC joined this network , for sure Router solicitation and advertising will happen , which router is chosen as Default gateway and why ??
Thank you
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: