Comment fonctionne Traceroute : Un guide complet
Découvrez comment traceroute découvre le chemin réseau étape par étape. Comprenez TTL, ICMP et comment interpréter les résultats.
Qu'est-ce que Traceroute ?
Traceroute est un outil de diagnostic réseau qui révèle le chemin que prennent les paquets de votre appareil vers un hôte de destination. Contrairement à ping, qui ne vous dit que si un hôte est accessible et combien de temps le voyage aller-retour prend, traceroute vous montre chaque routeur intermédiaire (hop) en cours de route — ainsi que la latence à chaque étape.
Les administrateurs système, les ingénieurs réseau et les équipes DevOps s'appuient quotidiennement sur traceroute pour localiser où les paquets sont retardés, perdus ou redirigés. Comprendre comment cela fonctionne en coulisses vous rend beaucoup plus efficace pour diagnostiquer les problèmes de connectivité.
Comment TTL (Time to Live) fait tout fonctionner
Traceroute exploite un mécanisme fondamental dans le protocole Internet : le champ TTL (Time to Live) dans l'en-tête IP. Chaque paquet IP porte une valeur TTL — un compteur qui décrémente d'un à chaque fois que le paquet passe par un routeur. Lorsque le TTL atteint zéro, le routeur rejette le paquet et renvoie un message ICMP Time Exceeded à l'expéditeur d'origine.
Voici le processus étape par étape :
- Envoyer un paquet avec TTL=1. Le premier routeur le reçoit, décrémente TTL à 0, rejette le paquet et renvoie un message ICMP Time Exceeded. Vous connaissez maintenant l'adresse IP et la latence du hop 1.
- Envoyer un paquet avec TTL=2. Il passe par le premier routeur (TTL devient 1), atteint le deuxième routeur (TTL devient 0), qui renvoie un ICMP Time Exceeded. Vous connaissez maintenant le hop 2.
- Répéter avec des valeurs TTL croissantes jusqu'à ce que le paquet atteigne la destination. L'hôte de destination répond différemment — avec un ICMP Echo Reply (pour le mode ICMP) ou un ICMP Port Unreachable (pour le mode UDP) — signalant que le trace est complet.
Typiquement, traceroute envoie trois sondes par hop pour mesurer la variabilité de la latence. C'est pourquoi vous voyez trois valeurs RTT (Round Trip Time) par ligne dans la sortie.
Lire la sortie de Traceroute
Un résultat typique de traceroute contient plusieurs colonnes d'informations :
- Numéro de hop — La position dans le chemin (1 est votre passerelle, le dernier est la destination).
- Adresse IP / Nom d'hôte — L'adresse du routeur. Le DNS inverse peut le résoudre en un nom d'hôte comme
ae-5.r24.amstnl02.nl.bb.gin.ntt.net, ce qui révèle souvent le FAI, la ville et le rôle du routeur. - RTT (Round Trip Time) — Généralement trois valeurs en millisecondes. Plus c'est bas, mieux c'est. De grands sauts entre des hops consécutifs indiquent un goulot d'étranglement.
- ASN (Numéro de Système Autonome) — Identifie quel réseau opère le routeur. Utile pour repérer où le trafic traverse entre les FAI.
- Perte de paquets — Le pourcentage de sondes qui n'ont reçu aucune réponse. Une certaine perte aux hops intermédiaires est normale (les routeurs dépriorisent ICMP), mais une perte au dernier hop indique un vrai problème.
Traceroute vs MTR : Quelle est la différence ?
traceroute s'exécute une fois et vous donne un instantané. mtr (My Traceroute) combine traceroute et ping en un seul outil qui sonde continuellement le chemin et met à jour les statistiques en temps réel.
Différences clés :
- Surveillance continue : mtr continue d'envoyer des sondes, vous pouvez donc observer des problèmes intermittents qu'un traceroute unique pourrait manquer.
- Précision statistique : Après des centaines de sondes, mtr vous donne des valeurs moyennes, meilleures, pires et d'écart type fiables pour chaque hop.
- Détection de perte de paquets : Des pics de perte de paquets brefs sont visibles dans mtr mais invisibles dans un traceroute unique.
Utilisez traceroute pour des vérifications rapides. Utilisez mtr lorsque vous devez construire un dossier avec des données statistiquement significatives — par exemple, lors du dépôt d'une plainte auprès de votre FAI.
ICMP vs UDP vs TCP : Choisir un protocole
Traceroute peut utiliser différents protocoles pour envoyer ses paquets de sonde, chacun avec des compromis :
- UDP (par défaut sur Linux/macOS) : Envoie des datagrammes UDP vers des ports à numéro élevé (33434+). Fonctionne bien dans la plupart des environnements mais peut être bloqué par des pare-feux.
- ICMP (par défaut sur Windows) : Envoie des paquets ICMP Echo Request — les mêmes que ceux utilisés par
ping. Certains routeurs limitent le débit ou rejettent ICMP, produisant de faux délais d'attente. - TCP : Envoie des paquets TCP SYN, généralement vers le port 80 ou 443. Excellent pour traverser les pare-feux qui bloquent UDP et ICMP mais autorisent le trafic web.
Si vous voyez trop de lignes * * * (délai d'attente), essayez de changer de protocole. Pour une comparaison détaillée, consultez notre guide sur UDP vs ICMP vs TCP Traceroute.
Problèmes courants et comment les interpréter
Délai d'attente (* * *)
Une ligne d'astérisques signifie que le routeur n'a pas renvoyé de message ICMP Time Exceeded dans la fenêtre de délai d'attente. Cela ne signifie pas nécessairement que le routeur est hors service — de nombreux routeurs sont configurés pour rejeter silencieusement les paquets expirés. Si les hops suivants répondent normalement, le délai d'attente est inoffensif.
Pics de latence à un seul hop
Un saut soudain dans le RTT à un hop — disons de 15 ms à 120 ms — suggère une congestion ou un long lien physique (par exemple, un câble transatlantique). Vérifiez si la latence reste élevée pour tous les hops suivants. Si c'est le cas, le goulot d'étranglement est réel. Si les hops suivants reviennent à la normale, le routeur était simplement lent à générer des réponses ICMP (dépriorisation du plan de contrôle).
Routage asymétrique
Traceroute ne montre que le chemin avant. Le chemin de retour peut être différent. Cela peut entraîner des résultats déroutants où la latence semble diminuer entre les hops — la réponse ICMP prend simplement un chemin plus court de retour.
Loops
Si vous voyez la même adresse IP apparaître à plusieurs hops consécutifs, il y a une boucle de routage. Cela se résout généralement en quelques minutes à mesure que les routeurs convergent, mais des boucles persistantes indiquent une mauvaise configuration.
Exemples pratiques
Voici des scénarios courants du monde réel où traceroute s'avère inestimable :
- Diagnostiquer un chargement de site web lent : Exécutez un traceroute vers le serveur et recherchez des hops à latence élevée. Si le pic de latence se produit à la périphérie de votre FAI, contactez-les. S'il se produit au réseau de destination, le problème est de leur côté.
- Vérifier le routage CDN : Traceroute vers un domaine devant un CDN pour confirmer que le trafic va au nœud de périphérie le plus proche plutôt que de traverser des continents.
- Déboguer la connectivité VPN : Comparez les traceroutes avec et sans VPN pour voir si le tunnel ajoute une latence excessive ou un routage à travers des emplacements inattendus.
- Enquête sur le lag dans les jeux : Identifiez le hop exact causant le jitter afin que vous puissiez le signaler à votre FAI avec des preuves.
Visualisez vos Traceroutes avec TraceMapper
Le traceroute en ligne de commande est puissant, mais interpréter la sortie texte brute peut être fastidieux. TraceMapper exécute des traceroutes depuis plusieurs emplacements globaux et trace chaque hop sur une carte interactive — complète avec un codage couleur de latence, des informations ASN et des données de géolocalisation. Vous pouvez passer d'un protocole ICMP, UDP et TCP en un seul clic.
Essayez un traceroute gratuit maintenant, ou explorez nos autres outils de diagnostic réseau : Ping, DNS Lookup, et HTTP Check.