Einführung
In diesem Labyrinth lernen Sie, wie Sie die Linux-Befehl tracepath verwenden, um den Pfad zu verfolgen, den Pakete von der lokalen Hostmaschine zu einem entfernten Host nehmen, und um eventuelle Netzwerkprobleme auf dem Weg zu identifizieren. Das Labyrinth behandelt den Zweck des tracepath-Befehls, wie man ihn verwendet, um den Pfad zu einem entfernten Host zu verfolgen, und wie man Netzwerkprobleme mit diesem Befehl behebt. Sie lernen, die Ausgabe des tracepath-Befehls zu interpretieren und ihn zu verwenden, um potenzielle Netzwerkprobleme wie hohe Latenz, Paketverlust oder MTU-Probleme zu identifizieren.
Verstehen des Zwecks des tracepath-Befehls
In diesem Schritt lernen Sie über den Zweck und die Verwendung des tracepath-Befehls in Linux. Der tracepath-Befehl ist ein Netzwerkdiagnosewerkzeug, das verwendet wird, um den Pfad zu verfolgen, den Pakete von der lokalen Hostmaschine zu einem entfernten Host nehmen, und um eventuelle Zwischenhop oder Netzwerkprobleme auf dem Weg zu identifizieren.
Der tracepath-Befehl ähnelt dem traceroute-Befehl, verwendet jedoch den Path MTU Discovery (PMTUD)-Mechanismus, um die maximale Übertragungseinheit (MTU) entlang des Pfads zu bestimmen, was helfen kann, Netzwerkprobleme im Zusammenhang mit der Paketfragmentierung zu identifizieren.
Lassen Sie uns beginnen, indem wir den tracepath-Befehl auf einen entfernten Host ausführen:
$ sudo tracepath google.com
1?: [LOCALHOST] pmtu 1500
1: 192.168.1.1 0.161ms
1: 192.168.1.1 0.158ms
2: 10.0.0.1 1.694ms
3: 203.0.113.1 9.717ms
4: 142.250.209.174 10.843ms
5: 142.250.209.174 10.518ms
Resume: pmtu 1500 hops 5 back 5
Beispielausgabe:
Die Ausgabe zeigt den Pfad, den die Pakete von der lokalen Hostmaschine zu dem entfernten Host google.com nehmen. Jede Zeile stellt einen Hop auf dem Pfad dar, und die Ausgabe enthält die folgenden Informationen:
- Die Hop-Nummer
- Die IP-Adresse des Zwischenrouters oder Netzwerkgeräts
- Die RTT (Round-Trip-Time) für das Paket, um zu diesem Hop zu gelangen und zurück zur lokalen Hostmaschine zu kehren
Der tracepath-Befehl meldet auch die maximale Übertragungseinheit (MTU) entlang des Pfads, die in diesem Fall 1500 Bytes beträgt.
Indem Sie den tracepath-Befehl ausführen, können Sie eventuelle Netzwerkprobleme oder Engpässe auf dem Weg identifizieren, wie hohe Latenz, Paketverlust oder MTU-Probleme.
Verfolge den Pfad zu einem entfernten Host mit tracepath
In diesem Schritt lernen Sie, wie Sie den tracepath-Befehl verwenden, um den Pfad zu einem entfernten Host zu verfolgen und eventuelle Netzwerkprobleme auf dem Weg zu identifizieren.
Lassen Sie uns beginnen, indem wir den Pfad zu einem entfernten Host wie google.com verfolgen:
$ sudo tracepath google.com
1?: [LOCALHOST] pmtu 1500
1: 192.168.1.1 0.161ms
1: 192.168.1.1 0.158ms
2: 10.0.0.1 1.694ms
3: 203.0.113.1 9.717ms
4: 142.250.209.174 10.843ms
5: 142.250.209.174 10.518ms
Resume: pmtu 1500 hops 5 back 5
Beispielausgabe:
Die Ausgabe zeigt den Pfad, den die Pakete von der lokalen Hostmaschine zu dem entfernten Host google.com nehmen. Jede Zeile stellt einen Hop auf dem Pfad dar, und die Ausgabe enthält die folgenden Informationen:
- Die Hop-Nummer
- Die IP-Adresse des Zwischenrouters oder Netzwerkgeräts
- Die RTT (Round-Trip-Time) für das Paket, um zu diesem Hop zu gelangen und zurück zur lokalen Hostmaschine zu kehren
Der tracepath-Befehl meldet auch die maximale Übertragungseinheit (MTU) entlang des Pfads, die in diesem Fall 1500 Bytes beträgt.
Sie können auch den tracepath-Befehl verwenden, um den Pfad zu einem anderen entfernten Host wie example.com zu verfolgen:
$ sudo tracepath example.com
1?: [LOCALHOST] pmtu 1500
1: 192.168.1.1 0.161ms
1: 192.168.1.1 0.158ms
2: 10.0.0.1 1.694ms
3: 203.0.113.1 9.717ms
4: 93.184.216.34 10.843ms
5: 93.184.216.34 10.518ms
Resume: pmtu 1500 hops 5 back 5
Indem Sie den tracepath-Befehl auf verschiedene entfernte Hosts ausführen, können Sie eventuelle Netzwerkprobleme oder Engpässe auf dem Weg identifizieren, wie hohe Latenz, Paketverlust oder MTU-Probleme.
Behebe Netzwerkprobleme mit tracepath
In diesem Schritt lernen Sie, wie Sie den tracepath-Befehl verwenden, um Netzwerkprobleme zu beheben.
Lassen Sie uns beginnen, indem wir ein Netzwerkproblem simulieren, indem wir die Verbindung zu einem entfernten Host mit der iptables-Firewall blockieren:
$ sudo iptables -A OUTPUT -d 8.8.8.8 -j DROP
Dieser Befehl blockiert alle ausgehenden Netzwerkverkehr an die IP-Adresse 8.8.8.8, die einer der öffentlichen DNS-Server von Google ist.
Jetzt versuchen wir, den Pfad zu 8.8.8.8 mit dem tracepath-Befehl zu verfolgen:
$ sudo tracepath 8.8.8.8
1?: [LOCALHOST] pmtu 1500
1: 192.168.1.1 0.161ms
1: 192.168.1.1 0.158ms
2: 10.0.0.1 1.694ms
3: no reply
4: no reply
5: no reply
Resume: pmtu 1500 hops 5 back 2
Beispielausgabe:
Die Ausgabe zeigt, dass der tracepath-Befehl den Pfad bis zum dritten Hop verfolgen konnte, aber dann eine "keine Antwort"-Meldung erhalten hat, was darauf hindeutet, dass die Verbindung blockiert wurde oder der entfernte Host nicht antwortet.
Um dieses Problem zu beheben, können Sie Folgendes versuchen:
Überprüfen Sie die Firewall-Regeln, um sicherzustellen, dass die Verbindung wie erwartet blockiert wird:
$ sudo iptables -L Chain OUTPUT (policy ACCEPT) target prot opt source destination DROP all -- anywhere 8.8.8.8Versuchen Sie, den entfernten Host zu ping-en, um zu sehen, ob die Verbindung tatsächlich blockiert ist:
$ ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. ^C --- 8.8.8.8 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 2023msDie Ausgabe zeigt, dass die Verbindung blockiert wird, wie durch den 100%-igen Paketverlust angezeigt.
Entfernen Sie die Firewall-Regel, um die Verbindung wiederherzustellen:
$ sudo iptables -D OUTPUT -d 8.8.8.8 -j DROP
Indem Sie den tracepath-Befehl verwenden, um den Punkt zu identifizieren, an dem die Verbindung blockiert wird, können Sie Netzwerkprobleme schnell beheben und die Ursache ermitteln.
Zusammenfassung
In diesem Labyrinth lernen Sie über den Zweck und die Verwendung des tracepath-Befehls in Linux, der ein Netzwerkdiagnosewerkzeug ist, das verwendet wird, um den Pfad zu verfolgen, den Pakete von der lokalen Hostmaschine zu einem entfernten Host nehmen, und um eventuelle Zwischenhop oder Netzwerkprobleme auf dem Weg zu identifizieren. Sie werden auch lernen, wie Sie den tracepath-Befehl verwenden, um den Pfad zu einem entfernten Host zu verfolgen und Netzwerkprobleme mit der Ausgabe des Befehls zu beheben.
Der tracepath-Befehl ähnelt dem traceroute-Befehl, verwendet jedoch den Path MTU Discovery (PMTUD)-Mechanismus, um die maximale Übertragungseinheit (MTU) entlang des Pfads zu bestimmen, was helfen kann, Netzwerkprobleme im Zusammenhang mit der Paketfragmentierung zu identifizieren. Indem Sie den tracepath-Befehl ausführen, können Sie eventuelle Netzwerkprobleme oder Engpässe auf dem Weg identifizieren, wie hohe Latenz, Paketverlust oder MTU-Probleme.



