Trippy - Foglio di aiuto per lo strumento diagnostico di rete
trippy (binario: trip) è uno strumento diagnostico di rete Rust che fonde traceroute e ping in una singola TUI dal vivo. Per ogni hop mostra pacchetti inviati/ricevuti, percentuale di perdita e latenza ultima/media/migliore/peggiore/deviazione standard, più analisi del jitter, istogrammi, GeoIP e risoluzione DNS. Supporta sonde ICMP, UDP e TCP e può tracciare più target contemporaneamente — rendendo molto più veloce rispondere a “dove si rompe la rete?” rispetto al classico traceroute + ping.
Installation
| Platform | Command |
|---|
| Cargo (all platforms) | cargo install trippy |
| macOS (Homebrew) | brew install trippy |
| Arch Linux | sudo pacman -S trippy |
| Debian/Ubuntu | sudo apt install trippy |
| Fedora | sudo dnf install trippy |
| Nix | nix-env -iA nixpkgs.trippy |
| Windows (Scoop) | scoop install trippy |
Privileges
ICMP/raw sockets need elevated rights:
sudo trip example.com
# Or grant the capability once (Linux), then run without sudo:
sudo setcap cap_net_raw+ep $(which trip)
Utilizzo di base
| Command | Descrizione |
|---|
trip example.com | Traccia + ping di un host (ICMP, TUI dal vivo) |
trip example.com google.com | Traccia più target contemporaneamente |
trip 1.1.1.1 | Traccia un IP direttamente |
trip --help | Elenco completo delle opzioni |
trip --version | Versione |
Opzioni di protocollo e sonda
| Option | Descrizione |
|---|
-i, --interface eth0 | Usa un’interfaccia sorgente specifica |
--icmp | Sonde ICMP (predefinito) |
--udp | Sonde UDP |
--tcp | Sonde TCP (buone attraverso firewall) |
-p, --target-port 443 | Porta di destinazione (UDP/TCP) |
--first-ttl N | Inizia con un TTL dato |
--max-ttl N | Numero massimo di hop |
-4 / -6 | Forza IPv4 / IPv6 |
Timing e velocità
| Option | Descrizione |
|---|
--min-round-duration 100ms | Tempo minimo per round |
--max-round-duration 1s | Tempo massimo per round |
--initial-sequence N | Numero di sequenza iniziale |
--read-timeout 1s | Timeout di lettura per sonda |
--grace-duration 100ms | Attendi risposte tardive |
DNS e GeoIP
| Option | Descrizione |
|---|
-r, --dns-resolve-method system | Resolver: system, resolv, google, cloudflare |
-z, --dns-lookup-as-info | Mostra il numero AS (autonomous system) per hop |
--dns-resolve-all | Risolvi tutti gli IP per un host |
--geoip-mmdb-file GeoLite2-City.mmdb | Aggiungi GeoIP città/paese per hop |
Tasti interattivi
| Key | Azione |
|---|
↑ / ↓ | Seleziona un hop |
Tab | Passa da un target all”altro |
z | Attiva/disattiva il grafico hop |
h | Attiva/disattiva aiuto |
q | Esci |
Esc | Chiudi un pannello |
Report (non interattivo)
trippy può emettere report one-shot per script e ticket.
| Command | Descrizione |
|---|
trip example.com -m report | Stampa un report in tabella ed esci |
trip example.com -m json | Output JSON |
trip example.com -m csv | Output CSV |
trip example.com -m stream | Flusso di testo continuo |
trip example.com -m flows | Mostra flussi di routing distinti (ECMP) |
Flussi di lavoro comuni
# Where is the latency? Trace with AS info and a 30-hop cap
sudo trip example.com -z --max-ttl 30
# Diagnose through a firewall that drops ICMP
sudo trip example.com --tcp -p 443
# Compare two upstreams side by side
sudo trip 1.1.1.1 8.8.8.8
# Capture a report to attach to a support ticket
sudo trip example.com -m json > trace-report.json
Trippy vs Strumenti classici
| Tool | Combina ping+traceroute | Multi-target | TUI | Protocolli |
|---|
| trippy | Yes | Yes | Rich | ICMP/UDP/TCP |
| mtr | Yes | No | Basic | ICMP/UDP |
| traceroute | No | No | No | ICMP/UDP/TCP |
| ping | No | No | No | ICMP |
Resources