traceroute-Befehl: Installation, Verwendung und die Optionen -n, -I, -T

TestumgebungRHEL-FamilieAlmaLinux 9.8root-KontoDebian 12 · traceroute 2.1.2 normales KontoGeprüft am 2026-10-29
Netzwerkbefehletraceroute

Um Hop für Hop zu prüfen, welche Router Pakete auf dem Weg zum Ziel durchlaufen, verwendest du den Befehl traceroute. Auf dem AlmaLinux-9.8-Server war traceroute nicht installiert, daher haben wir es mit dnf installiert, und auf einem Debian-12-Server mit traceroute 2.1.2 erreichte die Route zu example.com beim siebten Hop das Ziel.

Die folgende Ausgabe stammt vom Debian-12-Server und wurde mit einem normalen Konto erzeugt, nur die rpm- und dnf-Ausgaben im Installationskapitel kommen vom AlmaLinux-9.8-Server (root-Konto). Der Hostname des Servers wurde in server1 geändert, die Router- und Zieladressen in den Routen wurden durch Beispieladressen ersetzt (192.0.2.x, 198.51.100.x, 203.0.113.x). Die Release-Nummer des installierten Pakets (die Hauptversion 2.1 bleibt gleich) und die dnf-Metadatenzeit sind ebenfalls Beispielwerte, die Antwortzeiten sind die tatsächlich gemessenen Werte.

1️⃣ traceroute installieren

  • ↪️ dnf bei der RHEL-Familie, apt bei der Debian-Familie

Ob traceroute standardmäßig installiert ist, hängt von der Distribution ab. Auf dem AlmaLinux-9.8-Server erschien beim Aufruf [traceroute: command not found], und auch die Abfrage mit rpm fand kein installiertes Paket.

rpm -q traceroute
package traceroute is not installed

In der RHEL-Familie installierst du es mit dnf. Eine Vorschau mit [--assumeno] zeigte nur ein Paket zur Installation, traceroute aus dem baseos-Repository, ohne weitere Pakete.

dnf install --assumeno traceroute
Last metadata expiration check: 0:05:00 ago on Thu Oct 29 09:00:00 2026.
Dependencies resolved.
================================================================================
 Package            Architecture   Version                 Repository      Size
================================================================================
Installing:
 traceroute         x86_64         3:2.1.0-9.el9           baseos          56 k

Transaction Summary
================================================================================
Install  1 Package

Total download size: 56 k
Installed size: 107 k
Operation aborted.

Die Downloadgröße betrug 56k, die Größe nach der Installation 107k. [--assumeno] beantwortet alle Fragen mit no, installiert also nichts und endet mit [Operation aborted.] (laut offizieller dnf-Dokumentation).

Die eigentliche Installation erfolgte mit [dnf install traceroute], also ohne [--assumeno].

dnf install traceroute
Last metadata expiration check: 0:20:00 ago on Thu Oct 29 09:00:00 2026.
Dependencies resolved.
================================================================================
 Package            Architecture   Version                 Repository      Size
================================================================================
Installing:
 traceroute         x86_64         3:2.1.0-9.el9           baseos          56 k

Transaction Summary
================================================================================
Install  1 Package

Total download size: 56 k
Installed size: 107 k
Downloading Packages:
traceroute-2.1.0-9.el9.x86_64.rpm               3.6 MB/s |  56 kB     00:00    
--------------------------------------------------------------------------------
Total                                            97 kB/s |  56 kB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1 
  Installing       : traceroute-3:2.1.0-9.el9.x86_64                        1/1 
  Running scriptlet: traceroute-3:2.1.0-9.el9.x86_64                        1/1 
  Verifying        : traceroute-3:2.1.0-9.el9.x86_64                        1/1 

Installed:
  traceroute-3:2.1.0-9.el9.x86_64                                               

Complete!

Unter [Installed:] erschien nur das Paket traceroute, und die Installation endete ohne Abhängigkeiten mit [Complete!].

Nach der Installation haben wir die Version mit [traceroute --version] geprüft.

traceroute --version
Modern traceroute for Linux, version 2.1.0
Copyright (c) 2016  Dmitry Butskoy,   License: GPL v2 or any later

