title: Why does traceroute expect "Destination Unreachable" at the final hop instead of "Echo Reply" when it runs over UDP?
body: <p>Excerpt from implementation section of Wikipedia page for <a href="https://en.wikipedia.org/wiki/Traceroute" rel="nofollow noreferrer">traceroute</a>:</p>
  <blockquote>
  <p>. . . until the destination is reached and returns an ICMP Destination
  Unreachable message if UDP packets are being used or an ICMP Echo
  Reply message if ICMP Echo messages are being used.</p>
  </blockquote>
  <p>It says that at the final hop traceroute is expecting ICMP &quot;Destination Unreachable&quot; when it I was expecting it to use an ICMP &quot;Echo Reply&quot;.</p>
  <p>I saw the history of the page and it was changed by a person named 'Guy Harris'. He says:</p>
  <blockquote>
  <p>. . . If you use UDP packets, as traceroute does by default, the final hop returns ICMP Destination Unreachable (unless you're unlucky enough to have send a UDP packet to a port with a listener), not ICMP Echo Reply.</p>
  </blockquote>
  <p>Can somebody please throw some light to this?</p>