Aller au contenu principal
Gaprod

Traceroute — Chemin réseau

Visualisez le chemin emprunté par vos paquets réseau hop par hop, mesurez la latence de chaque saut et diagnostiquez les problèmes de routage.

Traceroute

Visualisez le chemin réseau de vos paquets hop par hop.

Pourquoi le traceroute ne fonctionne-t-il pas dans le navigateur ?

Le traceroute repose sur des paquets ICMP ou UDP avec TTL décroissant, envoyés en raw sockets — une capacité système que les navigateurs n'exposent pas pour des raisons de sécurité. Il doit être exécuté côté serveur ou depuis votre terminal.

Exemple de traceroute (illustration)

HopHôte / IPLatenceDescription
1192.168.1.11 msRouteur local (box internet)
210.0.0.15 msDSLAM / équipement FAI
381.56.x.x8 msNœud régional FAI
4194.x.x.x12 msPoint de peering (IX Paris)
5185.x.x.x15 msRéseau de destination
651.x.x.x18 msServeur cible

* Illustration uniquement — les IPs et latences sont fictives.

Lancer un traceroute depuis votre machine

Windows
tracert gaprod.fr
Linux / macOS
traceroute gaprod.fr
macOS (avec MTR)
mtr --report gaprod.fr

Qu'est-ce que le traceroute ?

Le traceroute (ou tracert sur Windows) est un outil de diagnostic réseau fondamental qui révèle le chemin emprunté par les paquets IP pour aller d'un point à un autre sur Internet. Contrairement au ping qui mesure uniquement la latence totale aller-retour vers une destination, le traceroute détaille chaque saut (hop) intermédiaire — chaque routeur traversé sur le trajet — ainsi que la latence associée.

Développé par Van Jacobson en 1987, le traceroute est devenu indispensable pour les administrateurs réseau, les ingénieurs en infrastructure et les équipes de support technique. Il permet de localiser précisément où une connexion échoue ou ralentit dans la chaîne de routage mondiale.

Comment fonctionne le traceroute ?

Le traceroute exploite de manière créative le champ TTL (Time To Live) de l'en-tête IP. Le TTL est un compteur décrémenté de 1 par chaque routeur traversé. Quand le TTL atteint 0, le routeur rejette le paquet et renvoie un message ICMP « Time Exceeded » à l'émetteur. C'est ce mécanisme que le traceroute utilise :

  1. Le traceroute envoie un premier paquet avec TTL=1. Le premier routeur le reçoit, décrémente le TTL à 0 et renvoie un message « Time Exceeded » en révélant son adresse IP. La latence du premier hop est mesurée.
  2. Un second paquet est envoyé avec TTL=2. Il passe le premier routeur (TTL devient 1), puis est rejeté par le second (TTL devient 0), révélant l'IP du second routeur.
  3. Ce processus se répète en incrémentant le TTL jusqu'à atteindre la destination ou jusqu'à un maximum de hops (généralement 30).

Sur Unix/Linux et macOS, le traceroute utilise par défaut des paquets UDP. Sur Windows (tracert), il utilise des paquets ICMP Echo Request. Certains outils avancés comme MTR (My Traceroute) combinent ping et traceroute en temps réel pour une vision continue du réseau.

Comprendre les résultats d'un traceroute

Chaque ligne du résultat correspond à un hop et affiche :

  • Numéro de hop : position dans la chaîne de routage.
  • Adresse IP ou nom d'hôte : identité du routeur à ce hop. Un * (astérisque) signifie que le routeur n'a pas répondu — il filtre probablement les paquets ICMP, mais fait quand même suivre le trafic.
  • Latence (3 mesures) : le traceroute envoie généralement 3 paquets par hop pour moyenner les variations.

Une latence qui augmente progressivement de hop en hop est normale et reflète la distance physique parcourue. Un saut de latence brutal entre deux hops indique un lien congestionné ou sous-dimensionné entre ces deux routeurs. Une série d'* suivi d'une réponse normale indique un routeur qui filtre ICMP mais n'est pas en panne.

Le TTL et la protection contre les boucles de routage

Le TTL a été conçu à l'origine pour éviter que des paquets mal routés ne circulent indéfiniment sur Internet, consommant de la bande passante. Sans TTL, un paquet coincé dans une boucle de routage tournerait pour toujours.

La valeur initiale du TTL varie selon les systèmes d'exploitation : Windows utilise généralement 128, Linux/macOS 64, et certains équipements réseau 255. Cette valeur initiale peut être déduite en observant le TTL d'un paquet reçu — si vous voyez un TTL de 54, la machine source a probablement commencé à 64 (10 hops traversés).

Traceroute et sécurité réseau

Le traceroute révèle la topologie de votre réseau interne, ce qui explique pourquoi certains systèmes de sécurité le bloquent sur les périmètres réseau. Des outils comme les IDS/IPS peuvent détecter les scans de traceroute en masse utilisés pour la reconnaissance réseau lors d'attaques.

Les pare-feux bien configurés bloquent typiquement les ICMP Time Exceeded sortants sur leur interface externe pour éviter de révéler la structure interne du réseau. C'est pourquoi un traceroute peut s'arrêter avant d'atteindre la destination finale alors que le site est parfaitement accessible.

MTR : le traceroute continu

MTR (My Traceroute ou Matt's Traceroute) est l'évolution moderne du traceroute. Il combine les fonctionnalités de ping et traceroute en effectuant des mesures continues en temps réel. MTR affiche pour chaque hop : le pourcentage de paquets perdus, le meilleur, moyen et pire temps de réponse, ainsi que la gigue (écart-type des latences).

MTR est disponible sur Linux (sudo apt install mtr), macOS (brew install mtr) et Windows (WinMTR). Pour un diagnostic approfondi d'un problème réseau persistant, MTR pendant 5 à 10 minutes vous donnera une image fidèle de la stabilité du chemin réseau.

Traceroute et hébergement mutualisé

Dans un environnement d'hébergement partagé, plusieurs domaines coexistent sur une même adresse IP. Un traceroute vers votre domaine vous amène au serveur physique, mais ne vous dit rien sur la performance applicative (PHP, MySQL, trafic concurrent). Pour diagnostiquer des lenteurs sur un hébergement partagé, combinez le traceroute (pour valider le chemin réseau) avec des outils de test de performance comme Google PageSpeed Insights (pour mesurer la performance applicative).

Les VPS Gaprod bénéficient d'une bande passante dédiée et de liaisons 1 Gbit/s vers les nœuds de peering parisiens, garantissant des traceroutes propres avec peu de hops entre nos datacenters et les principaux opérateurs français.

Pourquoi le traceroute n'est-il pas possible depuis un navigateur ?

Les navigateurs web sont des environnements sandboxés qui n'exposent pas les API système nécessaires au traceroute. Le traceroute nécessite la création de raw sockets — des sockets réseau de bas niveau permettant de forger des paquets IP arbitraires avec un TTL personnalisé. Cette capacité est réservée aux processus avec des privilèges élevés (root/administrateur) et ne peut pas être déléguée à du JavaScript s'exécutant dans un onglet de navigateur, pour des raisons de sécurité évidentes. Il est donc impératif d'utiliser votre terminal ou un service en ligne dédié.