Der mit [command -v traceroute] gefundene Pfad der ausführbaren Datei war [/usr/bin/traceroute].

In der Debian-Familie installierst du das Paket traceroute aus dem Repository der Distribution mit [apt install traceroute] (laut offiziellen Debian-Paketinformationen). Die installierte Version prüfst du mit --version.

traceroute --version
Modern traceroute for Linux, version 2.1.2
Copyright (c) 2016  Dmitry Butskoy,   License: GPL v2 or any later

Auf dem Debian-12-Server war das Paket traceroute bereits installiert, und als Version erschien [Modern traceroute for Linux] 2.1.2.

2️⃣ So verwendest du den traceroute-Befehl

  • ↪️ Grundform und Ausgabezeilen lesen

traceroute nimmt einen Zielnamen oder eine IP-Adresse entgegen und sendet Pakete, deren TTL bei 1 beginnt und jeweils um eins steigt. Ein Paket mit TTL 1 läuft am ersten Router ab, ein Paket mit TTL 2 am zweiten. Aus den [time exceeded]-Antworten dieser Router gibt traceroute für jeden Hop die Adresse und die Round-Trip-Zeit aus (laut offiziellem Handbuch).

Erreicht ein Paket das Ziel, antwortet das Ziel mit [port unreachable] und die Ausgabe endet bei diesem Hop; andernfalls läuft sie bis zur maximalen Hop-Zahl weiter. Laut offiziellem Handbuch werden pro Hop drei Pakete gesendet, daher stehen in einer Zeile drei Zeiten, und standardmäßig werden bis zu 30 Hops geprüft.

Für example.com haben wir mit -n nur Adressen ausgegeben und mit -m 10 nur bis zum zehnten Hop geprüft.

traceroute -n -m 10 example.com
traceroute to example.com (203.0.113.154), 10 hops max, 60 byte packets
 1  192.0.2.1  0.110 ms  0.083 ms  0.067 ms
 2  192.0.2.2  0.348 ms  0.273 ms  0.263 ms
 3  198.51.100.77  0.426 ms  0.337 ms 198.51.100.13  1.251 ms
 4  198.51.100.49  0.968 ms  1.264 ms 198.51.100.53  1.148 ms
 5  * * *
 6  203.0.113.19  1.631 ms 203.0.113.25  2.549 ms 203.0.113.14  1.543 ms
 7  203.0.113.154  1.544 ms  1.656 ms  1.607 ms

Die erste Zeile zeigte den Zielnamen, die tatsächlich verwendete Adresse, die maximale Hop-Zahl und die Paketgröße von 60 Byte. Beim siebten Hop antwortete die Zieladresse, daher endete der Lauf vor dem zehnten Hop, und das Ganze dauerte weniger als eine Sekunde.

AusgabeBedeutung
traceroute to example.com (203.0.113.154)Zielname und die daraus aufgelöste Adresse, an die tatsächlich gesendet wurde
10 hops maxMaximale Hop-Zahl — wird mit -m festgelegt, Standardwert 30
60 byte packetsGröße der gesendeten Pakete — standardmäßig 60 Byte bei IPv4 und 80 Byte bei IPv6 (laut offiziellem Handbuch)
1Hop-Nummer — der TTL-Wert dieses Pakets
192.0.2.1Adresse des Routers, der bei diesem Hop geantwortet hat
0.110 ms 0.083 ms 0.067 msRound-Trip-Zeiten der drei an einen Hop gesendeten Pakete
198.51.100.77 … 198.51.100.13Zeile mit zwei Adressen, weil beim selben Hop verschiedene Router auf verschiedene Pakete geantwortet haben
* * *Keines der drei Pakete bekam rechtzeitig eine Antwort — jedes Sternchen steht für ein Paket
!H · !N · !P · !XUnreachable-Kennzeichen hinter der Zeit — Host, Netzwerk oder Protokoll nicht erreichbar, administrativ verboten (laut offiziellem Handbuch)

Der dritte und vierte Hop zeigten zwei Adressen in einer Zeile, der sechste Hop drei. Antworten auf die drei Pakete eines Hops verschiedene Router, gibt traceroute laut offiziellem Handbuch alle antwortenden Adressen hintereinander aus.

