traceroute-commando: installatie, gebruik en de opties -n, -I, -T

TestomgevingRHEL-familieAlmaLinux 9.8root-accountDebian 12 · traceroute 2.1.2 gewoon accountGecontroleerd op 2026-10-29

Om hop voor hop te controleren langs welke routers pakketten naar de bestemming gaan, gebruik je het traceroute-commando. Op de AlmaLinux 9.8-server was traceroute niet geïnstalleerd, dus hebben we het met dnf geïnstalleerd, en op een Debian 12-server met traceroute 2.1.2 bereikte de route naar example.com de bestemming bij de zevende hop.

De onderstaande uitvoer komt van de Debian 12-server, uitgevoerd met een gewoon account, en alleen de rpm- en dnf-uitvoer in het installatiehoofdstuk komt van de AlmaLinux 9.8-server (root-account). De hostnaam van de server is veranderd in server1, en de router- en bestemmingsadressen in de routes zijn vervangen door voorbeeldadressen (192.0.2.x, 198.51.100.x, 203.0.113.x). Het releasenummer van het geïnstalleerde pakket (hoofdversie 2.1 blijft gelijk) en de dnf-metadatatijd zijn ook voorbeeldwaarden, en de responstijden zijn de echt gemeten waarden.

1️⃣ traceroute installeren

  • ↪️ dnf bij de RHEL-familie, apt bij de Debian-familie

Of traceroute standaard is geïnstalleerd, hangt af van de distributie. Op de AlmaLinux 9.8-server gaf het uitvoeren [traceroute: command not found], en een zoekopdracht met rpm vond geen geïnstalleerd pakket.

rpm -q traceroute
package traceroute is not installed

In de RHEL-familie installeer je het met dnf. Een voorbeeld met [--assumeno] toonde één pakket om te installeren, traceroute uit de baseos-repository, zonder andere pakketten.

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.

De downloadgrootte was 56k en de grootte na installatie 107k. [--assumeno] beantwoordt alle vragen met no, dus er wordt niets geïnstalleerd en het commando eindigt met [Operation aborted.] (volgens de officiële dnf-documentatie).

