Traceroute não funciona no Linux, no Windows não

7

Sou usuário do Linux Mint. Eu corri traceroute no Linux e tracert no Windows. No Linux, eu só tenho asteriscos. Tudo parece funcionar bem no Windows. Aqui estão as saídas

Windows:

LinuxMint:

Por que isso está acontecendo e há algo que eu possa fazer para resolver esse problema?

    
por Luigi 16.04.2013 / 20:38

1 resposta

12

Um motivo provável para a diferença é que, por padrão, o tracert do Windows usa o ICMP, enquanto o Linux traceroute é padronizado para o UDP. Usar a opção -I para traceroute deve produzir os mesmos resultados que tracert :

traceroute -w 10 -I google.it

Da documentação de traceroute :

In the modern network environment the traditional traceroute methods can not be always applicable, because of widespread use of firewalls. Such firewalls filter the "unlikely" UDP ports, or even ICMP echoes. To solve this, some additional tracerouting methods are implemented (including tcp), see LIST OF AVAILABLE METHODS below. Such methods try to use particular protocol and source/destination port, in order to bypass firewalls (to be seen by firewalls just as a start of allowed type of a network session).

LIST OF AVAILABLE METHODS

In general, a particular traceroute method may have to be chosen by -M name, but most of the methods have their simple cmdline switches (you can see them after the method name, if present).

default

The traditional, ancient method of tracerouting. Used by default.

Probe packets are udp datagrams with so-called "unlikely" destination ports. The "unlikely" port of the first probe is 33434, then for each next probe it is incremented by one. Since the ports are expected to be unused, the destination host normally returns "icmp unreach port" as a final response. (Nobody knows what happens when some application listens for such ports, though).

    
por 16.04.2013 / 21:03

Tags