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:
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.

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.

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.

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.

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.

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.