Ohne -n wandelt traceroute die antwortenden Adressen in Hostnamen um.

traceroute localhost
traceroute to localhost (127.0.0.1), 30 hops max, 60 byte packets
 1  server1 (127.0.0.1)  0.068 ms  0.048 ms  0.028 ms

Mit localhost erschien in der Hop-Spalte der Hostname des Debian-12-Servers, dahinter in Klammern die Adresse 127.0.0.1.

3️⃣ traceroute-Optionen

  • ↪️ -n, -q, -m und die Sendearten -I, -T

Die --help-Ausgabe von traceroute 2.1.2 listet 34 Optionen auf. Davon haben wir -n, -q und -m, die die Ausgabe ändern, sowie -I und -T, die die gesendeten Pakete ändern, mit einem normalen Konto auf dem Debian-12-Server ausprobiert.

[traceroute -n] gibt nur IP-Adressen aus, ohne sie in Hostnamen umzuwandeln. Mit -n auf demselben localhost blieb in der Hop-Spalte nur 127.0.0.1 stehen.

traceroute -n localhost
traceroute to localhost (127.0.0.1), 30 hops max, 60 byte packets
 1  127.0.0.1  0.073 ms  0.075 ms  0.025 ms

-q legt die Anzahl der Pakete pro Hop fest, der Standardwert ist 3. Mit -q 1 erschien nur eine Zeit, mit -q 5 erschienen fünf.

traceroute -q 1 -n 127.0.0.1
traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
 1  127.0.0.1  0.096 ms
traceroute -q 5 -n 127.0.0.1
traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
 1  127.0.0.1  0.083 ms  0.028 ms  0.024 ms  0.022 ms  0.022 ms

-m ändert die maximale Hop-Zahl. Die Eingabe 256 wurde mit [max hops cannot be more than 255] abgelehnt.

traceroute -m 256 -n 127.0.0.1
max hops cannot be more than 255

Pakete werden standardmäßig per UDP gesendet. -I sendet sie als ICMP ECHO, -T als TCP SYN (standardmäßig Port 80). Mit diesen beiden Optionen prüfst du eine Route, die UDP filtert, mit einem anderen Pakettyp erneut. Mit einem normalen Konto hinterließen beide Optionen eine Meldung über fehlende Rechte und endeten mit Exit-Code 1.

traceroute -I -n 127.0.0.1
You do not have enough privileges to use this traceroute method.
socket: Operation not permitted
traceroute -T -n 127.0.0.1
You do not have enough privileges to use this traceroute method.
socket: Operation not permitted

Das offizielle Handbuch nennt die Standardmethode und -U (fester Zielport 53) als die Methoden, die normalen Konten erlaubt sind. -I läuft mit einem normalen Konto nur, wenn die Kernel-Einstellung ping_group_range die Gruppe dieses Kontos zulässt.

cat /proc/sys/net/ipv4/ping_group_range
1	0

Der Wert des Debian-12-Servers war [1 0], was laut Linux-Kernel-Dokumentation keine Gruppe zulässt. -T gehört unabhängig von dieser Einstellung nicht zu den normalen Konten erlaubten Methoden, führe beide Optionen also mit einem Konto mit root-Rechten aus.

📌 Wichtige Optionen: Ergebnisse aus diesem Artikel

OptionWas es tutErgebnis in diesem Artikel
-nGibt nur IP-Adressen aus, ohne sie in Hostnamen umzuwandelnMit localhost blieb in der Hop-Spalte nur 127.0.0.1 stehen
-qLegt die Anzahl der Pakete pro Hop fest (Standard 3)-q 1 zeigt eine Zeit, -q 5 zeigt fünf
-mLegt die maximale Hop-Zahl fest (Standard 30)Mit -m 10 endete example.com beim siebten Hop, -m 256 wurde mit [max hops cannot be more than 255] abgelehnt
-ISendet Pakete als ICMP ECHOMit normalem Konto Meldung über fehlende Rechte und Exit-Code 1
-TSendet Pakete als TCP SYN (standardmäßig Port 80)Mit normalem Konto Meldung über fehlende Rechte und Exit-Code 1
-USendet per UDP mit festem Zielport 53example.com zeigte vom siebten bis zum zehnten Hop * * *, die Zieladresse erschien nicht

