The informational and error messages found in ICMPv6 are very similar to the control and error messages implemented by ICMPv4. However, ICMPv6 has new features and improved functionality not found in ICMPv4. ICMPv6 messages are encapsulated in IPv6.
ICMPv6 includes four new protocols as part of the Neighbor Discovery Protocol (ND or NDP).
Messaging between an IPv6 router and an IPv6 device, including dynamic address allocation, is as follows:
• Router Solicitation (RS) message
• Router Advertisement (RA) message
Messaging between IPv6 devices, including duplicate address detection and address resolution, is as follows:
• Neighbor Solicitation (NS) message
• Neighbor Advertisement (NA) message
Note
ICMPv6 ND also includes the Redirect message, which has a similar function to the Redirect message used in ICMPv4.
RA messages are sent by IPv6-enabled routers every 200 seconds to provide addressing information to IPv6-enabled hosts. The RA message can include addressing information for the host such as the prefix, prefix length, DNS address, and domain name. A host using Stateless Address Autoconfiguration (SLAAC) sets its default gateway to the link-local address of the router that sent the RA.
In Figure 29-2, R1 sends the following RA message to FF02::1, the all-nodes multicast address that will reach PC1:
Figure 29-2 RA Message
An IPv6-enabled router also sends out an RA message in response to an RS message. In Figure 29-3, PC1 sends an RS message to determine how to receive its IPv6 address information dynamically. R1 replies to the RS message with an RA message. The exchange goes something like this:
1. PC1 sends an RS message: “Hi, I just booted up. Is there an IPv6 router on the network? I need to know how to get my IPv6 address information dynamically.”
2. R1 replies with an RA message: “Hi, all IPv6-enabled devices. I’m R1, and you can use SLAAC to create an IPv6 global unicast address. The prefix is 2001:db8:acad:1::/64. By the way, use my link-local address fe80::1 as your default gateway.”
Figure 29-3 RS Message
When a device is assigned a global IPv6 unicast or link-local unicast address, it may perform duplicate address detection (DAD) to ensure that the IPv6 address is unique. To check the uniqueness of an address, the device sends an NS message with its own IPv6 address as the targeted IPv6 address, as shown in Figure 29-4. The NS message from PC1 states, in effect, “Will whoever has the IPv6 address 2001:db8:acad:1::10 send me your MAC address?”
Figure 29-4 NS Message
If another device on the network has this address, it responds with an NA message, which notifies the sending device that the address is in use. If a corresponding NA message is not returned within a certain amount of time, the unicast address is unique and acceptable for use.
Note
DAD is not required, but RFC 4861 recommends that DAD be performed on unicast addresses.
Address resolution is used when a device on the LAN knows the IPv6 unicast address of a destination but does not know its Ethernet MAC address. To determine the MAC address for the destination, the device sends an NS message to the solicited node address. The message includes the known (targeted) IPv6 address. The device that has the targeted IPv6 address responds with an NA message containing its Ethernet MAC address.
In Figure 29-5 shows an example of address resolution: R1 sends an NS message to 2001:db8:acad:1::10 asking for its MAC address.
1. R1 sends an address resolution NS message: “Will whoever has the IPv6 address 2001:db8:acad:1::10 send me your MAC address?”
2. PC1 replies with an NA message: “I’m 2001:db8:acad:1::10 and my MAC address is 00:aa:bb:cc:dd:ee.”
Figure 29-5 NA Message
Check Your Understanding—ICMP Messages (29.1.6)
Refer to the online course to complete this activity.