Internet Control Message Protocol version 6 (ICMPv6) is the new implementation of the Internet Control Message Protocol (ICMP) that is part of Internet Protocol version 6 (IPv6). The ICMPv6 protocol is defined in RFC 4443.


ICMPv6 is a multipurpose protocol. It performs such things as:

  • error reporting in packet processing
  • diagnostic functions
  • Neighbor Discovery process
  • IPv6 multicast membership reporting


It is also designed as a framework to use extensions for use with future implementations and changes. Examples of extensions that have already been written for ICMPv6:

  • Neighbor Discovery Protocol (NDP) – a node discovery protocol in IPv6 which replaces and enhances functions of ARP.
  • Secure Neighbor Discovery Protocol (SEND) – an extension of NDP with extra security.
  • Multicast Router Discovery (MRD) – allows discovery of multicast routers.
  • ICMPv6 messages use IPv6 packets for transportation and can include IPv6 extension headers. ICMPv6 includes some of the functionality that in IPv4 was distributed among protocols such as ICMPv4, ARP (Address Resolution Protocol), and IGMP (Internet Group Membership Protocol version 3).
  • ICMPv6 has simplified the communication process by eliminating obsolete messages. ICMPv6 messages are subdivided into two classes: error messages and information messages. Error Messages are divided into four categories:
  • Destination Unreachable
  • Time Exceeded
  • Packet Too Big
  • Parameter Problems
  • Information messages are divided into three groups:
  • Diagnostic messages
  • Neighbor Discovery messages
  • Messages for the management of multicast groups.

ICMPv6 Types and Codes

ICMPv6 has a number of messages that are identified by the “Type” field. Some of these types have assigned “Code” fields as well. The table below shows the different types of ICMP Types with their associated codes if there are any.

Type codes 0 − 127 are error messages and type codes 128 − 255 are for information messages.


ICMPv6 Types and Codes


Type # Type Name Code





0 – no route to destination


1 – communication with destination administratively pro- hibited


2 – beyond scope of source address


3 – address unreachable


4 – port unreachable


5 – source address failed ingress/egress policy


6 – reject route to destination


7 – Error in Source Routing Header




Destination Unreachable




Packet Too Big






Time Exceeded


0 – hop limit exceeded in transit

    1 – fragment reassembly time exceeded



Parameter Problem


0 – erroneous header field encountered


1 – unrecognized Next Header type encountered


2 – unrecognized IPv6 option encountered




Private Experimentation




Private Experimentation


102 –







Reserved for expansion if ICMPv6 error messages




Echo Request




Echo Replay




Multicast Listener Query



Type #      Type Name                                     Code

131            Multicast Listener Report

132            Multicast Listener Done

133            Router Solicitation

134            Router Advertisement

135            Neighbor Solicitation

136            Neighbor Advertisement

137            Redirect Message

0 – Router Renumbering Command

138            Router Renumbering

1 – Router Renumbering Result

255 – Sequence Number Reset

139            ICMP Node Information Query          0 – The Data field contains an IPv6 address which is the

Subject of this Query.

1 – The Data field contains a name which is the Subject of this Query, or is empty, as in the case of a NOOP.

2 – The Data field contains an IPv4 address which is the

Subject of this Query.

140            ICMP Node Information Response

0 – A successful reply. The Reply Data field may or may not be empty.

1 – The Responder refuses to supply the answer. The

Reply Data field will be empty.

2 – The Qtype of the Query is unknown to the Responder. The Reply Data field will be empty.

141            Inverse Neighbor Discovery Soli- citation Message

142            Inverse Neighbor Discovery Advert- isement Message

143            Version 2 Multicast Listener Report

144            Home Agent Address Discovery

Request Message


Type #      Type Name                                     Code

145            Home Agent Address Discovery

Reply Message

146            Mobile Prefix Solicitation

147            Mobile Prefix Advertisement

148            Certification Path Solicitation Mes- sage

149            Certification Path Advertisement



ICMP messages utilized by exper- imental mobility protocols such as Seamoby

151            Multicast Router Advertisement

152            Multicast Router Solicitation

153            Multicast Router Termination

154            FMIPv6 Messages

155            RPL Control Message

156            ILNPv6 Locator Update Message

157            Duplicate Address Request

158            Duplicate Address Confirmation

159 −



200            Private experimentation

201            Private experimentation

255            Reserved for expansion of ICMPv6 informational messages

This entry was posted in FortiOS 5.4 Handbook and tagged on by .

About Mike

Michael Pruett, CISSP has a wide range of cyber-security and network engineering expertise. The plethora of vendors that resell hardware but have zero engineering knowledge resulting in the wrong hardware or configuration being deployed is a major pet peeve of Michael's. This site was started in an effort to spread information while providing the option of quality consulting services at a much lower price than Fortinet Professional Services. Owns PacketLlama.Com (Fortinet Hardware Sales) and Office Of The CISO, LLC (Cybersecurity consulting firm).

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.