Which type of icmpv6 message would a host send to acquire an ipv6 configuration when booting up

NDP stands for Neighbor Discovery Protocol which is an IPv6 protocol responsible for tasks such as stateless autoconfiguration, address resolution, Neighbor Unreachability Detection (NUD), and Duplicate Address Detection (DAD). It operates at Layer 2, the Data Link Layer, of the OSI model and was developed to improve data transmission efficiency and consistency across multiple networks and processes.

Unlike IPv4, we no longer use Address Resolution Protocol or ARP in IPv6. IPv6 Neighbor Discovery replaces this function.

Neighbor Discovery Protocol Features

Now, let’s discuss the different functions of NDP:

  1. Stateless Address Autoconfiguration (SLAAC) – enables each host on the network to auto-configure its unique IPv6 link-local address and global unicast address without the help of a DHCP server. Link-local addresses can be used to talk with other hosts on the same network, while global unicast addresses are routable on the Internet.
  2. Address Resolution – The basic concepts of address resolution in IPv6 are not all that different from those in IPv4 ARP. Resolution is still dynamic and based on using a cache table that maintains pairings of IPv6 addresses and MAC addresses.
  3. Neighbor Unreachability Detection (NUD) – It detects when a host is no longer reachable.
  4. Duplicate Address Detection (DAD) – It verifies that a unicast IPv6 address is unique before it is assigned to a host interface.

NDP ICMPv6 Message Types

Neighbor Discovery Protocol uses ICMPv6 messages to perform all its functions. Let’s discuss the five different types of ICMPv6:

  1. Router Solicitation – Router Solicitation messages (RS) are sent by hosts when they boot up to find any routers in a local segment and to request that they advertise their presence on the network.
  2. Router Advertisement – Router Advertisement (RA) messages are used by an IPv6 router to advertise its presence on the network. These messages contain information like the router’s IPv6 address and MAC address, MTU, etc.
  3. Neighbor Solicitation Message – Neighbor Solicitation messages (NS) are sent by a host to determine a remote host’s link-layer IPv6 address. The destination address will be the solicited-node multicast address of the remote host. It is also used to verify that a neighbor or remote host is still reachable via a cached link-layer address.
  4. Neighbor Advertisement Message – A host use Neighbor Advertisement messages (NA) to respond to NS message. If a remote host receives an NS message, it sends a NA message back to the sender host. A host also uses this message to announce a link-layer address change.
  5. Redirect – IPv6 routers use this message to notify an originating host of a better next-hop address for a specific destination. Only routers can send unicast traffic redirect messages. Only hosts process redirect messages.

Download our Free CCNA Study Guide PDF for complete notes on all the CCNA 200-301 exam topics in one book.

We recommend the Cisco CCNA Gold Bootcamp as your main CCNA training course. It’s the highest rated Cisco course online with an average rating of 4.8 from over 30,000 public reviews and is the gold standard in CCNA training:

ICMPv6 defined in RFC 4443 is the companion protocol for IPv6 as ICMPv4 is the companion protocol for IPv4. ICMPv6 is used by routers and hosts to report problems when processing IPv6 packets. However, as we will see in chapter The datalink layer and the Local Area Networks, ICMPv6 is also used when auto-configuring addresses.

The traditional utilisation of ICMPv6 is similar to ICMPv4. ICMPv6 messages are carried inside IPv6 packets (the Next Header field for ICMPv6 is 58). Each ICMP message contains an 8 bits header with a type field, a code field and a 16 bits checksum computed over the entire ICMPv6 message. The message body contains a copy of the IPv6 packet in error.

Figure 5.42: ICMP version 6 packet format

ICMPv6 specifies two classes of messages: error messages that indicate a problem in handling a packet and informational messages. Four types of error messages are defined in RFC 4443 :

  • 1 [Destination Unreachable. Such an ICMPv6 message is sent when the destination address of a packet is unreachable. The code field of the ICMP header contains additional information about the type of unreachability. The following codes are specified in RFC 4443]
    • 0: No route to destination. This indicates that the router that sent the ICMPv6 message did not have a route towards the packet’s destination
    • 1: Communication with destination administratively prohibited. This indicates that a firewall has refused to forward the packet towards its destination.
    • 2: Beyond scope of source address. This message can be sent if the source is using link-local addresses to reach a global unicast address outside its subnet.
    • 3: Address unreachable. This message indicates that the packet reached the subnet of the desti- nation, but the host that owns this destination address cannot be reached.
    • 4: Port unreachable. This message indicates that the IPv6 packet was received by the destination, but there was no application listening to the specified port.
  • 2: Packet Too Big. The router that was to send the ICMPv6 message received an IPv6 packet that is larger than the MTU of the outgoing link. The ICMPv6 message contains the MTU of this link in bytes. This allows the sending host to implement Path MTU discovery RFC 1981
  • 3: Time Exceeded. This error message can be sent either by a router or by a host. A router would set code to 0 to report the reception of a packet whose Hop Limit reached 0. A host would set code to 1 to report that it was unable to reassemble received IPv6 fragments.
  • 4: Parameter Problem. This ICMPv6 message is used to report either the reception of an IPv6 packet with an erroneous header field (type 0) or an unknown Next Header or IP option (types 1 and 2). In this case, the message body contains the erroneous IPv6 packet and the first 32 bits of the message body contain a pointer to the error.

