Qual é a diferença entre tracepath e traceroute ou são iguais?


11

Eu vejo dois comandos dando saída semelhante, mas não tenho idéia se existe uma diferença entre os dois ou não. Por exemplo

[$] tracepath debian.org                                                                                                           
 1?: [LOCALHOST]                      pmtu 1500
 1:  _gateway                                              0.819ms 
 1:  _gateway                                              0.780ms 
 2:  _gateway                                              0.751ms pmtu 1400
 2:  ???                                                  43.462ms 
 3:  ???                                                  43.907ms asymm  4 
 4:  ???                                                  48.361ms 
 5:  ???                                                  46.492ms 
 6:  ???                                                  48.009ms asymm 10 
 7:  ???                                                  74.740ms asymm  9 
 8:  ix-ae-4-2.tcore1.CXR-Chennai.as6453.net              69.183ms asymm 10 
 9:  if-ae-13-2.tcore1.SVW-Singapore.as6453.net          285.982ms asymm 17 
10:  if-et-23-2.hcore2.KV8-Chiba.as6453.net              204.874ms 
11:  10ge4-5.core1.pao1.he.net                           298.418ms asymm 15 
12:  isc.gige-g4-17.core1.pao1.he.net                    299.967ms asymm 14 
13:  debian.org                                          307.865ms reached
     Resume: pmtu 1400 hops 13 back 14 

e

[$] traceroute debian.org                                                                                                          
    traceroute to debian.org (149.20.4.15), 30 hops max, 60 byte packets
     1  _gateway (192.168.1.1)  0.538 ms  1.083 ms  1.474 ms
     2  117.195.64.1 (117.195.64.1)  26.240 ms  28.890 ms  31.076 ms
     3  218.248.164.82 (218.248.164.82)  34.412 ms  37.050 ms  39.784 ms
     4  218.248.235.197 (218.248.235.197)  45.841 ms  47.977 ms  50.955 ms
     5  218.248.235.198 (218.248.235.198)  52.842 ms  56.184 ms  57.904 ms
     6  61.246.195.185 (61.246.195.185)  61.216 ms  62.437 ms 115.113.165.93.static-mumbai.vsnl.net.in (115.113.165.93)  64.571 ms
     7  172.17.169.202 (172.17.169.202)  94.358 ms 125.62.187.214 (125.62.187.214)  145.327 ms *
     8  ix (180.87.36.9)  48.755 ms  54.609 ms  56.072 ms
     9  if (180.87.36.83)  274.598 ms 100ge4-1.core1.nyc4.he.net (72.52.92.166)  309.468 ms  310.433 ms
    10  100ge14-1.core1.sjc2.he.net (184.105.81.213)  295.462 ms  295.832 ms if (180.87.67.33)  198.356 ms
    11  10ge4 (72.52.92.69)  299.283 ms  304.763 ms  297.574 ms
    12  isc.gige (72.52.94.70)  310.593 ms  313.728 ms  286.095 ms
    13  debian.org (149.20.4.15)  274.097 ms if-ae-7-2.tcore1.PDI-Palo-Alto.as6453.net (209.58.86.74)  259.125 ms debian.org (149.20.4.15)  279.229 ms

Enquanto eu entendo que ambos podem ter tomado rotas diferentes, embora tivessem o mesmo número de saltos. Eu vejo que o último / segundo traceroute fornece um pouco mais de informações sobre os servidores intermediários, ou seja, em vez de apenas fornecer os números IP estáticos, forneça o nome / URL se alguém quiser endereçar ou descobrir o endereço intermediário.

Para o que vale a pena, aqui estão os dois pacotes / comandos -

[$] dpkg -L iputils-tracepath | grep /usr/bin/tracepath                                                                            
/usr/bin/tracepath

e

[$] traceroute: /usr/bin/traceroute.db

Eu li as páginas de manual e, pelo menos para o tracepath, ele diz que o principal é fornecer o MTU e, se meu palpite estiver correto, esse MTU é provavelmente o gateway do meu ISP que ele compartilha como PMTU (não tenho certeza do que o P apoia)

 _gateway                                              0.751ms pmtu 1400

todas as outras conexões são assimétricas, o que significa que são propensas a alterações.

Atualização - O link compartilhado pelo comentarista parece ter algumas informações desatualizadas.

Até onde eu sei, nenhum dos comandos precisa ser mais root -

[$] which traceroute                                                                                                               
/usr/bin/traceroute

[$] which tracepath                                                                                                                
/usr/bin/tracepath

Foi sugerido em um dos links compartilhados no askubuntu.com para https://www.techwalla.com/articles/differences-between-traceroute-tracepath que o traceroute possui alguns comandos mais avançados

Infelizmente, essa página da Web está desatualizada, então não tenho certeza de quão boa ou ruim ela se mantém hoje.

[$] aptitude show traceroute | grep Version                                                                                        
Version: 1:2.1.0-2

[$] aptitude show iputils-tracepath | grep Version                                                                                 
Version: 3:20161105-1

Seria bom se alguém pudesse comparar entre os dois e compartilhar algumas das conclusões.

Também alguém poderia compartilhar dos comandos avançados que o traceroute pode fazer, mas o tracepath não?

Ansioso para saber.


Respostas:


5

tracerouteé o comando tradicional do UNIX. tracepathé um comando mais recente que foi adicionado ao suporte para detectar a MTU. Como tracerouteagora tem uma opção --mtu e pode ser executado como um usuário comum, eu nem me importo em instalar tracepathem minhas máquinas.

Se você quiser tentar algo mais sofisticado e útil do que qualquer um deles, experimente mtr( apt install mtr-tiny). É como uma combinação de traceroute e ping. Em particular, considero o stripchart --displaymode 1muito útil para diagnosticar exatamente onde estão ocorrendo problemas de rede.

                             My traceroute  [v0.87]
            example.lan                           Sun Mar 25 00:07:50 2017

                                       Packets                Pings
Hostname                            %Loss  Rcv  Snt  Last Best  Avg  Worst
 1. example.lan                        0%   11   11     1    1    1      2
 2. ae-31-51.ebr1.Chicago1.Level3.n   19%    9   11     3    1    7     14
 3. ae-1.ebr2.Chicago1.Level3.net      0%   11   11     7    1    7     14
 4. ae-2.ebr2.Washington1.Level3.ne   19%    9   11    19   18   23     31
 5. ae-1.ebr1.Washington1.Level3.ne   28%    8   11    22   18   24     30
 6. ge-3-0-0-53.gar1.Washington1.Le    0%   11   11    18   18   20     36
 7. 63.210.29.230                      0%   10   10    19   19   19     19
 8. t-3-1.bas1.re2.yahoo.com           0%   10   10    19   18   32    106
 9. p25.www.re2.yahoo.com              0%   10   10    19   18   19     19
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.