📎 Weitere Optionen: laut offiziellem Handbuch

OptionWas es tut
-wLegt die maximale Wartezeit auf eine Antwort fest (Standard 5 Sekunden)
-pLegt den Port fest (Startport bei UDP, fester Zielport bei TCP, Start-Sequenznummer bei ICMP)
-fLegt die Start-TTL fest (Standard 1)
-NLegt die Anzahl gleichzeitig gesendeter Pakete fest (Standard 16, bei Routern mit begrenzter Antwortrate verringern)
-sÄndert die Absenderadresse in die Adresse einer anderen Schnittstelle des Servers
-iLegt die Netzwerkschnittstelle für ausgehende Pakete fest (standardmäßig laut Routing-Tabelle)
-4Sendet nur über IPv4 (Standard ist IPv4, wenn ein Name IPv4- und IPv6-Adressen liefert)
-6Sendet nur über IPv6

🔲 Simulator für den traceroute-Befehl

Im Simulator unten kannst du die Route zu example.com mit -m verkürzen oder mit 127.0.0.1 und localhost -n, -q, -f (Start-Hop) sowie die rechtepflichtigen Optionen -I und -T selbst eingeben.

Simulator für den traceroute-Befehltraceroute 2.1.2
[root@server work]#
Läuft nur in deinem Browser und sendet keine echten Pakete. Mit ↑↓ rufst du frühere Befehle wieder auf.

4️⃣ Hops ohne Antwort in traceroute

  • ↪️ * * *-Zeilen und Firewalls

Auch wenn du die Sendeart ändern kannst, bleibt ein Hop ohne Antwort bei [* * *]. Laut offiziellem Handbuch steht jedes Sternchen für ein Paket ohne rechtzeitige Antwort, und die Wartezeit beträgt höchstens 5 Sekunden.

Bei * * * an einem Hop in der Mitte liegt der Schluss nahe, die Route sei dort unterbrochen. Auf der mit der Standardmethode gesendeten Route zu example.com war nur der fünfte Hop * * *, die Pakete passierten ihn aber, liefen über den sechsten Hop und erreichten beim siebten das Ziel.

-U sendet mit festem Zielport 53. Als wir mit -U Pakete an dasselbe example.com schickten, antwortete beim sechsten Hop der Router vor dem Ziel, danach folgte vom siebten bis zum zehnten Hop * * *, und die Zieladresse erschien nicht.

traceroute -U -n -m 10 example.com
traceroute to example.com (203.0.113.154), 10 hops max, 60 byte packets
 1  192.0.2.1  0.176 ms  0.096 ms  0.661 ms
 2  * * *
 3  198.51.100.13  0.622 ms  0.586 ms  0.562 ms
 4  198.51.100.49  0.898 ms  1.314 ms 198.51.100.53  1.159 ms
 5  * * *
 6  203.0.113.9  3.773 ms 203.0.113.27  3.275 ms 203.0.113.14  8.973 ms
 7  * * *
 8  * * *
 9  * * *
10  * * *

Das offizielle Handbuch erklärt, dass das Programm auf der Zielseite bei -U meist nicht antwortet und der letzte Hop deshalb nicht sichtbar ist. Auch auf einer Route, auf der eine Firewall die UDP-Ports von traceroute oder ICMP ECHO filtert, kommt von hinter dieser Firewall keine Antwort, und es folgt nur noch * * *.

Wo * * * erscheintSo liest du esErneut prüfen
Ein einzelner Hop in der MitteVon diesem Hop kommt keine Antwort — antworten spätere Hops, haben die Pakete ihn passiertSo lassen und die späteren Hops lesen
Vor dem Ziel bis -mDas Ziel oder eine Firewall davor filtert dieses Paket oder diesen Port (laut offiziellem Handbuch)Standardmethode / -T (root) / [-T -p Port]
Hops, die sich bei jedem Lauf ändernBegrenzt ein Router seine ICMP-Antwortrate, können einzelne Antworten fehlen (laut offiziellem Handbuch)[-N 1] · [-w 5]

