2008-10-17 4 views
15

Es scheint fast magisch. Was macht der traceroute-Befehl, um den gesamten Pfad zu einem anderen Knoten im Internet abzubilden?Wie funktioniert Traceroute?

+0

[Wie funktioniert trace Arbeit?] (http://www.tek-tips.com/faqs.cfm?fid=381) – thijs

Antwort

22

Traceroute sendet Pakete mit kleinen TTL (Time To Live) -Werte. Das TTL ist ein IP-Header-Feld, das verwendet wird, um zu verhindern, dass Pakete in Endlosschleifen laufen. Wenn ein Router, der das Paket behandelt, einen von der TTL des Pakets subtrahiert. Das Paket läuft ab und es wird verworfen, wenn die TTL Null erreicht.

Traceroute sendet ICMP Time Exceeded-Nachrichten (RFC 792) zurück an den Absender, wenn dies auftritt. Durch die Verwendung kleiner TTL-Werte verfallen die Pakete schnell, sodass Traceroute bewirkt, dass alle Router entlang des Paketpfads die ICMP-Nachrichten generieren, die den Router identifizieren.

Zum Beispiel TTL = 1 sollte die Nachricht von dem ersten Router erzeugen, TTL = 2 erzeugt eine Nachricht von dem zweiten Router auf dem Pfad, und so weiter ...

+0

bedeutet dies, dass Sie eine Traceroute von Hop 5 starten können, indem Sie ttl = 5 – webly

+0

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

26

traceroute setzt das Feld TTL (Time To LIve) auf 1 und erhöht es für jeden Hop. Die Router, die die Nachricht empfangen, dekrementieren diesen Wert und wenn sie 0 erreichen, antworten sie auf eine Nachricht, dass die TTL Null erreicht hat. Mit dieser Antwort kennt der Kunde, wer dazwischen ist. tun Sie dies iterativ bis Ihr Ziel und Sie haben die (mindestens eine von ihnen) Route