ICMP – Destination Unreachable Message

This ICMP message is quite interesting, because it doesn’t actually contain one message, but six! This means that the ICMP Destination unreachable further breaks down into 6 different messages.

We will be looking at them all and analyzing a few of them to help you get the idea.

The ICMP Destination Unreachable Message

Code Value in ICMP Header



Net Unreachable


Host Unreachable


Protocol Unreachable


Port Unreachable


Fragmentation Needed and DF set


Source Route Failed

Note: Codes 0, 1, 4 and 5 may be received from a gateway.
Codes 2 and 3 may be received from a host

To make sure you don’t get confused, keep one thing in mind: The ICMP Destination unreachable is a generic ICMP message, the different code values or messages which are part of it are there to clarify the type of “Destination unreachable” message was received. It goes something like this: ICMP Destination <Code \value or message> unreachable.

The ICMP – Destination net unreachable message is one which a user would usually get from the gateway when it doesn’t know how to get to a particular network.

The ICMP – Destination host unreachable message is one which a user would usually get from the remote gateway when the destination host is unreachable.

If, in the destination host, the IP module cannot deliver the packet because the indicated protocol module or process port is not active, the destination host may send an ICMP destination protocol / port unreachable message to the source host.

In another case, when a packet received must be fragmented to be forwarded by a gateway but the “Don’t Fragment” flag (DF) is on, the gateway must discard the packet and send anICMP destination fragmentation needed and DF set unreachable message to the source host.

These ICMP messages are most useful when trying to troubleshoot a network. You can check to see if all routers and gateways are configured properly and have their routing tables updated and synchronised.