Um Guia para Executar o Traceroute no Linux

Se você precisa descobrir para onde seus pacotes estão indo depois de sair do seu computador Linux, o traceroute é seu amigo.

O traceroute é uma ferramenta útil que está presente em quase todas as distribuições Linux e que rastreia quais roteadores seus pacotes de rede percorrem em uma rede. Essa ferramenta é útil para solução de problemas ou para planejamento simples de rede.

Nem todas as distribuições do Linux contêm o mesmo pacote para o comando traceroute. Algumas distribuições usam o pacote legado inetutils, que contém o traceroute como parte de um conjunto de ferramentas de rede, enquanto outras têm um pacote moderno traceroute.x86_64.

Relacionado: Como usar o Traceroute no Windows 10 (Tracert)

Inspecionando os parâmetros do Traceroute

Para começar, vamos verificar o que é possível com o comando traceroute no Linux.

Abra um terminal e digite o comando traceroute -? para acessar a página do manual:

Usage: traceroute [OPTION...] HOST
Print the route packets trace to network host.

  -f, --first-hop=NUM        set initial hop distance, i.e., time-to-live
  -g, --gateways=GATES       list of gateways for loose source routing
  -I, --icmp                 use ICMP ECHO as probe
  -m, --max-hop=NUM          set maximal hop count (default: 64)
  -M, --type=METHOD          use METHOD (`icmp' or `udp') for traceroute
                             operations, defaulting to `udp'
  -p, --port=PORT            use destination PORT port (default: 33434)
  -q, --tries=NUM            send NUM probe packets per hop (default: 3)
      --resolve-hostnames    resolve hostnames
  -t, --tos=NUM              set type of service (TOS) to NUM
  -w, --wait=NUM             wait NUM seconds for response (default: 3)
  -?, --help                 give this help list
      --usage                give a short usage message
  -V, --version              print program version

Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.

Report bugs to <bug-inetutils@gnu.org>.

Como você pode ver acima, você tem muitas opções para ajustar como o traceroute funciona.

Funcionalidade básica do Traceroute

Embora você tenha parâmetros para ajustar o traceroute, na verdade, você não precisa de todos eles. Na verdade, você pode simplesmente executar o traceroute e fornecer o host para rastrear. Uma vez que você faça isso, como você pode ver abaixo, o traceroute no Linux envia um pacote de 60 bytes e segue cada salto que ele faz para chegar ao host de destino.

Ele é capaz de rastrear esses saltos usando um tempo de vida (TTL) em cada pacote, decrementando-o em um a cada vez para detectar quando o pacote não é mais recebido.

Traceroute to google.com

Saiba que o traceroute tem um número máximo de saltos. Ele só vai até 30 saltos no máximo.

Adicionando comutadores para um rastreamento mais preciso

A funcionalidade padrão do traceroute no Linux funciona bem, mas há muito mais que você pode fazer. Vamos agora cobrir muitos dos comutadores mais populares e úteis que você tem disponíveis.

Excluindo saltos com o comutador do primeiro salto

Um comando útil exclui determinados roteadores do rastreamento. Usando o parâmetro -f ou --first-hop=NUM, você pode excluir determinados roteadores da exibição. Isso pode ser muito útil se você tiver certeza de que um ou mais roteadores não estão causando problemas.

Você também pode usar o comutador -f para definir o rastreamento para iniciar após o perímetro da sua rede, a fim de reduzir as possíveis causas de latência na Internet.

No seguinte GIF, você pode ver o comando traceroute -f 3 google.com sendo executado. Este comando está pulando os três primeiros roteadores, evitando assim a minha rede doméstica e o roteador do provedor de serviços de Internet. Observe que os dois primeiros saltos estão ausentes.

traceroute -f example

São necessários 15 saltos para alcançar www.google.com a partir da minha rede, conforme o exemplo acima. Você vê:

  • contagem de saltos
  • nome do host ou IP do roteador ao longo do caminho sendo rastreado
  • tempos de resposta como antes

Você pode ver interfaces adicionais para alguns saltos na saída. Isso é esperado.

Limitando Saltos com o Parâmetro de Interruptor Max-Hop

Agora, vamos supor que, além de pular os dois primeiros saltos, você também deseja o caminho até o quinto salto na rota. É aí que você usaria o parâmetro de interruptor -m ou --max-hop=NUM.

Digite traceroute -m 5 -f 3 http://www.google.com no seu terminal e pressione Enter. Este comando certamente é útil para estreitar potenciais problemas de roteamento. O Traceroute agora pula os dois primeiros saltos e para no quinto salto.

Traceroute skipping hops

Reduzindo os Pacotes de Sonda Enviados com o Interruptor -Q

O Traceroute no Linux, por padrão, envia três pacotes de sonda para cada roteador no caminho. Talvez você queira reduzir o tempo que o traceroute leva para ser executado. Você pode alterar o número de pacotes de sonda enviados para cada roteador usando o parâmetro -q.

Digite traceroute -q -m 5 -f 3 www.google.com no seu terminal e pressione Enter. Você pode ver abaixo que traceroute está enviando apenas um pacote porque estamos recebendo apenas um tempo de resposta por salto.

traceroute -q 6 example

Você também pode aumentar o número de pacotes de sonda enviados por salto também especificando um argumento para o parâmetro -q conforme mostrado abaixo. Aumentar as sondas de pacotes enviados pode ajudar fornecendo uma maneira de calcular os tempos de resposta médios para cada salto.

Argument for -q Parameter

Resumo

Neste artigo sobre Traceroute para Linux, você aprendeu o básico sobre o uso deste utilitário útil. Há muito mais que você pode fazer com este comando. Se você gostaria de aprender a usar cada opção, certifique-se de verificar a página do manual.

Source:
https://adamtheautomator.com/traceroute-linux/