10.2 IPv6 Neighbor Discovery
A major difference between IPv4 and IPv6 involves how IPv6 hosts learn their own addresses and learn about their neighbors, including other hosts and routers. Neighbor Discovery Protocol, also known as ND or NDP, facilitates this and other key functions. ND is defined in RFC 2461. The remainder of this section introduces ND functionality, lists its main features, and then lists the related ICMPv6 messages, which are beyond the scope of the exam but are useful for study and reference.
In IPv6 networks, ND Protocol uses ICMPv6 messages and solicited-node multicast addresses for its core functions, which center on discovering and tracking other IPv6 hosts on connected interfaces. ND is also used for address autoconfiguration.
Major roles of IPv6 ND include the following:
Stateless address autoconfiguration (detailed in RFC 2462)
Duplicate address detection (DAD)
Router discovery
Prefix discovery
Parameter discovery (link MTU, hop limits)
Neighbor discovery
Neighbor address resolution (replaces ARP, both dynamic and static)
Neighbor and router reachability verification
ND uses five types of ICMPv6 messages to do its work as shown below:
ND Functions in IPv6
Message Type | Information Sought or Sent | Source Address | Destination Address | ICMP Type, Code |
---|---|---|---|---|
Router Advertisement (RA) | Routers advertise their presence and link prefixes, MTU, and hop limits. | Router's link-local address | FF02::1 for periodic broadcasts; address of querying host for responses to an RS | 134, 0 |
Router Solicitation (RS) | Hosts query for the presence of routers on the link. | Address assigned to querying interface, if assigned, or :: if not assigned | FF02::2 | 133, 0 |
Neighbor Solicitation (NS) | Hosts query for other nodes' link-layer addresses. Used for duplicate address detection and to verify neighbor reachability. | Address assigned to querying interface, if assigned, or :: if not assigned | Solicited-node multicast address or the target node's address, if known | 135, 0 |
Neighbor Advertisement (NA) | Sent in response to NS messages and periodically to provide information to neighbors. | Configured or automatically assigned address of originating interface | Address of node requesting the NA or FF02::1 for periodic advertisements | 136, 0 |
Redirect | Sent by routers to inform nodes of better next-hop routers. | Link-local address of originating node | Source address of requesting node | 137, 0 |
Neighbor Advertisements
IPv6 nodes send Neighbor Advertisement (NA) messages periodically to inform other hosts on the same network of their presence and link-layer addresses.
Neighbor Solicitation
IPv6 nodes send NS messages to find the link-layer address of a specific neighbor. This message is used in three operations:
Duplicate address detection
Neighbor reachability verification
Layer 3 to Layer 2 address resolution (as a replacement for ARP)
IPv6 does not include ARP as a protocol but rather integrates the same functionality into ICMP as part of neighbor discovery. The response to an NS message is an NA message.