Endet die Ausgabe vor dem Ziel, ändere die Sendeart und prüfe erneut. Das offizielle Handbuch stellt -T als Methode vor, die für den Weg durch Firewalls gedacht ist. Bei einem Ziel mit eindeutig offenem Port, etwa einem Mailserver, kann laut Handbuch die Angabe dieses Ports wie in [-T -p 25] auch dann durchkommen, wenn -I scheitert.

Das * an einem Hop in der Mitte kann sich auch je nach Sendeart oder Lauf ändern. Der zweite Hop antwortete mit der Standardmethode, zeigte mit -U aber * * *. Das offizielle Handbuch sagt, dass einzelne Antworten fehlen können, wenn ein Router seine ICMP-Antwortrate begrenzt, und rät, die gleichzeitig gesendeten Pakete mit [-N 1] zu verringern. traceroute verkürzt außerdem die Wartezeit anhand bereits erhaltener Antwortzeiten; erscheint dadurch ein * zu früh, gib wie in [-w 5] nur eine einzige Wartezeit an, um diese Berechnung abzuschalten (laut offiziellem Handbuch).

5️⃣ tracepath statt traceroute

  • ↪️ Auf Servern, auf denen die Installation schwierig ist

Auf einem Server, auf dem du keine Pakete installieren kannst, prüfst du dieselbe Route mit dem Befehl tracepath. Auf dem AlmaLinux-9.8-Server fehlte traceroute, tracepath war aber als iputils 20210202 vorhanden. Auf dem Debian-12-Server dagegen fehlte tracepath. Laut offiziellem tracepath-Handbuch läuft tracepath ohne root-Rechte, hat dafür aber weniger Optionen und sendet nur UDP. Wenn du also mit -I oder -T die Sendeart ändern oder mit -q pro Hop mehrere Pakete zum Vergleich senden willst, installiere traceroute und verwende es.

🔢 FAQ & empfohlene Inhalte

Nein, das zeigt der Exit-Code nicht. Er war 0, sowohl als die Standardmethode example.com beim siebten Hop erreichte als auch als -U bis zum zehnten Hop nicht ankam. Ungültige Optionen, -m-Werte außerhalb des Bereichs und fehlgeschlagene Namensauflösung endeten mit 2, -I und -T mit normalem Konto mit 1. Der Exit-Code unterscheidet nur Ausführungsfehler. Ob das Ziel erreicht wurde, prüfst du daran, ob die letzte Zeile die Zieladresse zeigt.

Laut Microsoft-Dokumentation sendet tracert unter Windows ICMP Echo Requests mit steigender TTL, während traceroute unter Linux standardmäßig UDP-Pakete sendet (laut offiziellem Handbuch). Um unter Linux mit derselben ICMP-Methode wie tracert zu prüfen, ergänze -I.

Legst du mit -f die erste TTL fest, beginnt die Ausgabe bei diesem Hop. Der Standardwert ist laut offiziellem Handbuch 1, und mit -f 2 auf 127.0.0.1 begannen die Hop-Nummern bei 2. War der maximale Hop kleiner als der Start-Hop, etwa bei -m 0, wurde der Aufruf mit [first hop out of range] abgelehnt.

ℹ️ Affiliate-Hinweis
Die Inhalte dieser Website enthalten Affiliate-Links. Kauft ein Besucher über einen dieser Links ein Produkt oder eine Dienstleistung, erhält die Website vom Verkäufer eine Provision. Der Betrag, den der Käufer zahlt(bei Aktionsrabatten sinkt er ↓), steigt dadurch nicht. Angegebene Preise, Rabatte und Lagerbestände entsprechen dem Stand bei Erstellung und können abweichen; prüfe sie daher vor dem Kauf beim Verkäufer. Produkte werden nach eigenen Kriterien ausgewählt und bewertet, und Provisionen beeinflussen weder die Reihenfolge noch den Inhalt der Bewertungen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Beweisen Sie, dass Sie ein Mensch sind: 4   +   7   =