traceroute — Netzwerkpfad Hop für Hop analysieren
Praxis-Guide zu traceroute und tracepath — Netzwerkpfade Hop für Hop verfolgen, Latenzen lokalisieren und Firewall-Sperren per TCP oder ICMP umgehen.
traceroute zeigt dir Schritt für Schritt, welchen Weg Pakete von deinem Rechner zu einem Ziel-Host nehmen – und wo Latenzen oder Paketverluste auftreten. Das Tool sendet Probes mit schrittweise steigendem TTL-Wert; jeder Router, der ein Paket verwirft, antwortet mit einer ICMP-Meldung und verrät so seine Adresse und Round-Trip-Zeit. So erkennst du auf einen Blick, ob ein Problem beim Internet-Provider, einem Transit-Router oder erst beim Ziel-Server liegt.
Grundlegende Verwendung
traceroute HOST — Verfolgt den Weg zu einem Host mit UDP-Probes (Standard).
traceroute 8.8.8.8traceroute HOSTNAME — Verfolgt den Weg zu einem Hostnamen mit DNS-Auflösung.
traceroute google.comtraceroute -n HOST — Nur numerische Ausgabe – keine Reverse-DNS-Auflösung. Deutlich schneller.
traceroute -n 8.8.8.8traceroute -q N HOST — Legt die Anzahl der Probe-Pakete pro Hop fest (Standard: 3).
traceroute -q 1 8.8.8.8traceroute -w TIMEOUT HOST — Setzt den Timeout in Sekunden für eine Antwort (Standard: 5).
traceroute -w 3 8.8.8.8traceroute -m MAX_TTL HOST — Legt die maximale Hop-Anzahl fest (Standard: 30).
traceroute -m 20 8.8.8.8traceroute -f FIRST_TTL HOST — Beginnt mit einem bestimmten TTL-Wert statt 1.
traceroute -f 5 8.8.8.8Probe-Methoden
traceroute -I HOST — Nutzt ICMP-Echo-Probes statt UDP. Funktioniert oft besser durch Firewalls.
sudo traceroute -I 8.8.8.8traceroute -T HOST — Nutzt TCP-SYN-Probes. Gut für Traces durch Firewalls, die UDP/ICMP blocken.
sudo traceroute -T 8.8.8.8traceroute -T -p PORT HOST — Nutzt TCP-SYN-Probes auf einem bestimmten Port.
sudo traceroute -T -p 443 8.8.8.8traceroute -U HOST — Nutzt UDP-Probes (Standardmethode).
traceroute -U 8.8.8.8traceroute -p PORT HOST — Legt den Zielport für UDP-Probes fest (Standard: 33434).
traceroute -p 53 8.8.8.8Erweiterte Optionen
traceroute -s SOURCE HOST — Setzt die Quell-IP-Adresse für ausgehende Probes.
traceroute -s 10.0.0.5 8.8.8.8traceroute -i INTERFACE HOST — Nutzt ein bestimmtes Netzwerk-Interface.
traceroute -i eth0 8.8.8.8traceroute -z PAUSE HOST — Legt die Pause zwischen Probes in Millisekunden fest.
traceroute -z 50 8.8.8.8traceroute -A HOST — Zeigt AS-Nummern (Autonomous System) an jedem Hop.
traceroute -A 8.8.8.8traceroute -e HOST — Zeigt ICMP-Erweiterungen (MPLS-Labels usw.).
traceroute -e 8.8.8.8traceroute -6 HOST — Erzwingt einen IPv6-Traceroute.
traceroute -6 google.comtraceroute6 HOST — IPv6-Traceroute-Befehl (Alias auf vielen Systemen).
traceroute6 google.comtracepath (ohne Root-Rechte)
tracepath HOST — Verfolgt den Pfad zu einem Host und ermittelt die Path-MTU. Ohne Root-Rechte.
tracepath 8.8.8.8tracepath -n HOST — Nur numerische Ausgabe – keine DNS-Auflösung.
tracepath -n 8.8.8.8tracepath -b HOST — Zeigt sowohl Hostname als auch IP-Adresse.
tracepath -b 8.8.8.8tracepath -m MAX_HOPS HOST — Legt die maximale Hop-Anzahl fest (Standard: 30).
tracepath -m 20 8.8.8.8tracepath -l PACKET_LEN HOST — Setzt die anfängliche Paketlänge für die MTU-Erkennung.
tracepath -l 1500 8.8.8.8tracepath -p PORT HOST — Legt den Zielport fest.
tracepath -p 443 8.8.8.8tracepath -4 HOST — Erzwingt IPv4.
tracepath -4 google.comtracepath -6 HOST — Erzwingt IPv6.
tracepath -6 google.comAusgabe verstehen
1 192.168.1.1 1.234 ms 0.987 ms 1.102 ms — Normaler Hop: Hop-Nummer, Router-IP und drei Round-Trip-Zeiten.
5 * * * — Keine Antwort von diesem Hop. Der Router blockiert möglicherweise ICMP/UDP oder hat keine Rückroute.
3 10.0.0.1 2.5 ms !N * * — !N = Netzwerk nicht erreichbar. Weitere Codes: !H (Host), !P (Protokoll), !F (Fragmentierung erforderlich).
Resume: pmtu 1500 — tracepath-Ausgabe: die ermittelte Path-MTU zum Ziel.
Typische Anwendungsfälle
traceroute -n -q 1 -w 2 HOST — Schneller Traceroute: kein DNS, eine Probe pro Hop, 2 Sekunden Timeout.
traceroute -n -q 1 -w 2 8.8.8.8sudo traceroute -I -n HOST — ICMP-Traceroute ohne DNS – zuverlässigste Methode durch Firewalls.
sudo traceroute -I -n 8.8.8.8sudo traceroute -T -p 443 -n HOST — TCP-Traceroute auf dem HTTPS-Port – funktioniert durch die meisten Firewalls.
sudo traceroute -T -p 443 -n 8.8.8.8traceroute HOST | awk '{print $1, $2}' — Extrahiert nur Hop-Nummern und IPs.
traceroute -n 8.8.8.8 | awk '{print $1, $2}' Fazit
Für die meisten Verbindungsprobleme reicht traceroute -n als erster Blick – du siehst sofort, wo der Weg endet oder wo Latenzen springen. Wenn Firewalls UDP-Probes blocken, wechselst du einfach zu -I (ICMP) oder -T -p 443 (TCP). Für dauerhafte Überwachung löst mtr traceroute sinnvoll ab.
Weiterführende Links
- Traceroute – Wikipedia – Hintergrund und Funktionsweise
- traceroute(8) – Manpage – alle Optionen im Überblick (englisch)