Commande traceroute : installation, utilisation et options -n, -I, -T
Pour vérifier saut par saut les routeurs que traversent les paquets jusqu'à la destination, utilisez la commande traceroute. traceroute n'étant pas installé sur le serveur AlmaLinux 9.8, nous l'avons installé avec dnf, et depuis un serveur Debian 12 qui contient traceroute 2.1.2, le tracé du chemin vers example.com a atteint la destination au septième saut.
La sortie ci-dessous provient du serveur Debian 12, exécutée avec un compte standard, et seules les sorties rpm et dnf du chapitre sur l'installation viennent du serveur AlmaLinux 9.8 (compte root). Le nom d'hôte du serveur a été remplacé par server1, et les adresses des routeurs et des destinations par des adresses d'exemple (192.0.2.x, 198.51.100.x, 203.0.113.x). Le numéro de version du paquet installé (la version majeure 2.1 ne change pas) et l'heure des métadonnées dnf sont aussi des valeurs d'exemple, et les temps de réponse sont ceux réellement mesurés.
1️⃣ Installer traceroute
L'installation par défaut de traceroute dépend de la distribution. Sur le serveur AlmaLinux 9.8, son exécution a renvoyé [traceroute: command not found], et une recherche avec rpm n'a trouvé aucun paquet installé.
rpm -q traceroutepackage traceroute is not installedDans la famille RHEL, on l'installe avec dnf. Un aperçu avec [--assumeno] a montré un seul paquet à installer, traceroute du dépôt baseos, sans aucun autre paquet.
dnf install --assumeno tracerouteLast 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.La taille de téléchargement était de 56k et la taille après installation de 107k. [--assumeno] répond no à toutes les questions, donc rien n'est installé et la commande se termine par [Operation aborted.] (selon la documentation officielle de dnf).
L'installation réelle a été faite avec [dnf install traceroute], sans [--assumeno].
dnf install tracerouteLast 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!Sous [Installed:], seul le paquet traceroute est apparu, et l'installation s'est terminée par [Complete!] sans aucune dépendance.
Après l'installation, nous avons vérifié la version avec [traceroute --version].
traceroute --versionModern traceroute for Linux, version 2.1.0
Copyright (c) 2016 Dmitry Butskoy, License: GPL v2 or any laterLe chemin de l'exécutable trouvé avec [command -v traceroute] était [/usr/bin/traceroute].
Dans la famille Debian, installez le paquet traceroute du dépôt de la distribution avec [apt install traceroute] (selon les informations officielles sur les paquets Debian). Vérifiez la version installée avec --version.
traceroute --versionModern traceroute for Linux, version 2.1.2
Copyright (c) 2016 Dmitry Butskoy, License: GPL v2 or any laterSur le serveur Debian 12, le paquet traceroute était déjà installé, et la version affichée était [Modern traceroute for Linux] 2.1.2.
2️⃣ Utiliser la commande traceroute
traceroute reçoit un nom ou une adresse IP de destination et envoie des paquets dont le TTL commence à 1 et augmente de un à chaque fois. Un paquet de TTL 1 expire au premier routeur, et un paquet de TTL 2 au deuxième. À partir des réponses [time exceeded] renvoyées par ces routeurs, traceroute affiche l'adresse et le temps aller-retour de chaque saut (selon le manuel officiel).
Quand un paquet atteint la destination, celle-ci répond par [port unreachable] et le tracé s'arrête à ce saut ; sinon, il continue jusqu'au nombre maximal de sauts. Selon le manuel officiel, trois paquets sont envoyés par saut, donc chaque ligne affiche trois temps, et jusqu'à 30 sauts sont vérifiés par défaut.
Pour example.com, nous avons affiché uniquement les adresses avec -n et vérifié seulement jusqu'au dixième saut avec -m 10.
traceroute -n -m 10 example.comtraceroute 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 msLa première ligne a indiqué le nom de destination, l'adresse réellement utilisée, le nombre maximal de sauts et la taille de paquet de 60 octets. L'adresse de destination a répondu au septième saut, le tracé s'est donc arrêté sans aller jusqu'au dixième, et l'exécution complète a pris moins d'une seconde.
| Sortie | Signification |
|---|---|
| traceroute to example.com (203.0.113.154) | Nom de destination et adresse résolue vers laquelle les paquets sont réellement envoyés |
| 10 hops max | Nombre maximal de sauts vérifiés — défini avec -m, 30 par défaut |
| 60 byte packets | Taille des paquets envoyés — 60 octets par défaut en IPv4, 80 octets en IPv6 (selon le manuel officiel) |
| 1 | Numéro de saut — la valeur TTL de ce paquet |
| 192.0.2.1 | Adresse du routeur qui a répondu à ce saut |
| 0.110 ms 0.083 ms 0.067 ms | Temps aller-retour des trois paquets envoyés à un saut |
| 198.51.100.77 … 198.51.100.13 | Ligne avec deux adresses, car des routeurs différents ont répondu à différents paquets au même saut |
| * * * | Aucun des trois paquets n'a reçu de réponse à temps — chaque astérisque correspond à un paquet |
| !H · !N · !P · !X | Indicateur d'inaccessibilité après le temps — hôte, réseau ou protocole inaccessible, interdiction administrative (selon le manuel officiel) |
Les troisième et quatrième sauts ont affiché deux adresses sur une ligne, et le sixième saut trois. Quand des routeurs différents répondent aux trois paquets envoyés à un saut, traceroute affiche à la suite toutes les adresses qui ont répondu, comme l'indique le manuel officiel.
Sans -n, traceroute convertit les adresses qui répondent en noms d'hôte.
traceroute localhosttraceroute 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 msSur localhost, la colonne du saut a affiché le nom d'hôte du serveur Debian 12, suivi de l'adresse 127.0.0.1 entre parenthèses.
3️⃣ Options de traceroute
Le --help de traceroute 2.1.2 affiche 34 options. Parmi elles, nous avons essayé avec un compte standard du serveur Debian 12 -n, -q et -m, qui modifient la sortie, ainsi que -I et -T, qui modifient les paquets envoyés.
[traceroute -n] affiche uniquement les adresses IP, sans les convertir en noms d'hôte. Avec -n sur le même localhost, seule 127.0.0.1 est restée dans la colonne du saut.
traceroute -n localhosttraceroute 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 définit le nombre de paquets envoyés par saut, 3 par défaut. Avec -q 1, un seul temps est apparu, et avec -q 5, cinq sont apparus.
traceroute -q 1 -n 127.0.0.1traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
1 127.0.0.1 0.096 mstraceroute -q 5 -n 127.0.0.1traceroute 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 modifie le nombre maximal de sauts vérifiés. La valeur 256 a été refusée avec [max hops cannot be more than 255].
traceroute -m 256 -n 127.0.0.1max hops cannot be more than 255Par défaut, les paquets sont envoyés en UDP. -I les envoie en ICMP ECHO, et -T en TCP SYN (port 80 par défaut). Ces deux options servent à revérifier avec un autre type de paquet un chemin qui filtre l'UDP. Avec un compte standard, les deux options ont laissé un message de droits insuffisants et se sont terminées avec le code de sortie 1.
traceroute -I -n 127.0.0.1You do not have enough privileges to use this traceroute method.
socket: Operation not permittedtraceroute -T -n 127.0.0.1You do not have enough privileges to use this traceroute method.
socket: Operation not permittedLe manuel officiel indique le mode par défaut et -U (port de destination 53 fixe) comme les modes autorisés pour les comptes standard. -I ne fonctionne avec un compte standard que si le réglage du noyau ping_group_range autorise le groupe de ce compte.
cat /proc/sys/net/ipv4/ping_group_range1 0La valeur du serveur Debian 12 était [1 0], qui selon la documentation du noyau Linux n'autorise aucun groupe. -T ne fait pas partie des modes autorisés pour les comptes standard, quel que soit ce réglage : exécutez donc ces deux options depuis un compte disposant des droits root.
📌 Options principales : résultats de cet article
| Option | Rôle | Résultat dans cet article |
|---|---|---|
| -n | Affiche uniquement les adresses IP, sans les convertir en noms d'hôte | Sur localhost, seule 127.0.0.1 est restée dans la colonne du saut |
| -q | Définit le nombre de paquets envoyés par saut (3 par défaut) | -q 1 affiche un temps, -q 5 en affiche cinq |
| -m | Définit le nombre maximal de sauts vérifiés (30 par défaut) | Avec -m 10, example.com s'est arrêté au septième saut ; -m 256 a été refusé avec [max hops cannot be more than 255] |
| -I | Envoie les paquets en ICMP ECHO | Message de droits insuffisants et code de sortie 1 avec un compte standard |
| -T | Envoie les paquets en TCP SYN (port 80 par défaut) | Message de droits insuffisants et code de sortie 1 avec un compte standard |
| -U | Envoie en UDP avec le port de destination fixé à 53 | example.com a affiché * * * du septième au dixième saut, et l'adresse de destination n'est pas apparue |
📎 Autres options : selon le manuel officiel
| Option | Rôle |
|---|---|
| -w | Définit le temps d'attente maximal d'une réponse (5 secondes par défaut) |
| -p | Définit le port (port de départ en UDP, port de destination fixe en TCP, numéro de séquence de départ en ICMP) |
| -f | Définit le TTL de départ (1 par défaut) |
| -N | Définit le nombre de paquets envoyés en même temps (16 par défaut, à réduire avec les routeurs qui limitent leur débit de réponse) |
| -s | Remplace l'adresse source par une autre adresse d'interface du serveur |
| -i | Définit l'interface réseau de sortie des paquets (par défaut, selon la table de routage) |
| -4 | Envoie uniquement en IPv4 (IPv4 par défaut si un nom renvoie des adresses IPv4 et IPv6) |
| -6 | Envoie uniquement en IPv6 |
🔲 Simulateur de la commande traceroute
Dans le simulateur ci-dessous, vous pouvez raccourcir le chemin vers example.com avec -m, ou essayer sur 127.0.0.1 et localhost -n, -q, -f (saut de départ) ainsi que -I et -T, qui demandent des droits.
4️⃣ Sauts sans réponse dans traceroute
Même si vous pouvez changer le mode d'envoi, un saut qui ne répond pas reste affiché [* * *]. Selon le manuel officiel, chaque astérisque correspond à un paquet sans réponse à temps, et l'attente est de 5 secondes au maximum.
Devant * * * sur un saut intermédiaire, on conclut facilement que le chemin est coupé à cet endroit. Sur le chemin vers example.com envoyé avec le mode par défaut, seul le cinquième saut était * * *, mais les paquets ont franchi ce saut, sont passés par le sixième et ont atteint la destination au septième.
-U envoie avec le port de destination fixé à 53. En envoyant des paquets au même example.com avec -U, le routeur situé devant la destination a répondu au sixième saut, puis * * * s'est répété du septième au dixième saut sans que l'adresse de destination n'apparaisse.
traceroute -U -n -m 10 example.comtraceroute 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 * * *Le manuel officiel explique qu'avec -U, le programme côté destination ne répond généralement pas, si bien que le dernier saut reste invisible. Sur un chemin où un pare-feu filtre les ports UDP de traceroute ou ICMP ECHO, aucune réponse ne vient non plus de derrière ce pare-feu, et seuls des * * * se suivent.
| Emplacement de * * * | Comment le lire | Revérifier |
|---|---|---|
| Un seul saut intermédiaire | Pas de réponse de ce saut — si les sauts suivants répondent, les paquets l'ont franchi | Laissez-le et lisez les sauts suivants |
| Avant la destination, jusqu'à -m | La destination ou un pare-feu placé devant filtre ce paquet ou ce port (selon le manuel officiel) | Mode par défaut, -T (root), [-T -p port] |
| Sauts qui changent à chaque exécution | Si un routeur limite son débit de réponse ICMP, certaines réponses peuvent manquer (selon le manuel officiel) | [-N 1] · [-w 5] |
Si le tracé s'est arrêté avant la destination, changez de mode d'envoi et vérifiez à nouveau. Le manuel officiel présente -T comme un mode conçu pour traverser les pare-feu. Pour une destination dont un port est clairement ouvert, comme un serveur de messagerie, il explique qu'indiquer ce port comme dans [-T -p 25] peut aboutir même lorsque -I n'y parvient pas.
Le * d'un saut intermédiaire peut aussi varier selon le mode d'envoi ou l'exécution. Le deuxième saut a répondu avec le mode par défaut, mais a affiché * * * avec -U. Le manuel officiel indique que certaines réponses peuvent manquer si un routeur limite son débit de réponse ICMP, et conseille de réduire le nombre de paquets envoyés en même temps avec [-N 1]. traceroute raccourcit aussi son attente d'après les temps de réponse déjà reçus ; si un * apparaît trop tôt pour cette raison, indiquez un seul temps d'attente comme dans [-w 5] pour désactiver ce calcul (selon le manuel officiel).
5️⃣ tracepath à la place de traceroute
Sur un serveur où vous ne pouvez pas installer de paquets, vérifiez le même chemin avec la commande tracepath. Le serveur AlmaLinux 9.8 n'avait pas traceroute, mais tracepath y était présent avec iputils 20210202. À l'inverse, le serveur Debian 12 n'avait pas tracepath. Selon le manuel officiel de tracepath, il s'exécute sans droits root, mais offre moins d'options et n'envoie que de l'UDP. Si vous devez donc changer de mode d'envoi avec -I ou -T, ou envoyer plusieurs paquets par saut avec -q pour les comparer, installez et utilisez traceroute.
🔢 FAQ & contenus recommandés
Réseau · Configuration
[Linux] Commande ip : gérer les interfaces réseau et les réglages
La commande ip vérifie et gère l'état des interfaces réseau, les adresses IP et la table de routage.
Pare-feu · Ubuntu
[Ubuntu] Configurer le pare-feu UFW sous Ubuntu
Configuration pour activer UFW, le pare-feu par défaut d'Ubuntu, et vérifier son état et ses règles.
Réseau · DNS
Commande host sous Linux | commande de requête DNS
La commande host interroge le DNS pour convertir les noms d'hôte en adresses IP et les adresses IP en noms d'hôte.
ℹ️ Mention d'affiliation
Le contenu de ce site contient des liens d'affiliation. Lorsqu'un visiteur achète un produit ou un service via l'un de ces liens, le site perçoit une commission du vendeur. Le montant payé par l'acheteur(il baisse lors des promotions ↓), lui, n'augmente pas. Les prix, remises et stocks indiqués correspondent à la date de rédaction et peuvent différer ; vérifiez-les donc auprès du vendeur avant d'acheter. Les produits sont choisis et évalués selon nos propres critères, et les commissions n'influencent ni l'ordre de présentation ni le contenu des évaluations.