Top Qs
Linha do tempo
Chat
Contexto

Traceroute

Da Wikipédia, a enciclopédia livre

Remove ads

traceroute é uma ferramenta de diagnóstico[1] que rastreia a rota de um pacote através de uma rede de computadores que utiliza os protocolos IP e o ICMP, implementada pela primeira vez por Van Jacobson[2] em 1988. Atualmente está disponível em diversos sistemas operacionais como Linux[3], FreeBSD[4], NetBSD[5], MacOS X[6] e Windows[7].

Thumb
Resultado da execução da ferramenta traceroute no FreeBSD

Seu funcionamento está baseado no uso do campo Time to Live (TTL) do pacote IPv4[8] destinado a limitar o tempo de vida dele. Este valor é decrementado a cada vez que o pacote é encaminhado por um roteador. Ao atingir o valor zero o pacote é descartado e o originador é alertado por uma mensagem ICMP TIME_EXCEEDED. Através da manipulação do campo TTL de uma série de datagramas UDP é possível receber esta mensagem de cada um dos roteadores no caminho do pacote[2][3]. Para o caso do IPv6 é utilizado o campo hop limit, o limite de saltos dos datagramas desta versão do protocolo[9]. A implementação disponível no Microsoft Windows utiliza apenas pacotes ICMP[2].

As páginas de manual atribuem a autoria da ferramenta a Van Jacobson que fez a implementação segundo a sugestão de Steve Deering. Também destacam as colaborações de C. Philip Wood, Tim Seaver e Ken Adelman[4][5]. Segundo Mike Muuss, autor da ferramenta ping, o traceroute foi implementado utilizando o suporte que ele mesmo codificou no kernel ao escrever o ping[10].

Remove ads

Como o traceroute funciona

Resumir
Perspectiva

Cada salto em uma rota de rede pode envolver diferentes dispositivos. Os mais comuns são Roteador, mas também podem incluir Switch (redes), Firewall e Proxy.

Por exemplo, se você está usando seu computador no Brasil para se conectar a um servidor em Nova York, ao executar o Traceroute, ele mostrará todo o caminho percorrido. Cada salto será contabilizado, junto com o tempo gasto em cada um, até chegar ao destino internacional.

Etapa 1 - Envio de Pacotes: O Traceroute envia pacotes ICMP Echo Request (ou UDP, em algumas versões) para o endereço IP de destino.

Etapa 2 - TTL (Time to Live): O primeiro pacote tem o valor TTL ajustado para 1. O TTL é um campo que indica o número máximo de saltos que o pacote pode realizar.

Etapa 3 - Primeiro Roteador: Quando o pacote atinge o primeiro roteador, ele diminui o valor do TTL em 1. Quando o TTL chega a 0, o roteador descarta o pacote e envia uma mensagem ICMP Time Exceeded de volta ao remetente.

Etapa 4 - Registro de Informações: O Traceroute registra o endereço IP do roteador que respondeu e o tempo que levou para receber essa resposta.

Etapa 5 - Incremento do TTL: O processo se repete, com o Traceroute enviando um novo pacote, mas agora com o TTL aumentado em 1. Isso continua até o pacote alcançar o destino final ou um limite máximo de saltos.

Etapa 6 - Destino Alcançado: Quando o pacote finalmente chega ao destino, o servidor responde com uma mensagem ICMP Echo Reply. O Traceroute registra essa resposta e exibe o caminho completo percorrido pelo pacote.

Etapa 7 - Exibição dos Resultados: Ao final do processo, o Traceroute apresenta uma lista de todos os roteadores intermediários e os tempos de resposta, permitindo que o usuário veja o trajeto e identifique possíveis pontos de latência ou problemas na conexão.

Remove ads

Sintaxe do comando

No Windows:

tracert wikipedia.com

No Linux ou FreeBSD:

traceroute wikipedia.com

Alternativas ao traceroute

O Traceroute é uma ferramenta que, embora ainda útil, é considerada relativamente antiga em comparação com soluções mais modernas de diagnóstico de rede.

O PingPlotter é uma ferramenta que combina a funcionalidade de ping e traceroute, permitindo visualizar o desempenho da rede em tempo real. Ele apresenta os resultados em gráficos, o que facilita a identificação de problemas de latência e perda de pacotes ao longo do tempo, proporcionando uma visão mais clara e intuitiva do comportamento da rede em comparação com o formato de lista do traceroute.

O My Traceroute é uma ferramenta que combina as funções do traceroute e do ping, fornecendo informações detalhadas sobre cada salto em tempo real. Ele exibe não apenas o caminho dos pacotes, mas também estatísticas contínuas de perda de pacotes e tempos de resposta, permitindo monitorar a qualidade da conexão de forma mais dinâmica. Essa abordagem proporciona uma análise mais aprofundada e atualizada, tornando o WinMTR mais eficiente na identificação de problemas em comparação ao traceroute, que fornece dados estáticos em uma única execução.

Referências

  1. Stevens, William Richard. Unix Network Programming (em inglês). 1. [S.l.]: Addison Wesley. p. 62. ISBN 0131411551
  2. Sloan, Joseph D. Network Troubleshooting Tools (em inglês). [S.l.]: O'Reilly. ISBN 059600186X
  3. «traceroute(8) - Linux man page». die.net. Consultado em 17 de abril de 2012
  4. «TRACEOURTE(8)». FreeBSD. Consultado em 17 de abril de 2012
  5. «TRACEROUTE(8)». NetBSD. Consultado em 17 de abril de 2012. Cópia arquivada em 28 de julho de 2014
  6. «Tracert». Microsoft. Consultado em 17 de abril de 2012
  7. Stevens, William Richard. Unix Network Programming (em inglês). 1. [S.l.]: Addison Wesley. p. 215. ISBN 0131411551
  8. Stevens, William Richard. Unix Network Programming (em inglês). 1. [S.l.]: Addison Wesley. p. 755. ISBN 0131411551
  9. «The Story of the PING Program». Página de Mike Muuss. Consultado em 17 de abril de 2012
Remove ads

Ligações externas

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads