Traceroute
ist ein Computernetzwerk-Diagnosebefehl zum Anzeigen möglicher Routen (Pfade) und zum Messen von Transitverzögerungen von Paketen über ein Internet Protocol (IP)-Netzwerk. Die Historie der Route wird als Umlaufzeit der Pakete aufgezeichnet, die von jedem aufeinanderfolgenden Host (entfernten Knoten) in der Route (Pfad) empfangen werden; Die Summe der mittleren Zeiten in jedem Hop ist ein Maß für die Gesamtzeit, die zum Herstellen der Verbindung aufgewendet wird. Es zeigt Ihnen auch, wie Systeme miteinander verbunden sind, sodass Sie sehen können, wie sich Ihr ISP mit dem Internet verbindet und wie das Zielsystem verbunden ist. Traceroute wird fortgesetzt, es sei denn, alle (normalerweise drei) gesendeten Pakete gehen mehr als zweimal verloren; dann geht die Verbindung verloren und die Route kann nicht ausgewertet werden.
Wenn Sie eine Verbindung zu einem Remotecomputer (IP) oder einer Domäne herstellen, geht Ihr Datenverkehr immer über verschiedene Netzwerkcomputer wie Router und Switches. Es ist die Aufgabe dieser Router und Switches, zu steuern, wie Ihre Aktivität ihr Ziel erreicht.
Verwendung:
Die Traceroute
Befehle können verwendet werden, indem Sie diese in Ihr Terminal eingeben:
traceroute [Optionen]traceroute Domaintraceroute IP-Adresse
Beispiele:
traceroute citizix.comtraceroute 192.168.101.10
[email protected]:~# traceroute www.citizix.comtraceroute zu www.citizix.com (172.67.197.111), max. 30 Sprünge, 60-Byte-Pakete 1 vlan130vrrpmlag06.ikoula.com (178.170.10.252) 0,185 ms 0,136 ms 0,134 ms 2 be3.rc1.ikdc2.ikoula.com (213.246.32.128) 0,600 ms 0,422 ms be3.rc2.ikdc2.ikoula.com (213.246.32.142) 0,601 ms 3 be2.rc1.ikdc2.ikoula.com (213.246.32.132) 2,734 ms 2,661 ms 2,645 ms 4 et-t1.core15.rb.ikoula.com (213.246.32.135) 3,121 ms cloudflare.par.franceix.net (37.49.237.49) 3,578 ms et-t1.core15. rb.ikoula.com (213.246.32.135) 3,067 ms 5 cloudflare.par.franceix.net (37.49.237.49) 3,801 ms 172.67.197.111 (172.67.197.111) 2,983 ms 2,973 ms
Installation
Die Traceroute
und tracert
Befehle werden normalerweise nicht standardmäßig installiert. Diese Anleitung zeigt Ihnen, wie Sie es in diesen Linux-Distributionen installieren:Centos, Ubuntu, Debian, Fedora, Archlinux.
Cento 7
Centos 7 verwendet yum
um seine Pakete zu verwalten. Wir werden yum verwenden, um Traceroute in Centos 7 zu installieren.
Lassen Sie uns zuerst prüfen, welches Paket die traceroute
bereitstellt Befehl mit yum whatprovides
:
$ sudo yum whatprovides traceroute3:traceroute-2.0.22-2.el7.x86_64 :Verfolgt die Route, die von Paketen über ein IPv4/IPv6-Netzwerk zurückgelegt wirdRepo :base3:traceroute-2.0.22-2.el7.x86_64 :Verfolgt die Route von Paketen über ein IPv4/IPv6-NetzwerkRepo :@base
Aus der obigen Ausgabe können wir sehen, dass es von traceroute
bereitgestellt wird , müssen Sie die Versionsdetails nicht angeben, es sei denn, Sie suchen nach einer bestimmten Version. Installieren wir es mit diesem Befehl:
sudo yum install traceroute -y
Überprüfen Sie, ob der Befehl erfolgreich installiert wurde
$ which traceroute/usr/bin/traceroute
$ traceroute 10.2.11.8traceroute zu 10.2.11.8 (10.2.11.8), max. 30 Sprünge, 60-Byte-Pakete 1 ip-10-2-10-8.ap-southeast-1.compute.internal ( 10.2.10.8) 168,745 ms 168,707 ms 168,679 ms 2 ip-10-2-11-8.ap-southeast-1.compute.internal (10.2.11.8) 168,815 ms 168,785 ms 168,747 ms
Ubuntu &Debian
Ubuntu und Debian verwenden apt
Befehl, um seine Pakete zu verwalten. Verwenden Sie den folgenden Befehl, um traceroute
zu installieren
sudo apt install -y traceroute
Überprüfen Sie mit traceroute google.com
, ob der Befehl erfolgreich installiert wurde :
[email protected]:~# which traceroute/usr/sbin/traceroute
[email protected]:~# traceroute google.comtraceroute to google.com (216.58.215.46), max. 30 Hops, 60-Byte-Pakete 1 vlan130vrrpmlag06.ikoula.com (178.170.10.252) 0,156 ms 0,106 ms 0,124 ms 2 be3.rc1.ikdc2.ikoula.com (213.246.32.128) 0,561 ms 0,529 ms 0,476 ms 3 be2.rc2.ikdc2.ikoula.com (213.246.32.133) 3,101 ms et-t2.core14.ikdc1.ikoula.com 2,722 ms 2,761 ms 4 .th2.Eth-Trunk4.ikoula.com (213.246.50.194) 3,479 ms 3,629 ms 3,572 ms 6 .144.100) 3,296 ms 108.170.245.1 (108.170.245.1) 4,827 ms 108.170.244.193 (108.170.244.193) 3,265 ms 8 108.170.244.193 (108.170.244.193) 3,243 ms 3,837 ms 108.170.245.1 (108.170.245.1) 4,511 ms 9 72.14 .237.93 (72.14.237.93) 4.113 ms 4.027 ms par21s17-in-f14.1e100.net (216.58.215.46) 3,897 ms
Archlinux
Demnächst
Fedora
Demnächst
Befehlsnutzung jenseits der Grundlagen
Zuordnung von IP-Adressen und Hostnamen deaktivieren
Wenn Sie die Zuordnung der IPs zu den Hostnamen deaktivieren möchten, können Sie das Flag -n
verwenden wie in diesem Beispiel:
traceroute -n www.citizix.com
Ausgabe:
# traceroute -n www.citizix.comtraceroute zu www.citizix.com (104.21.82.63), max. 30 Sprünge, 60-Byte-Pakete 1 178.170.10.252 0,143 ms 0,114 ms 0,102 ms 2 213.246.32.128 0,645 ms 0,581 ms 0,542 ms 3 213.246.32.135 3,339 ms 3,290 ms 3,224 ms 4 213.246.32.135 3,160 ms 37.49.237.49 4,059 ms 213.246.32.135 3.281 ms 5 104.21.82.63 3,602 ms 3,589 ms 37.49.237.49 3,734 ms
Antwortwartezeit konfigurieren
An jedem Punkt, an dem Traceroute einen Test ausgibt, wartet es für eine Zeitspanne namens „Response Wait Time“ auf die Antwort vom Switch. Die Option „-w“ legt die Zeit (in Sekunden) fest, die auf eine Antwort auf einen Test gewartet werden soll. Die Standardwartezeit beträgt 5,0 Sekunden.
Verwenden Sie diesen Befehl, um die Wartezeit auf 1,0 Sek. zu reduzieren.
traceroute -w 1.0 www.citizix.com
Ausgabe:
$ traceroute -w 1.0 www.citizix.comtraceroute zu www.citizix.com (104.21.82.63), max. 30 Sprünge, 60-Byte-Pakete 1 vlan130vrrpmlag06.ikoula.com (178.170.10.252) 0,194 ms 0,128 ms 0,124 ms 2 be3.rc2.ikdc2.ikoula.com (213.246.32.142) 0,623 ms be3.rc1.ikdc2.ikoula.com (213.246.32.128) 0,752 ms 0,633 ms 3 be2.rc1.ikdc2.ikoula.com (213.246. 32.132) 2.906 ms 2.720 ms 2.665 ms 4 cloudflare.par.franceix.net (37.49.237.49) 9.047 ms et-t1.core15.rb.ikoula.com (213.246.32.135) 3.277 ms 3.406 ms 5 cloudflare.par.franceix. net (37.49.237.49) 3.680 ms 104.21.82.63 (104.21.82.63) 3.025 ms 3.735 ms ```## Configure Number of Queries per Hop`traceroute` Utility sendet 3 Pakete pro Hop, um 3 Umlaufzeiten bereitzustellen. Verwenden Sie das `q`, um diese Konfiguration zu ändern. Der angegebene Wert sollte immer eine Ganzzahl sein. Beispiel:```bashtraceroute -q 5 citizix.com
Ausgabe:
$ traceroute -q 5 citizix .comtraceroute zu citizix.com (104.21.82.63), max. 30 Sprünge, 60-Byte-Pakete 1 vlan130vrrpmlag06.ikoula.com (178.170.10.252) 0,147 ms 0,102 ms 0,098 ms 0,096 ms 0,106 ms 0,101 ms .com (213.246.32.142) 0,639 ms be3.rc1.ikdc2.ikoula.com (213.246.32.128) 0,653 ms be3.rc2.ikdc2.ikoula.com (213.246.32.142) 0,490 ms be3.rc1.ikdc2.ikoula.com (213.246.32.128) 0,501 ms be3.rc2.ikdc2.ikoula.com (213.246.32.142) 0,431 ms 0,361 ms 3 et-t1.core15.rb.ikoula.com (213.246.32.135) 3,050 ms 3,001 ms 3,001 ms 3,05 rc1.ikdc2.ikoula.com (213.246.32.132) 2,741 ms et-t1.core15.rb.ikoula.com (213.246.32.135) 3,306 ms 3,232 ms 4 * cloudflare.par.franceix.net (37.49.237.49) 3,597 ms et-t1.core15.rb.ikoula.com (213.246.32.135) 3,082 ms * cloudflare.par.franceix.net (37.49.237.49) 3,742 ms et-t1.core15.rb.ikoula.com (213.24 6.32.135) 3,149 ms 5 * 104.21.82.63 (104.21.82.63) 3,636 ms * 2,940 ms * *
Konfigurieren Sie den TTL-Wert, mit dem gestartet werden soll
Die Standardeinstellung ttl gesetzt für traceroute
ist 1. Ändern Sie diesen Wert mit dem Flag -f
Beispiel:
traceroute -f 4 citizix.com
Ausgabe:
$ traceroute -f 4 citizix.comtraceroute an citizix.com (104.21.82.63), max. 30 Sprünge, 60-Byte-Pakete 4 cloudflare.par.franceix.net (37.49.237.49) 9,145 ms 5 cloudflare.par.franceix.net (37.49.237.49) 6,766 ms 104.21.82.63 (104.21.82.63) 6,994 ms cloudflare.par.franceix.net (37.49.237.49 ) 4.871 ms ```# Andere OptionenUm nach anderen `traceroute`-Befehlen zu suchen, verwenden Sie eine der folgenden Optionen:- Verwenden Sie manpages```bashman traceroute
- Verwenden Sie die Option „–help“
traceroute --help
Ausgabe:
# traceroute --helpUsage:traceroute [ -46dFITnreAUDV ] [ -f first_ttl ] [ -g gate,... ] [ -i device ] [ -m max_ttl ] [ -N squeries ] [ -p port ] [ -t tos ] [ -l flow_label ] [ -w MAX,HERE,NEAR ] [ -q nqueries ] [ -s src_addr ] [ -z sendwait ] [ --fwmark=num ] host [ packetlen ]Optionen:-4 IPv4 verwenden -6 IPv6 verwenden -d --debug Socket-Level-Debugging aktivieren -F --dont-fragment Pakete nicht fragmentieren -f first_ttl --first=first_ttl Vom first_ttl-Hop starten (anstelle von 1) -g gate,.. --gateway=gate,... Leitet Pakete durch das angegebene Gateway (maximal 8 für IPv4 und 127 für IPv6) -I --icmp Verwendet ICMP ECHO für Tracerouting -T --tcp Verwendet TCP SYN für Tracerouting (Standardport ist 80) -i Gerät --interface=Gerät Geben Sie eine Netzwerkschnittstelle für o an perate with -m max_ttl --max-hops=max_ttl Legt die maximale Anzahl an Hops fest (maximal zu erreichende TTL). Standard ist 30 -N squeries --sim-queries=squeries Legt die Anzahl der gleichzeitig zu versuchenden Probes fest (Standard ist 16) -n IP-Adressen nicht in ihre Domänennamen auflösen -p port --port=port Legt den Zielport fest benutzen. Es ist entweder der anfängliche UDP-Port-Wert für die „Standard“-Methode (wird von jeder Probe erhöht, Standard ist 33434) oder die anfängliche seq für „icmp“ (ebenfalls erhöht, Standard von 1) oder ein konstanter Zielport für andere Methoden (mit Standardwert 80 für „tcp“, 53 für „udp“ usw.) -t tos --tos=tos Setzt den TOS- (IPv4-Diensttyp) oder TC-Wert (IPv6-Verkehrsklasse) für ausgehende Pakete -l flow_label -- flowlabel=flow_label Angegebenes flow_label für IPv6-Pakete verwenden -w MAX,HERE,NEAR --wait=MAX,HERE,NEAR Auf einen Test nicht öfter als HERE (Standard 3) mal länger warten als auf eine Antwort vom gleichen Hop, oder nicht mehr als NEAR (Standard 10) mal als einige nächster Hop oder MAX (Standard 5,0) Sekunden (auch Fließkommawerte erlaubt) -q nqueries --queries=nqueries Legt die Anzahl der Tests pro Hop fest. Standard ist 3 -r Normales Routing umgehen und direkt an einen Host in einem angeschlossenen Netzwerk senden -s src_addr --source=src_addr Quell-src_addr für ausgehende Pakete verwenden -z sendwait --sendwait=sendwait Minimales Zeitintervall zwischen Tests (Standard 0) . Wenn der Wert größer als 10 ist, dann gibt er eine Zahl in Millisekunden an, ansonsten eine Zahl in Sekunden (auch Gleitkommawerte erlaubt) -e --extensions Zeigt ICMP-Erweiterungen (falls vorhanden), einschließlich MPLS -A --as -path-lookups Führt AS-Pfad-Lookups in Routing-Registern durch und gibt Ergebnisse direkt nach den entsprechenden Adressen aus. -M Name --Modul=Name Verwendet das angegebene Modul (entweder eingebaut oder extern) für Traceroute-Operationen. Die meisten Methoden haben ihre Abkürzungen (-I' bedeutet
-M icmp' usw.) -O OPTS,... --options=OPTS,... Modulspezifische Option OPTS für das Traceroute-Modul verwenden. Mehrere OPTS erlaubt, durch Komma getrennt. Wenn OPTS "Hilfe" ist, drucke Informationen über verfügbare Optionen --sport=num Verwende die Nummer des Quellports für ausgehende Pakete. Impliziert `-N 1' --fwmark=num Setze Firewall-Markierung für ausgehende Pakete -U --udp Benutze UDP zu einem bestimmten Port für Tracerouting (anstatt den Port pro Sonde zu erhöhen), Standardport ist 53 -UL Benutze UDPLITE für Tracerouting (Standard-Zielport ist 53) -D --dccp DCCP-Anforderung für Tracerouting verwenden (Standardport ist 33434) -P prot --protocol=prot Rohpaket des Protokollprots für Tracerouting verwenden --mtu MTU auf dem verfolgten Pfad entdecken. Bedeutet `-F -N 1' --back Schätze die Anzahl der Sprünge im Rückwärtspfad und drucke, wenn sie sich unterscheidet -V --version Drucke Versionsinformationen und beende --help Lies diese Hilfe und beende Argumente:+ host Der Host für die Traceroute to packetlen Die volle Paketlänge (Standard ist die Länge eines IP-Headers plus 40). Kann ignoriert oder auf einen minimal zulässigen Wert erhöht werden