Como funciona o traceroute ?

Traceroute é um algoritmo definido pela rfc1393. Contudo antes de sabermos como funciona o traceroute é necessário entendermos o que é TTL (Time To Live). TTL significa o tempo de vida de um pacote na rede, cada vez que um pacote passa por um roteador o TTL é decrementado em uma unidade. Pode ocorrer de uma rede entrar em loop por erro de configuração no roteador ou defeito, então esse pacote fica eternamente circulando na rede. Para que isso não ocorra o TTL é fundamental pois quando chegar a zero o roteador descarta o pacote. Outro uso do TTL é descobrir quantos roteadores têm até um determinado host, sendo essa a função do traceroute.

Como funciona o traceroute

O traceroute envia 3 pacotes com o TTL igual a 1. O primeiro hop responde que o pacote não pode ser transmitido porque TTL expirou com a mensagem ICMP Time-to-Live Exceeded (Type 11). Então o pacote é reenviado com TTL igual a 2 e o segundo roteador responde que o TTL expirou. Este processo continua até o destino ser encontrado.
Com o traceroute conseguimos somente o caminho de ida até o destino, não sendo possível obter o caminho de retorno que pode ser diferente.

Testando o traceroute

A resposta do traceroute mostra três tempos, isso é porque quando um roteador é encontrado o mesmo é testado três vezes. Já quando aparece como resposta * * * significa que esse roteador não respondeu que o TTL expirou.
Existem muitas opções que podem ser usadas com o traceroute, como por exemplo, usar o protocolo tcp em vez de icmp. Para saber mais sobre as opções consulte man traceroute.
Se você é programador C e quiser ver como o traceroute é implementado, vale a pena baixar os fontes e analisar o código. É uma experiência e tanto!
Existe um programa chamado VisualRoute. Esse programa traça a rota sobre o mapa mundi informando o país onde está cada roteador até o destino.
Até Mais...

Fonte: http://petryx.blogrs.com.br/2008/08/31/como-funciona-traceroute/

.