Two types of informational ICMPv6 messages are defined in RFC 4443 : echo request and echo reply, which are used to test the reachability of a destination by using ping6(8).

ICMPv6 also allows the discovery of the path between a source and a destination by using traceroute6(8). The output below shows a traceroute between a host at UCLouvain and one of the main IETF servers. Note that this IPv6 path is different than the IPv4 path that was described earlier although the two traceroutes were performed at the same time.

traceroute6 www.ietf.org
traceroute6 to www.ietf.org (2001:1890:1112:1::20) from 2001:6a8:3080:2:217:f2ff:fed6:65c0, 30 ho1 2001:6a8:3080:2::1 13.821 ms 0.301 ms 0.324 ms2 2001:6a8:3000:8000::1 0.651 ms 0.51 ms 0.495 ms3 10ge.cr2.bruvil.belnet.net 3.402 ms 3.34 ms 3.33 ms4 10ge.cr2.brueve.belnet.net 3.668 ms 10ge.cr2.brueve.belnet.net 3.988 ms 10ge.cr2.brueve.bel5 belnet.rt1.ams.nl.geant2.net 10.598 ms 7.214 ms 10.082 ms6 so-7-0-0.rt2.cop.dk.geant2.net 20.19 ms 20.002 ms 20.064 ms7 kbn-ipv6-b1.ipv6.telia.net 21.078 ms 20.868 ms 20.864 ms8 s-ipv6-b1-link.ipv6.telia.net 31.312 ms 31.113 ms 31.411 ms9 s-ipv6-b1-link.ipv6.telia.net 61.986 ms 61.988 ms 61.994 ms10 2001:1890:61:8909::1 121.716 ms 121.779 ms 121.177 ms11 2001:1890:61:9117::2 203.709 ms 203.305 ms 203.07 ms

12 mail.ietf.org 204.172 ms 203.755 ms 203.748 ms

Note: Rate limitation of ICMP messages

High-end hardware based routers use special purpose chips on their interfaces to forward IPv6 packets at line rate. These chips are optimised to process correct IP packets. They are not able to create ICMP messages at line rate. When such a chip receives an IP packet that triggers an ICMP message, it interrupts the main CPU of the router and the software running on this CPU processes the packet. This CPU is much slower than the hardware acceleration found on the interfaces [Gill2004]. It would be overloaded if it had to process IP packets at line rate and generate one ICMP message for each received packet. To protect this CPU, high-end routers limit the rate at which the hardware can interrupt the main CPU and thus the rate at which ICMP messages can be generated. This implies that not all erroneous IP packets cause the transmission of an ICMP message. The risk of overloading the main CPU of the router is also the reason why using hop-by-hop IPv6 options, including the router alter option is discouraged 20.

Interactions between IPv6 and the datalink layer

There are several differences between IPv6 and IPv4 when considering their interactions with the datalink layer. In IPv6, the interactions between the network and the datalink layer is performed using ICMPv6.

First ICMPv6 is used to resolve the datalink layer address that corresponds to a given IPv6 address. This part of ICMPv6 is the Neighbour Discovery Protocol (NDP) defined in RFC 4861. NDP is similar to ARP, but there are two important differences. First, NDP messages are exchanged in ICMPv6 messages while ARP messages are sent as datalink layer frames. Second, an ARP request is sent as a broadcast frame while an NDP solicitation message is sent as a multicast ICMPv6 packet that is transported inside a multicast frame. The operation of the NDP protocol is similar to ARP. To obtain an address mapping, a host sends a Neighbour Solicitation message. This message is sent inside an ICMPv6 message that is placed in an IPv6 packet whose source address is the IPv6 address of the requesting host and the destination address is the all-hosts IPv6 multicast address (FF02::1) to which all IPv6 hosts listen. The Neighbour Solicitation contains the requested IPv6 address. The owner of the requested address replies by sending a unicast Neighbour Advertisement message to the requesting host. NDP suffers from similar security issues as the ARP protocol. However, it is possible to secure NDP by using the Cryptographically Generated IPv6 Addresses (CGA) defined in RFC 3972. The Secure Neighbour Discovery Protocol is defined in RFC 3971, but a detailed description of this protocol is outside the scope of this chapter.

