2008-10-17 24 views
15

Parece casi mágico. ¿Qué está haciendo el comando traceroute para trazar la ruta completa a algún otro nodo en Internet?¿Cómo funciona traceroute?

+0

[¿Cómo funciona el traceroute?] (http://www.tek-tips.com/faqs.cfm?fid=381) – thijs

Respuesta

22

Traceroute transmite paquetes con valores TTL (Time To Live) pequeños. El TTL es un campo de encabezado IP que se usa para evitar que los paquetes se ejecuten en bucles infinitos. Cuando un enrutador que maneja el paquete resta uno del TTL del paquete. El paquete expira y se descarta cuando el TTL llega a cero.

Traceroute envía mensajes ICMP Time Exceeded, (RFC 792), de vuelta al remitente cuando esto ocurre. Mediante el uso de pequeños valores TTL, los paquetes expirarán rápidamente, por lo que traceroute hace que todos los enrutadores a lo largo de la ruta de un paquete generen los mensajes ICMP que identifican al enrutador.

Por ejemplo, TTL = 1 debe producir el mensaje desde el primer router, TTL = 2 genera un mensaje del segundo router en el camino, y así sucesivamente ...

+0

significa que puede iniciar un traceroute desde el salto 5 especificando ttl = 5 – webly

+0

http://www.tek-tips.com /faqs.cfm?fid=381 –

26

traceroute establece el campo TTL (Time To LIve) en 1 y lo incrementa para cada salto. los enrutadores que reciben el mensaje disminuyen este valor y cuando llega a 0 responden un mensaje de que el TTL ha llegado a cero. Con esta respuesta, el cliente sabe quién está en el medio. Haga esto iterativamente hasta su destino y obtenga la (al menos una de ellas) ruta