Explanation of ICMP message types
Network error reporting
- Destination Unreachable, Echo Reply
- Sent by a router when it cannot deliver an IP datagram. A datagram is the unit of data, or packet, transmitted in a TCP/IP network.
- Source Quench
- Sent by a host or router if it is receiving data too quickly for it to handle. The message is a request that the source reduce its rate of datagram transmission.
- Time Exceeded
- Sent by a router if the datagram has reached the maximum limit of routers through which it can travel.
- Parameter Problem
- Sent by a router if a problem occurs during the transmission of a datagram such that it cannot complete processing. One potential source of such a problem is invalid datagram header.
Network troubleshooting
- Echo Request, Echo Reply
- Used to test destination accessibility and status. A host sends an Echo Request and listens for a corresponding Echo Reply. This is most commonly done using the ping command.
IPv4 network address and routing configuration
- Redirect
- Sent by a router if it receives a datagram that should have been sent to a different router. The message contains the address to which the source should direct future datagrams. This is used to optimize the routing of network traffic.
- Router Advertisement, Router Solicitation
- Allow hosts to discover the existence of routers. Routers periodically broadcast their IP addresses via Router Advertisement messages. Hosts may also request a router address by broadcasting a Router Solicitation message to which a router will reply with a Router Advertisement.
- Timestamp Request, Timestamp Reply
- Used to synchronize the clocks between hosts and to estimate transit time.
- Information Request, Information Reply
- Obsolete. These messages were used earlier by hosts to determine their inter-network addresses, but are now considered outdated and should not be used.
- Address Mask Request, Address Mask Reply
- Used to find the mask of the subnet (i.e. what address bits define the network). A host sends an Address Mask Request to a router and receives an Address Mask Reply in return.