ICMP error message specifying that an IP packet was unable to be delivered due to time constraints or similar problems. There are two possible codes:
  • Code 0: Time to Live (TTL) exceeded in transit (ICMP_TIMXCEED_INTRANS)
  • Code 1: Fragmentation Reassembly Time Exceeded (ICMP_TIMXCEED_REASS)
ICMP_TIMXCEED_REASS means that the host exceeded the time allocated to reassemble a the fragments of a packet. This is quite rare, so I won't elaborate.

TTL exceeded error messages usually mean one of two things:

  • You initialized the TTL to be too low. This is usually done on purpose as part of a traceroute. Setting the TTL to be k lets you know the kth hop along a path.
  • A routing loop has occurred. This is actually the reason the TTL field exists. The TTL ensures that instead of this packet looping forever in the network (or until a router drops it), it dies in a reasonable time frame).