What does N * * * mean in traceroute output?

17,551

Solution 1

It shows that waiting for the ICMP "Time exceeded" (TTL expired) message timed out.

This can happen at the end of the line, if routing was ultimately unsuccessful (perhaps the destination machine is turned off), or at any point along the route, if the router at that hop does not generate ICMP "Time exceeded" notifications. Honoring the TTL is mandatory, but notifying the originator that a packet was discarded due to TTL reaching zero is optional.

Solution 2

It means that the packet timed out, by default waittime is 5 seconds, and if response is not received in that time it shows asterisk, and jumps to a next hop. It could time out because that router on that hop is blocking traffic, or because it can't find the route to the next hop IP.

You can use -w to increase the timeout period.

-w waittime
              Set the time (in seconds) to wait for a response to a probe (default 5.0 sec).

You can also try to use different protocols, to switch between UDP, ICMP, and TCP, as sometimes routers will block one, but allow some other type of protocol.

   -I     Use ICMP ECHO for probes

   -T     Use TCP SYN for probes

   -U     Use UDP datagrams for probes (it is default). Only UDP method is allowed for unprivileged users.

Solution 3

All implementations of traceroute rely on ICMP packets being sent to the originator.

This program attempts trace route by launching UDP probe packets with a small ttl then listening for an ICMP "time exceeded" reply from a gateway.

Share:
17,551

Related videos on Youtube

Bulat M.
Author by

Bulat M.

Updated on September 18, 2022

Comments

  • Bulat M.
    Bulat M. almost 2 years

    Wanted to perform simple trace for learning purposes:

    traceroute google.com
    

    It gave me among another lines some lines that look like the following

    ...
    15  * * *
    16  * * *
    17  * * *
    ... few similar lines
    

    What does it mean?

  • Bulat M.
    Bulat M. over 7 years
    1. "or because it can't find the route to the next hop IP", if it cannot find route, how it passes the traffic further(traceroute shows several lines after "* * *" line? What is the default protocol used?
  • Ben Voigt
    Ben Voigt over 7 years
    Traceroute packets always have TTL expire, that's how it works. TTL has units of hops, not seconds.
  • Bulat M.
    Bulat M. over 7 years
    Time exceeded means that no more hops left to hop via routers along the path?
  • Bulat M.
    Bulat M. over 7 years
    As I understand it is not about time, but about hosts?
  • Bulat M.
    Bulat M. over 7 years
    Mistyped, should be hops.
  • Ben Voigt
    Ben Voigt over 7 years
    What normally happens is that the traceroute program sends out a UDP packet with a low TTL and watches for an ICMP response. That response might never come, if some router along the path blocks ICMP (firewall) or simply doesn't generate them. For that reason, traceroute doesn't wait forever for the reply, but a configurable timeout (clock time, not hops), before trying the next packet
  • Bulat M.
    Bulat M. over 7 years
    And what is the default protocol used to send queries?
  • ralz
    ralz over 7 years
    traceroute on linux uses UDP by default, but you can switch to other protocols, tracert on windows uses ICMP, traceroute works for 30 hops max, and will not stop sooner, unless reply is received from final hop, it reaches destination in less then 30 hops, it send packets with TTL incremented by one for each hop, and hops are the one that do the routing to next hop.