Home · Kontakt · Impressum
contents index previous up next
Next: 18.3.3 netstat Up: 18.3 Diagnosewerkzeuge Previous: 18.3.1 Bist du da?


18.3.2 Wegverfolgung: traceroute

Das Programm traceroute ist im Prinzip eine erweiterte Form des Befehls ping. Es ermöglicht den Weg eines Pakets über die Router zu seinem Ziel zu verfolgen. Im Gegensatz zu ping, daß auf ICMP beruht, benutzt traceroute das Protokoll UDP.

Die Arbeitsweise ist recht einfach. Der Befehl sendet einfach 3 Pakete auf willkürlich ausgewählte Ports des Zielrechners. Dabei wird inständig gehofft, daß auf mindestens einem der Port kein Server lauscht. Um den Weg zu verfolgen, wird der ersten Paketserie nur eine Time To Live von 1 mitgegeben. Beim ersten Router wird dieser Wert auf 0 gesetzt und der Router sendet ein Paket vom Typ ICMP-TIME-EXCEEDED als IP-Paket zurück. Dieses Paket enthält die IP-Nummer des Routers, die dann ausgegeben wird. Die zweite Paketserie bekommt eine TTL von 2 und wird daher erst beim zweiten Router verworfen. Die dritte Serie bekommt eine TTL von 3 und so geht der ganze Spaß weiter bis der Zielrechner erreicht wurde. Dieser sendet nun ein Paket vom Typ PORT-UNREACHABLE zurück und zeigt damit an, daß das Ziel erreicht wurde.

traceroute [OPTIONEN] HOST

Der einfache Aufruf von traceroute mit eine Zieladresse zeigt die Liste der Router, über die ein Paket zum Zielhost geleitet wird.

linux37:~ # traceroute www.fibel.org
traceroute to www.fibel.org (193.254.185.32), 30 hops max, 40 byte packets
 1  217.89.70.62  0.247 ms   0.117 ms   0.116 ms
 2  217.89.70.125  0.287 ms   0.274 ms   0.271 ms
...

Eine Auswahl von Optionen, die traceroute unterstützt, finden Sie in der folgenden Liste.

Optionen
-f TTL TTL für die erste Paketserie (Standard: 1)
-I INTERFACE Kommunikation erfolgt über das angegeben Interface
-m MAXHOPS Maximale Anzahl von getesteten Sprüngen
-n Es erfolgt eine Namensauflösung für die Router
-p PORT Startnummer für die zu testenden Ports (Standard: 33434)
-w SEKUNDEN Wartezeit zwischen den Paketserien
-q PAKETE Anzahl der zu sendenden Pakete (Standard: 3)
 

Die zu testenden Ports werden durch eine einfache Regel bestimmt. Dabei wird ein Anfangsport genommen (Standard: 33434) und auf den Port wird die Nummer des Hops addiert und eins abgezogen. Diese Form der Portbestimmung kann zu Problemen führen, wenn der ausgewählte Port vom Rechner benutzt wird. Sie können daher mit der Option -p die Anfangsportnummer festsetzen.

linux37:~ # traceroute -p 25000 www.fibel.org
traceroute to www.fibel.org (193.254.185.32), 30 hops max, 40 byte packets
 1  217.89.70.62  0.247 ms   0.117 ms   0.116 ms
 2  217.89.70.125  0.287 ms   0.274 ms   0.271 ms
...

Sollte es zu einem Timeout durch eine Zeitverzögerung des Pakete kommen, wird anstatt der Zeit eine Asterisk (*) angezeigt. Dies kann durch zu hohe Netzlast oder durch eine Firewall verursacht werden. Einige Router antworten auch nicht mehr auf traceroute-Pakete.


contents index previous up next
Next: 18.3.3 netstat Up: 18.3 Diagnosewerkzeuge Previous: 18.3.1 Bist du da?
  © 2004 by IT-Dozent Ole Vanhoefer · Zum Seitenanfang