Information About ICMP for IPv6
ICMP for IPv6
Internet Control Message Protocol (ICMP) in IPv6 functions the same as ICMP in IPv4. ICMP generates error messages, such as ICMP destination unreachable messages, and informational messages, such as ICMP echo request and reply messages. Additionally, ICMP packets in IPv6 are used in the IPv6 neighbor discovery process, path MTU discovery, and the Multicast Listener Discovery (MLD) protocol for IPv6. MLD is used by IPv6 devices to discover multicast listeners (nodes that want to receive multicast packets destined for specific multicast addresses) on directly attached links. MLD is based on version 2 of the Internet Group Management Protocol (IGMP) for IPv4.
A value of 58 in the Next Header field of the basic IPv6 packet header identifies an IPv6 ICMP packet. ICMP packets in IPv6 are like a transport-layer packet in the sense that the ICMP packet follows all the extension headers and is the last piece of information in the IPv6 packet. Within IPv6 ICMP packets, the ICMPv6 Type and ICMPv6 Code fields identify IPv6 ICMP packet specifics, such as the ICMP message type. The value in the Checksum field is derived (computed by the sender and checked by the receiver) from the fields in the IPv6 ICMP packet and the IPv6 pseudoheader. The ICMPv6 Data field contains error or diagnostic information relevant to IP packet processing. The figure below shows the IPv6 ICMP packet header format.
Error and Informational Messages
ICMP for IPv6 generates error messages and informational messages. This section lists the possible error and informational messages.
Error Messages
Error Message |
Type Field Value |
Code Field |
Description |
---|---|---|---|
Destination Unreachable Message |
1 |
0 - No route to destination 1 - Communication with the destination is administratively prohibited, such as a firewall filter 2 - Not assigned 3 - Address unreachable 4 - Port unreachable |
A Destination Unreachable message (Type 1) is generated in response to a packet that can not be delivered to its destination address for reasons other than congestion. The reasons for the non-delivery of a packet is described by code field value. |
Packet Too Big Message |
2 |
0 |
A Packet Too Big message is sent in response to a packet that it cannot forward because the packet is larger than the Maximum Transmission Unit (MTU) of the outgoing link. |
Time Exceeded Message |
3 |
0 - Hop limit exceeded in transit 1 - Fragment reassembly time exceeded |
If a router receives a packet with a hop limit of zero, or a router decrements a packet's hop limit to zero, it must discard the packet and send an ICMPv6 Time Exceeded message with Code 0 to the source of the packet. This indicates either a routing loop or an initial hop limit value that is too small. |
Parameter Problem Message |
4 |
0 - Erroneous header field encountered 1 - Unrecognized next header type encountered 2 - Unrecognized IPv6 option encountered |
A Parameter Problem message is generated in response to an IPv6 packet with problem in its IPv6 header, or extension headers, such the node cannot process the packet and must discard it. |
Informational Messages
ICMPv6 Information message |
Type Field value |
Code Field value |
Description |
---|---|---|---|
Echo Request Message |
128 |
0 |
Used to check and troubleshoot connectivity using the IPv6 ping command. |
Echo Reply Message |
129 |
0 |
This message is generated in response to an echo request message. |