De echte installatie gebeurde met [dnf install traceroute], zonder [--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!

Onder [Installed:] verscheen alleen het pakket traceroute, en de installatie eindigde zonder afhankelijkheden met [Complete!].

Na de installatie hebben we de versie gecontroleerd met [traceroute --version].

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

Het pad van het uitvoerbare bestand dat [command -v traceroute] vond, was [/usr/bin/traceroute].

In de Debian-familie installeer je het pakket traceroute uit de repository van de distributie met [apt install traceroute] (volgens de officiële Debian-pakketinformatie). De geïnstalleerde versie controleer je met --version.

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

Op de Debian 12-server was het pakket traceroute al geïnstalleerd, en de versie verscheen als [Modern traceroute for Linux] 2.1.2.

2️⃣ Zo gebruik je het traceroute-commando

  • ↪️ Basisvorm en uitvoerregels lezen

traceroute neemt een bestemmingsnaam of IP-adres en stuurt pakketten met een TTL die bij 1 begint en steeds met één toeneemt. Een pakket met TTL 1 verloopt bij de eerste router, een pakket met TTL 2 bij de tweede. Uit de [time exceeded]-antwoorden van die routers toont traceroute per hop het adres en de retourtijd (volgens de officiële handleiding).

Bereikt een pakket de bestemming, dan antwoordt die met [port unreachable] en eindigt de uitvoer bij die hop; lukt dat niet, dan gaat het door tot het maximale aantal hops. Volgens de officiële handleiding worden per hop drie pakketten gestuurd, dus een regel toont drie tijden, en standaard worden tot 30 hops gecontroleerd.

Voor example.com hebben we met -n alleen adressen getoond en met -m 10 alleen tot de tiende hop gecontroleerd.

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

De eerste regel toonde de bestemmingsnaam, het werkelijk gebruikte adres, het maximale aantal hops en de pakketgrootte van 60 bytes. Bij de zevende hop antwoordde het bestemmingsadres, dus de uitvoer eindigde zonder tot de tiende hop te gaan, en het geheel duurde minder dan een seconde.

UitvoerBetekenis
traceroute to example.com (203.0.113.154)Bestemmingsnaam en het opgeloste adres waarnaar werkelijk is gestuurd
10 hops maxMaximaal aantal hops — in te stellen met -m, standaard 30
60 byte packetsGrootte van de verstuurde pakketten — standaard 60 bytes voor IPv4 en 80 bytes voor IPv6 (volgens de officiële handleiding)
1Hopnummer — de TTL-waarde van dat pakket
192.0.2.1Adres van de router die bij die hop antwoordde
0.110 ms 0.083 ms 0.067 msRetourtijden van de drie pakketten naar één hop
198.51.100.77 … 198.51.100.13Regel met twee adressen, omdat bij dezelfde hop verschillende routers op verschillende pakketten antwoordden
* * *Geen van de drie pakketten kreeg op tijd antwoord — elk sterretje is één pakket
!H · !N · !P · !XUnreachable-teken achter de tijd — host, netwerk of protocol onbereikbaar, administratief verboden (volgens de officiële handleiding)

De derde en vierde hop toonden twee adressen op één regel, de zesde hop drie. Als verschillende routers antwoorden op de drie pakketten naar een hop, toont traceroute volgens de officiële handleiding alle antwoordende adressen achter elkaar.

Zonder -n zet traceroute de antwoordende adressen om in hostnamen.

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

Met localhost verscheen in de hopkolom de hostnaam van de Debian 12-server, met het adres 127.0.0.1 tussen haakjes.

3️⃣ traceroute-opties

  • ↪️ -n, -q, -m en de verzendmethoden -I, -T

De --help van traceroute 2.1.2 toont 34 opties. Daarvan hebben we -n, -q en -m, die de uitvoer veranderen, en -I en -T, die de verstuurde pakketten veranderen, uitgeprobeerd met een gewoon account op de Debian 12-server.

[traceroute -n] toont alleen IP-adressen, zonder ze om te zetten in hostnamen. Met -n op dezelfde localhost bleef in de hopkolom alleen 127.0.0.1 over.

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 bepaalt het aantal pakketten per hop, standaard 3. Met -q 1 verscheen één tijd, met -q 5 verschenen er vijf.

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 verandert het maximale aantal hops. De waarde 256 werd geweigerd met [max hops cannot be more than 255].

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

Pakketten worden standaard via UDP verstuurd. -I stuurt ze als ICMP ECHO, -T als TCP SYN (standaard poort 80). Met deze twee opties controleer je een route die UDP filtert opnieuw met een ander soort pakket. Met een gewoon account gaven beide opties een melding over onvoldoende rechten en eindigden ze met afsluitcode 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

De officiële handleiding noemt de standaardmethode en -U (vaste bestemmingspoort 53) als de methoden die voor gewone accounts zijn toegestaan. -I werkt met een gewoon account alleen als de kernelinstelling ping_group_range de groep van dat account toestaat.

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

De waarde op de Debian 12-server was [1 0], wat volgens de Linux-kerneldocumentatie geen enkele groep toestaat. -T hoort ongeacht deze instelling niet bij de methoden die voor gewone accounts zijn toegestaan, dus voer deze twee opties uit met een account met root-rechten.

📌 Belangrijkste opties: resultaten uit dit artikel

OptieTaakResultaat in dit artikel
-nToont alleen IP-adressen, zonder ze om te zetten in hostnamenMet localhost bleef in de hopkolom alleen 127.0.0.1 over
-qBepaalt het aantal pakketten per hop (standaard 3)-q 1 toont één tijd, -q 5 toont er vijf
-mBepaalt het maximale aantal hops (standaard 30)Met -m 10 eindigde example.com bij de zevende hop, -m 256 werd geweigerd met [max hops cannot be more than 255]
-IStuurt pakketten als ICMP ECHOMelding over onvoldoende rechten en afsluitcode 1 met een gewoon account
-TStuurt pakketten als TCP SYN (standaard poort 80)Melding over onvoldoende rechten en afsluitcode 1 met een gewoon account
-UStuurt via UDP met bestemmingspoort vast op 53example.com toonde * * * van de zevende tot de tiende hop, en het bestemmingsadres verscheen niet

📎 Andere opties: volgens de officiële handleiding

OptieTaak
-wBepaalt de maximale wachttijd op een antwoord (standaard 5 seconden)
-pBepaalt de poort (startpoort bij UDP, vaste bestemmingspoort bij TCP, startvolgnummer bij ICMP)
-fBepaalt de start-TTL (standaard 1)
-NBepaalt het aantal pakketten dat tegelijk wordt verstuurd (standaard 16, verlaag dit bij routers die hun antwoordsnelheid beperken)
-sVerandert het bronadres in het adres van een andere interface van de server
-iBepaalt de netwerkinterface waarlangs pakketten vertrekken (standaard volgens de routeringstabel)
-4Stuurt alleen via IPv4 (standaard IPv4 als een naam zowel IPv4- als IPv6-adressen teruggeeft)
-6Stuurt alleen via IPv6

🔲 Simulator voor het traceroute-commando

In de simulator hieronder kun je de route naar example.com inkorten met -m, of op 127.0.0.1 en localhost zelf -n, -q, -f (starthop) en de opties -I en -T proberen, die rechten vereisen.

Simulator voor het traceroute-commandotraceroute 2.1.2
[root@server work]#
Werkt alleen in je browser en verstuurt geen echte pakketten. Met ↑↓ haal je eerdere commando's terug.

4️⃣ Hops zonder antwoord in traceroute

  • ↪️ * * *-regels en firewalls

Ook als je de verzendmethode kunt veranderen, blijft een hop die niet antwoordt op [* * *] staan. Volgens de officiële handleiding is elk sterretje één pakket zonder tijdig antwoord, en de wachttijd is maximaal 5 seconden.

Bij * * * op een hop halverwege denk je al snel dat de route daar breekt. Op de route naar example.com met de standaardmethode was alleen de vijfde hop * * *, maar de pakketten passeerden die hop, gingen via de zesde en bereikten bij de zevende de bestemming.

-U verstuurt met de bestemmingspoort vast op 53. Toen we met -U pakketten naar hetzelfde example.com stuurden, antwoordde bij de zesde hop de router vóór de bestemming, daarna ging * * * door van de zevende tot de tiende hop en verscheen het bestemmingsadres niet.

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  * * *

De officiële handleiding legt uit dat met -U het programma aan de bestemmingskant meestal niet antwoordt, zodat de laatste hop niet zichtbaar is. Ook op een route waar een firewall de UDP-poorten van traceroute of ICMP ECHO filtert, komt van achter die firewall geen antwoord en gaat alleen * * * door.

Waar * * * verschijntZo lees je hetOpnieuw controleren
Eén hop halverwegeGeen antwoord van die hop — als latere hops antwoorden, zijn de pakketten die hop gepasseerdLaat het staan en lees de latere hops
Vóór de bestemming tot -mDe bestemming of een firewall ervoor filtert dat pakket of die poort (volgens de officiële handleiding)Standaardmethode / -T (root) / [-T -p poort]
Hops die per uitvoering veranderenAls een router zijn ICMP-antwoordsnelheid beperkt, kunnen sommige antwoorden ontbreken (volgens de officiële handleiding)[-N 1] · [-w 5]

Stopte de uitvoer vóór de bestemming, verander dan de verzendmethode en controleer opnieuw. De officiële handleiding stelt -T voor als methode die is gemaakt om firewalls te passeren. Bij een bestemming met een duidelijk open poort, zoals een mailserver, kan volgens de handleiding het opgeven van die poort, zoals in [-T -p 25], ook lukken als -I niet aankomt.

De * op een hop halverwege kan ook veranderen per verzendmethode of uitvoering. De tweede hop antwoordde met de standaardmethode, maar toonde * * * met -U. De officiële handleiding zegt dat sommige antwoorden kunnen ontbreken als een router zijn ICMP-antwoordsnelheid beperkt, en raadt aan het aantal tegelijk verstuurde pakketten te verlagen met [-N 1]. traceroute verkort bovendien de wachttijd op basis van al ontvangen responstijden; verschijnt daardoor een * te vroeg, geef dan zoals in [-w 5] één wachttijd op om die berekening uit te zetten (volgens de officiële handleiding).

5️⃣ tracepath in plaats van traceroute

  • ↪️ Op servers waar installeren lastig is

Op een server waar je geen pakketten kunt installeren, controleer je dezelfde route met het tracepath-commando. De AlmaLinux 9.8-server had geen traceroute, maar wel tracepath als iputils 20210202. De Debian 12-server had daarentegen geen tracepath. Volgens de officiële tracepath-handleiding draait tracepath zonder root-rechten, maar heeft het minder opties en verstuurt het alleen UDP. Als je dus met -I of -T de verzendmethode wilt veranderen of met -q meerdere pakketten per hop wilt versturen om te vergelijken, installeer en gebruik dan traceroute.

🔢 FAQ & aanbevolen content

Nee, dat zie je niet aan de afsluitcode. Die was 0, zowel toen de standaardmethode example.com bij de zevende hop bereikte als toen -U het tot de tiende hop niet bereikte. Ongeldige opties, -m-waarden buiten bereik en mislukte naamomzetting eindigden met 2, en -I en -T met een gewoon account met 1. De afsluitcode onderscheidt alleen uitvoeringsfouten, dus of de bestemming is bereikt, controleer je aan de hand van het bestemmingsadres in de laatste regel.

Volgens de Microsoft-documentatie stuurt tracert in Windows ICMP Echo Requests met een oplopende TTL, terwijl traceroute in Linux standaard UDP-pakketten stuurt (volgens de officiële handleiding). Wil je in Linux met dezelfde ICMP-methode als tracert controleren, voeg dan -I toe.

Als je met -f de eerste TTL instelt, begint de uitvoer bij die hop. De standaardwaarde is volgens de officiële handleiding 1, en met -f 2 op 127.0.0.1 begonnen de hopnummers bij 2. Was de maximale hop kleiner dan de starthop, zoals bij -m 0, dan werd het commando geweigerd met [first hop out of range].

ℹ️ Affiliatemelding
De content van deze site bevat affiliatelinks. Koopt een bezoeker via een van deze links een product of dienst, dan ontvangt deze site een commissie van de verkoper. Het bedrag dat de koper betaalt (bij acties gaat het omlaag ↓) wordt daardoor niet hoger. De vermelde prijzen, kortingen en voorraad gelden op het moment van schrijven en kunnen afwijken; controleer ze daarom vóór je aankoop bij de verkoper. Producten worden gekozen en beoordeeld volgens onze eigen criteria, en commissies hebben geen invloed op de volgorde of de inhoud van de beoordelingen.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Laat zien dat je geen machine bent: 10   +   5   =