Wenn Sie herausfinden müssen, wohin Ihre Pakete gehen, nachdem sie Ihren Linux-Computer verlassen haben, ist Traceroute unter Linux Ihr Freund.
Traceroute ist ein praktisches Dienstprogramm, das in fast jeder Linux-Distribution enthalten ist und verfolgt, welche Router Ihre Netzwerkpakete über ein Netzwerk durchlaufen. Dieses Dienstprogramm ist praktisch für die Fehlerbehebung oder für die einfache Netzwerkplanung.
Nicht jede Linux-Distribution enthält dasselbe Paket für
traceroute
Befehl. Einige Distributionen verwenden das Legacy-Paket inetutils, das Traceroute als Teil einer Suite von Netzwerktools enthält, während andere ein modernes Paket traceroute.x86_64 haben.
Verwandt:Verwendung von Traceroute in Windows 10 (Tracert)
Prüfen von Traceroute-Parametern
Schauen wir uns zunächst an, was mit dem Linux-Traceroute-Befehl möglich ist.
Öffnen Sie ein Terminal und geben Sie den Befehl traceroute -?
ein um auf die Handbuchseite zuzugreifen:
Usage: traceroute [OPTION...] HOST
Print the route packets trace to network host.
-f, --first-hop=NUM set initial hop distance, i.e., time-to-live
-g, --gateways=GATES list of gateways for loose source routing
-I, --icmp use ICMP ECHO as probe
-m, --max-hop=NUM set maximal hop count (default: 64)
-M, --type=METHOD use METHOD (`icmp' or `udp') for traceroute
operations, defaulting to `udp'
-p, --port=PORT use destination PORT port (default: 33434)
-q, --tries=NUM send NUM probe packets per hop (default: 3)
--resolve-hostnames resolve hostnames
-t, --tos=NUM set type of service (TOS) to NUM
-w, --wait=NUM wait NUM seconds for response (default: 3)
-?, --help give this help list
--usage give a short usage message
-V, --version print program version
Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.
Report bugs to .
Wie Sie oben sehen können, haben Sie viele Optionen, um die Funktionsweise von Traceroute zu optimieren.
Grundlegende Traceroute-Funktionalität
Obwohl Sie Parameter zum Optimieren von Traceroute haben, benötigen Sie nicht alle. Sie können tatsächlich einfach Traceroute ausführen und den Host angeben, zu dem verfolgt werden soll. Sobald Sie dies getan haben, sendet Traceroute unter Linux, wie Sie unten sehen können, ein 60-Byte-Paket und folgt jedem Hop, der zum Erreichen des Zielhosts erforderlich ist.
Es ist in der Lage, diese Sprünge zu verfolgen, indem es eine Lebensdauer (TTL) für jedes Paket verwendet, die es jedes Mal um eins verringert, um zu erkennen, wann das Paket nicht mehr empfangen wird.
Wissen Sie, dass Traceroute eine maximale Anzahl von Hops hat. Es geht nur bis zu maximal 30 Sprüngen.
Hinzufügen von Schaltern für präziseres Tracking
Die Standardfunktionalität von Traceroute unter Linux funktioniert gut, aber Sie können noch so viel mehr tun. Lassen Sie uns nun viele der beliebtesten und nützlichsten Schalter behandeln, die Ihnen zur Verfügung stehen.
Hops mit dem First-Hop-Switch ausschließen
Ein hilfreicher Befehl schließt bestimmte Router aus dem Trace aus. Mit -f
oder --first-hop=NUM
Parameter können Sie bestimmte Router von der Anzeige ausschließen. Dies kann sehr nützlich sein, wenn Sie sicher sind, dass ein oder mehrere Router keine Probleme verursachen.
Sie können auch den -f
verwenden Schalter, um die Ablaufverfolgung so einzustellen, dass sie hinter Ihrem Netzwerkperimeter beginnt, um mögliche Ursachen für Latenzen im Internet einzugrenzen.
Im folgenden GIF sehen Sie den Befehl traceroute -f 3 google.com
laufend. Dieser Befehl überspringt die ersten drei Router und umgeht so mein Heimnetzwerk und meinen ISP-Router. Beachten Sie, dass die ersten beiden Hops fehlen.
Es dauert 15 Sprünge, um www.google.com von meinem Netzwerk aus dem obigen Beispiel zu erreichen. Sie sehen:
- Hop-Anzahl
- Hostname oder IP des Routers entlang des verfolgten Pfads
- Antwortzeiten wie bisher
Möglicherweise sehen Sie in der Ausgabe zusätzliche Schnittstellen für einige Hoffnungen. Dies wird erwartet.
Hop-Begrenzung mit dem Max-Hop-Switch
Nehmen wir nun an, Sie möchten nicht nur die ersten beiden Hops überspringen, sondern auch den Pfad bis zum fünften Hop in der Route. Hier würden Sie den -m
verwenden oder --max-hop=NUM
Schalterparameter.
Geben Sie traceroute -m 5 -f 3 http://www.google.com
ein in Ihr Terminal und drücken Sie die Eingabetaste. Dieser Befehl ist sicherlich nützlich, um potenzielle Routing-Probleme einzugrenzen. Traceroute überspringt jetzt die ersten beiden Hops und stoppt beim fünften Hop.
Reduzieren der mit dem Schalter -Q gesendeten Testpakete
Traceroute unter Linux sendet standardmäßig drei Prüfpakete an jeden Router im Pfad. Vielleicht möchten Sie die Zeit traceroute
verkürzen dauert zu laufen. Sie können die Anzahl der Testpakete ändern, die an jeden Router gesendet werden, indem Sie den -q
verwenden Parameter.
Geben Sie traceroute -q -m 5 -f 3 www.google.com
ein in Ihr Terminal ein und drücken Sie Enter . Darunter sehen Sie traceroute
sendet nur ein Paket, da wir nur eine Antwortzeit pro Hop erhalten.
Sie können auch erhöhen die Anzahl der pro Hop gesendeten Prüfpakete, aber mit Angabe eines Arguments für -q
Parameter wie unten gezeigt. Eine Erhöhung der gesendeten Pakettests könnte helfen, indem sie eine Möglichkeit bieten, die Antwortzeiten für jeden Hop zu durchschnittlichen.
Zusammenfassung
In diesem Artikel über Traceroute für Linux haben Sie die Grundlagen der Verwendung dieses praktischen Dienstprogramms gelernt. Mit diesem Befehl können Sie noch so viel mehr tun. Wenn Sie lernen möchten, wie Sie jeden Schalter verwenden, lesen Sie unbedingt die Manpage.