Documentation officielle : trippy.cli.rs • Langage : Rust • Licence : Apache 2.0 (100 % Open-Source)
Lorsqu’un flux réseau entre un cluster Kubernetes, un tunnel WireGuard ou un Load Balancer Cloud L4/L7 subit des micro-coupures ou une hausse soudaine de latence, les outils historiques comme traceroute et mtr montrent vite leurs limites : traceroute ne donne qu’un cliché figé à un instant $T$, et mtr peine à isoler proprement les chemins multiples lorsque les routeurs opérateurs utilisent du routage ECMP (Equal-Cost Multi-Path).
Écrit en Rust par FujiApple, Trippy (trip) fusionne la puissance de traceroute, de ping et de mtr dans une interface terminal (TUI) ultra-réactive taillée pour les ingénieurs réseau et SRE.
1. Pourquoi Trippy surclasse mtr et traceroute classiques (2024)
Contrairement aux outils historiques qui mélangent souvent les réponses ICMP de plusieurs routeurs sur un même saut TTL lorsque le trafic est réparti par hachage 5-tuple (ECMP), Trippy implémente nativement les algorithmes paris et dublin traceroute :
En maintenant constants les champs d’en-tête utilisés par les routeurs pour le hachage ECMP (et en faisant varier uniquement l’identifiant de flux contrôlé), Trippy permet de figer et d’isoler chaque chemin physique entre votre serveur et la cible :
- Sondes multi-protocoles (
icmp,udp,tcp) : indispensable lorsque les pare-feux intermédiaires filtrent l’ICMP mais laissent passer leTCP SYNsur le port443; - Enrichissement BGP & GeoIP temps réel : résolution instantanée du numéro d’AS (
ASN), du nom de l’opérateur de transit via DNS IPv4/IPv6 (origin.asn.cymru.com) et affichage sur carte mondiale ASCII directement dans le terminal ; - Détection des extensions ICMP MPLS (RFC 4884) : visualise les labels des tunnels MPLS opérateurs traversés par vos paquets.
Commandes essentielles en intervention SRE
# 1. Tracer un flux TCP sur le port 443 avec l'algorithme Dublin (détection ECMP) et résolution ASN BGP
sudo trip example.com -p tcp -P 443 --multipath-strategy dublin --dns-lookup-as-info -r google
# 2. Exécuter un audit non-interactif de 100 cycles et exporter le rapport JSON pour un post-mortem
sudo trip 1.1.1.1 -m json -C 100 > rapport_transit_wan.json
2. (v0.13+) Analyse de gigue, Nat Detection et intégration CI/Observabilité
Depuis sa sortie initiale, Trippy a considérablement enrichi son moteur d’analyse pour les architectures Cloud et Edge de 2026 :
- Détection de réécriture NAT et d’asymétrie de chemin (Path Asymmetry) : Trippy analyse les en-têtes originaux encapsulés dans les messages ICMP
Time Exceededpour signaler immédiatement si un équipement intermédiaire (CGNAT, pare-feu stateful ou AWS Gateway Load Balancer) modifie les ports sources ou le DSCP (ToS/ECN) en cours de route. - Métriques avancées de Gigue (Jitter) pour la Voix IA et WebRTC : outre les moyennes et écarts-types, Trippy affiche en direct la gigue inter-paquets (
javg,jmax,jintaRFC 3550), critique pour diagnostiquer les flux temps réel (WebRTC, SIP, agents vocaux LiveKit/OpenAI Realtime). - Exécution sans privilège
rootsous Linux : au lieu d’exécuter le binaire ensudo, il suffit d’accorder la capacité Linux minimaleCAP_NET_RAWau binaire (sudo setcap cap_net_raw+p $(which trip)), conformément aux principes de moindre privilège Zero-Trust. - Export télémétrique Chrome Trace & Dot/Graphviz : le mode
-m dotou-m flowsgénère directement le graphe topologique complet de tous les chemins ECMP découverts, prêt à être annexé au rapport d’incident réseau.