IPv6 networks also support the Dynamic Host Configuration Protocol. The IPv6 extensions to DHCP are defined in RFC 3315. The operation of DHCPv6 is similar to DHCP that was described earlier. In addition to DHCPv6, IPv6 networks support another mechanism to assign IPv6 addresses to hosts. This is the Stateless Address Config- uration (SLAC) defined in RFC 4862. When a host boots, it derives its identifier from its datalink layer address 21 and concatenates this 64 bits identifier to the FE80::/64 prefix to obtain its link-local IPv6 address. It then sends a Neighbour Solicitation with its link-local address as a target to verify whether another host is using the same link-local address on this subnet. If it receives a Neighbour Advertisement indicating that the link-local address is used by another host, it generates another 64 bits identifier and sends again a Neighbour Solicitation. If there is no answer, the host considers its link-local address to be valid. This address will be used as the source address for all NDP messages sent on the subnet. To automatically configure its global IPv6 address, the host must know the globally routable IPv6 prefix that is used on the local subnet. IPv6 routers regularly send ICMPv6 Router Adver- tisement messages that indicate the IPv6 prefix assigned to each subnet. Upon reception of this message, the host can derive its global IPv6 address by concatenating its 64 bits identifier with the received prefix. It concludes the SLAC by sending a Neighbour Solicitation message targeted at its global IPv6 address to ensure that another host is not using the same IPv6 address.

Source: Olivier Bonaventure, //s3.amazonaws.com/saylordotorg-resources/wwwresources/site/wp-content/uploads/2012/02/Computer-Networking-Principles-Bonaventure-1-30-31-OTC1.pdf

This work is licensed under a Creative Commons Attribution 3.0 License.

Page 2

Learn new skills or earn credit towards a degree at your own pace with no deadlines, using free courses from Saylor Academy. We're committed to removing barriers to education and helping you build essential skills to advance your career goals. Start learning here, or check out our full course catalog.

Log in or Sign up to enroll in courses, track your progress, gain access to final exams, and get a free certificate of completion!

    • The internet has become one of the most important components of our life. We browse the web, check e-mails, make VoIP phone calls, and have video conferences via computers. All of these applications are made possible by networking computers together, and this complex network of computers is usually referred to as the Internet. This course is designed to give you a clear understanding of how networks, from in-home local area networks, or LANs, to the massive and global Internet, are built and how they allow us to use computers to share information and communicate with one another.

      Unit 1 introduces you to an explanation of what computer networks are as well as to some basic terminology fundamental to understanding computer networks. You will also familiarize yourself with the concept of layers, which compose the framework around which networks are built. Next, Unit 2 explains the concept of protocols. A computer communication (or network) protocol defines rules and conventions for communication between network devices.

      The rest of the course implements a top-down approach to teach you the details about each layer and the relevant protocols used in computer networks. Beginning in Unit 3, you will explore the concept of application layer protocols, which include the Domain Name System, e-mail protocols, and the Hypertext Transfer Protocol. Unit 3 ends with an overview of how to use socket programming to develop network applications. In Unit 4, you will learn transport layer protocols, including the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). You will go on to study the network layer Internet Protocol (IP) and packet routing protocols in Unit 5. Next is Unit 6, which is devoted to a discussion on link layer protocols, and the course concludes with an overview of voice and video protocols, network security, and cloud computing in Unit 7.

      As you move through the course, take time to notice how the layers build on top of one another and work together to create the amazing tool of computer networks, which many of us depend upon daily.

      First, read the course syllabus. Then, enroll in the course by clicking "Enroll me in this course". Click Unit 1 to read its introduction and learning outcomes. You will then see the learning materials and instructions on how to use them.

Skip Activities
Skip Recent activity

No recent activity

Page 3

Learn new skills or earn credit towards a degree at your own pace, with no deadlines, using free courses from Saylor Academy. We're committed to removing barriers to education and helping you build essential skills to advance your career goals. Choose a course below, or check out our full course catalog.

Log in or Sign up to enroll in courses, track your progress, gain access to final exams, and get a free certificate of completion!

Toplist

Latest post

TAGs