| Type of | Status | Code | Message | Data (length, bit) |
|---|
| 0 | | 0 | Echo reply | | ID (16) | Sequence Number (16) | | Data (variable) |
|
| 12 | not used | | Reserved | |
| 3 | | Destination unreachable | | Not used (32) | | IP Header, Start of Source Datagram (64) |
|
| 0 | Network unreachable |
| one | Node Unreachable |
| 2 | Protocol unreachable |
| 3 | Port unreachable |
| four | Fragmentation is needed, but its prohibition flag (DF) is set |
| five | Invalid route from source |
| 6 | Destination network unknown |
| 7 | Destination node unknown |
| eight | Source node isolated |
| 9 | The network is administratively banned |
| ten | Node administratively denied |
| eleven | Network unavailable for ToS |
| 12 | Node unavailable for ToS |
| 13 | Communications are administratively prohibited |
| 14 | Violation of node preference order |
| 15 | Actively clipping preference order |
| four | outdated | 0 | Source containment (source shutdown during queue overflow) |
| five | | Redirection | | Router Address (32) | | IP Header, Start of Source Datagram (64) |
|
| 0 | Forwarding packets to the network |
| one | Forwarding packets to a host |
| 2 | Redirection for each type of service (ToS) |
| 3 | Forwarding a packet to a node for each type of service |
| 6 | outdated | 0 | Alternate host address | |
| 7 | not used | | Reserved | |
| eight | | 0 | Echo request | | ID (16) | Sequence Number (16) | | Data (variable) |
|
| 9 | | 0 | Router Announcement | | Number of Addresses (8) | Item Size (8) | Validity (16) | | Address [1] (32) | | Preference [1] (32) | | ... | | Address [N] (32) | | Preference [N] (32) |
|
| ten | | 0 | Router Request | |
| eleven | | Datagram expired | | Not used (32) | | IP Header, Start of Source Datagram (64) |
|
| 0 | Package Life Time (TTL) expired during shipping |
| one | Package expired while assembling fragments |
| 12 | | Invalid parameter (problem with datagram parameters: error in IP-header or missing option) |
| 0 | Pointer indicates an error | | Pointer (8) | Not used (24) | | IP Header, Start of Source Datagram (64) |
|
| one | Missing required option | | Not used (32) | | IP Header, Start of Source Datagram (64) |
|
| 2 | Incorrect length |
| 13 | | 0 | Timestamp Request | | ID (16) | Sequence Number (16) | | Start Time (32) | | Reception Time (32) | | Dispatch Time (32) |
|
| 14 | | 0 | Timestamped Answer |
| 15 | outdated | 0 | Information request | | ID (16) | Sequence Number (16) |
|
| sixteen | outdated | 0 | Informational answer |
| 17 | outdated | 0 | Address mask request | | ID (16) | Sequence Number (16) | | Mask (32) |
|
| 18 | outdated | 0 | Response to an address mask request |
| nineteen | reserved | | Reserved (for security) | |
| 20-29 | reserved | | Reserved (for error tolerance experiments) | |
| thirty | outdated | Route trace | | ID (16) | Not used (16) | | The number of hopes of the outgoing packet (16) | The number of hopes of the return package (16) | | Link Speed (32) | | MTU Communication Lines (32) |
|
| 0 | Outgoing packet sent successfully |
| one | No path for outgoing packet found, packet destroyed |
| 31 | outdated | Datagram conversion error | | Pointer (32) | | IP header and transport protocol of the source datagram |
|
| 0 | Unknown or unspecified error |
| one | Unable to convert option |
| 2 | Unknown Required Option |
| 3 | Unsupported Required Option |
| four | Unsupported Transport Protocol |
| five | Exceeded full length |
| 6 | IP Header Length Exceeded |
| 7 | The transport protocol number is greater than 255 |
| eight | Out of range port number |
| 9 | Transport protocol header length exceeded |
| ten | Cross the 32-bit boundary and set the ACK bit |
| eleven | Unknown required transport protocol option |
| 32 | outdated | | Mobile site redirection | |
| 33 | outdated | | IPv6 Where-Are-You | |
| 34 | outdated | | IPv6 I-Am-Here (I'm here) | |
| 35 | outdated | | Redirect request for mobile site | |
| 36 | outdated | | Respond to a redirect request for a mobile site | |
| 37 | outdated | | Domain Name Request | |
| 38 | outdated | | Response to a domain name request | |
| 39 | outdated | | SKIP algorithm discovery ICMP message | |
| 40 | | Photuris | |
| 0 | Reserved |
| one | Unknown Security Settings Index |
| 2 | Security settings are correct, but authentication failed |
| 3 | Security settings are correct, but decryption failed |
| four | Authentication Required |
| five | Authorization required |
| 41 | experimental | | | |
| 42-252 | | | Reserved | |
| 253-254 | experimental | | Reserved for RFC 3692 experiments | |
| 255 | reserved | | Reserved | |