Linux / Commande traceroute : suivre les sauts et interpréter les réponses
traceroute explore les routeurs vers une destination en augmentant progressivement la durée de vie des sondes, appelée TTL en IPv4 ou limite de sauts en IPv6. Il aide à observer les réponses et délais du chemin, mais un astérisque ne prouve pas une coupure. Les sondes et leurs réponses ne décrivent pas avec certitude le trajet de tous les échanges applicatifs.
Comprendre la trace et lancer une première observation
TTL signifie Time to Live. Quand sa valeur expire au cours du parcours, un routeur peut renvoyer une erreur ICMP, Internet Control Message Protocol. En faisant progresser cette limite, l’outil recueille les réponses de différents niveaux du chemin. Ces réponses peuvent être filtrées ou limitées.
traceroute [OPTIONS] DESTINATION
traceroute example.com
traceroute -n example.com
Remplacez example.com par une destination dont le diagnostic est autorisé. -n évite de convertir les adresses des réponses en noms de machines ; il n’empêche pas la résolution initiale du nom de destination. Notez l’adresse réellement choisie si vous souhaitez comparer plusieurs observations.
Cette description concerne Traceroute for Linux. Consultez man traceroute et traceroute --version sur la machine : les options d’un autre système ou d’une autre implémentation ne sont pas forcément identiques. Une installation minimale peut ne pas disposer de cet outil.
Lire les délais et les astérisques
Voici une sortie fictive et abrégée, avec une adresse réservée à la documentation :
1 192.0.2.1 1.0 ms 0.9 ms 1.1 ms
2 * * *
Le premier nombre désigne le niveau de saut sondé. Par défaut, cette implémentation envoie trois sondes par niveau : les trois temps sont leurs allers-retours, pas trois morceaux successifs du trajet. Si plusieurs équipements répondent au même niveau, plusieurs adresses peuvent apparaître.
Un astérisque indique que la réponse attendue n’a pas été obtenue avant le délai. Si des niveaux ultérieurs répondent, le routeur silencieux peut simplement limiter ses messages de diagnostic. Ne supprimez pas une route ou ne redémarrez pas un équipement à partir de cette seule ligne.
Un RTT élevé à un niveau intermédiaire ne mesure pas directement le délai ajouté au trafic qui le traverse. Le traitement des réponses ICMP et leur trajet retour interviennent aussi. Comparez les niveaux suivants, la destination et des observations répétées dans les mêmes conditions avant d’attribuer un goulot d’étranglement.
Des codes explicites tels que !H, !N ou !X donnent une information supplémentaire : respectivement une inaccessibilité de l’hôte, du réseau ou une interdiction administrative rapportée. Ils ne se lisent pas comme un simple silence. La répartition de charge et les chemins asymétriques peuvent également changer les réponses visibles entre deux exécutions.
Comparer UDP, ICMP et TCP
La méthode habituelle utilise des sondes UDP, User Datagram Protocol. -I sélectionne ICMP Echo ; -T sélectionne TCP SYN, au début d’une tentative de connexion TCP, Transmission Control Protocol. La méthode disponible dépend des permissions, du noyau et de l’implémentation.
traceroute -n -I example.com
sudo traceroute -n -T -p 443 example.com
La seconde commande illustre une trace TCP vers le port 443 lorsque des droits supplémentaires sont nécessaires. Utilisez le port réellement autorisé et pertinent pour votre service. Un filtre réseau peut traiter différemment UDP, ICMP et TCP ; des résultats différents ne sont donc pas contradictoires à eux seuls.
Une trace TCP qui atteint sa destination ne vérifie ni la négociation TLS, Transport Layer Security, ni le contenu HTTP du site. Cette méthode peut recevoir une réponse de port fermé aussi bien qu’une réponse de port en écoute. Confirmez le service avec un test applicatif adapté.
Limiter le diagnostic et choisir l’outil adapté
traceroute -n -m 15 -q 2 -w 2 example.com
Cet exemple fixe un maximum de quinze sauts, deux sondes par niveau et un délai d’attente maximal de deux secondes par sonde. -w ne fixe pas une durée globale de deux secondes : plusieurs sondes et niveaux peuvent être nécessaires. Réduire trop fortement l’attente peut masquer une réponse lente.
| Option | Question traitée |
|---|---|
| -n | Lire les adresses sans recherche inverse de noms. |
| -4 / -6 | Observer une famille IP donnée. |
| -I / -T | Choisir ICMP Echo / TCP SYN. |
| -m sauts | Limiter la progression de la trace. |
| -q nombre | Choisir le nombre de sondes par niveau. |
| -w secondes | Limiter l’attente des réponses, sans définir une échéance globale. |
Pour une comparaison, gardez la même destination résolue, la même famille, le même point de départ et des réglages comparables. Commencez par une observation limitée ; augmenter la fréquence ou multiplier les sondes peut elle-même provoquer des limitations de réponses.
La commande tracepath pour le chemin et la PMTU convient à une première exploration avec moins de réglages et une attention particulière à la taille des paquets. ip pour les interfaces et routes permet de contrôler la configuration locale ; traceroute envoie réellement des sondes et répond à une autre question.
Le manuel de Traceroute for Linux précise les méthodes, les droits et les marqueurs de sortie. Interprétez toujours la trace avec les symptômes du service et le réseau effectivement examiné.




