Aller au contenu
Retour au blog
Publié le 20 mars 20266 min de lecture

UDP vs ICMP vs TCP Traceroute : Quand utiliser chaque protocole

Comparez les trois protocoles de traceroute et apprenez quand utiliser ICMP, UDP ou TCP pour le diagnostic réseau.

tracerouteprotocolscomparison

Pourquoi le protocole est important

Lorsque vous exécutez un traceroute, l'outil doit envoyer des paquets de sonde dans le réseau et s'appuyer sur les routeurs pour renvoyer des messages d'erreur. Mais tous les routeurs ne traitent pas tous les types de paquets de la même manière. Les pare-feu, les limiteurs de débit et les politiques de sécurité peuvent bloquer certains protocoles tout en en autorisant d'autres. Choisir le bon protocole peut faire la différence entre un traceroute complet et un mur de * * * délais d'attente.

Les trois protocoles disponibles dans la plupart des implémentations de traceroute sont UDP, ICMP et TCP. Chacun a des avantages distincts selon votre environnement réseau.

Traceroute UDP

Comment ça fonctionne

Le traceroute UDP envoie des datagrammes UDP à des numéros de port de plus en plus élevés, en commençant par le port 33434 par défaut. Chaque sonde a une valeur TTL croissante. Lorsque le TTL expire sur un routeur intermédiaire, le routeur renvoie un message ICMP Time Exceeded. Lorsque la sonde atteint la destination, celle-ci répond avec un message ICMP Port Unreachable (car aucun service n'écoute sur ce port), signalant la fin du traceroute.

Avantages et inconvénients

  • Par défaut sur Linux et macOS — aucun drapeau spécial requis.
  • Ne nécessite pas de privilèges root/admin sur la plupart des systèmes (les sockets UDP sont non privilégiés).
  • Bloqué par de nombreux pare-feu — les réseaux d'entreprise et les fournisseurs de cloud restreignent souvent l'UDP sortant vers des ports inconnus.
  • Le filtrage basé sur le port peut entraîner des résultats incohérents lorsque différents pare-feu le long du chemin ont des règles différentes.

Meilleur pour

Diagnostics à usage général sur Linux/macOS lorsque vous avez un chemin réseau relativement ouvert. Fonctionne bien pour tracer vers des serveurs que vous contrôlez ou vers une infrastructure Internet majeure.

Traceroute ICMP

Comment ça fonctionne

Le traceroute ICMP envoie des paquets ICMP Echo Request (le même type utilisé par ping) avec des valeurs TTL croissantes. Les routeurs intermédiaires renvoient des messages ICMP Time Exceeded comme d'habitude. Lorsque le paquet atteint la destination, il répond avec un ICMP Echo Reply — la même réponse que vous obtenez avec ping.

Avantages et inconvénients

  • Par défaut sur Windows (tracert utilise ICMP).
  • Universellement compris — presque tous les routeurs peuvent générer ICMP Time Exceeded.
  • Souvent limité par le débit — de nombreux routeurs dépriorisent le traitement ICMP, ce qui entraîne des valeurs RTT artificiellement gonflées ou des réponses perdues.
  • Nécessite root/admin sur Linux — des sockets bruts sont nécessaires pour créer des paquets ICMP.
  • Bloqué dans certains environnements sécurisés — certains réseaux suppriment tout ICMP à la périphérie.

Meilleur pour

Tests rapides depuis des machines Windows, ou lorsque le traceroute UDP renvoie trop de délais d'attente. Également utile lorsque vous souhaitez spécifiquement tester l'accessibilité ICMP (par exemple, vérifier que ping fonctionnera de bout en bout).

Traceroute TCP

Comment ça fonctionne

Le traceroute TCP envoie des paquets TCP SYN (le premier pas de la poignée de main TCP en trois étapes) vers un port spécifique — généralement port 80 (HTTP) ou port 443 (HTTPS). Les routeurs intermédiaires renvoient toujours ICMP Time Exceeded pour les TTL expirés. Lorsque le SYN atteint la destination, elle répond soit avec un SYN/ACK (port ouvert) soit avec un RST (port fermé), complétant ainsi le traceroute.

Avantages et inconvénients

  • Pénètre la plupart des pare-feu — les ports 80 et 443 sont presque universellement autorisés à travers les pare-feu, NAT et groupes de sécurité.
  • Meilleur pour tracer vers des serveurs web — la sonde ressemble à une tentative de connexion web normale.
  • Nécessite root/admin — créer des paquets TCP SYN bruts nécessite des privilèges élevés.
  • Peut déclencher des alertes IDS/IPS — des paquets SYN rapides vers le même port peuvent ressembler à un scan SYN.

Meilleur pour

Réseaux d'entreprise, environnements cloud (AWS, GCP, Azure) et toute situation où l'UDP et l'ICMP sont filtrés. Si vous dépannez la connectivité à une application web et que d'autres modes renvoient des résultats incomplets, le mode TCP est votre meilleur choix.

Tableau de comparaison

CaractéristiqueUDPICMPTCP
Système d'exploitation par défautLinux, macOSWindowsAucun (drapeau explicite)
Nécessite root/adminNonOui (Linux)Oui
Pénétration des pare-feuFaibleMoyenneÉlevée
Port de destination33434+N/A80 ou 443
Signal de fin de tracerouteICMP Port UnreachableICMP Echo ReplySYN/ACK ou RST
Risque de limitation de débitFaibleÉlevéFaible
Drapeau CLI-U (par défaut)-I-T

Scénarios du monde réel

Bureau d'entreprise derrière un pare-feu strict

Le pare-feu de votre entreprise bloque tout l'UDP sortant sauf DNS (port 53) et tout ICMP sauf ping vers la passerelle. Utilisez le mode TCP sur le port 443. Les paquets SYN ressemblent à des tentatives de connexion HTTPS et passent proprement.

Débogage ISP pour la latence de jeu

Vous souhaitez tracer le chemin vers un serveur de jeu. Commencez par UDP (le par défaut). Si vous voyez des délais d'attente en milieu de chemin, passez à ICMP. Les serveurs de jeu fonctionnent souvent sur des ports non standards, donc TCP vers le port 80 peut ne pas atteindre le serveur de jeu réel — mais cela révélera tout de même le chemin réseau et la latence vers l'hôte.

Infrastructure Cloud (AWS, GCP)

Les groupes de sécurité cloud bloquent généralement l'UDP entrant sur des ports élevés et peuvent filtrer l'ICMP. Utilisez TCP sur le port 443 pour tracer à travers les VPC, les équilibreurs de charge et les passerelles NAT de manière fiable.

Dépannage ISP résidentiel

ICMP fonctionne généralement bien depuis des connexions domestiques. C'est le plus simple à interpréter puisque les réponses intermédiaires et finales utilisent ICMP. Si votre fournisseur d'accès Internet limite ICMP, vous verrez une latence gonflée à leurs sauts — passez à UDP pour obtenir des mesures RTT plus précises.

Recommandations pratiques

  1. Commencez par le par défaut (UDP sur Linux/macOS, ICMP sur Windows).
  2. Si vous voyez de nombreux délais d'attente, passez au mode TCP ciblant le port 443.
  3. Exécutez le traceroute avec plusieurs protocoles et comparez — les différences révèlent où le filtrage se produit.
  4. Documentez le protocole utilisé lorsque vous partagez des résultats avec votre fournisseur d'accès Internet ou votre hébergeur, car les résultats varient selon le protocole.

Essayez les trois protocoles avec TraceMapper

TraceMapper vous permet de passer entre UDP, ICMP et TCP d'un simple clic — aucune connaissance en ligne de commande requise. Les résultats sont tracés sur une carte interactive avec des informations ASN, un codage couleur de latence et un traçage multi-sources depuis différents emplacements géographiques.

Exécutez un traceroute gratuit maintenant et voyez comment différents protocoles produisent des résultats différents pour votre cible. Pour plus d'outils de diagnostic réseau, explorez nos outils Ping, DNS Lookup, et Port Check.