Come eseguire Traceroute su Mac: comando, output e cosa significa
Come eseguire traceroute su Mac, leggere ogni hop, individuare rallentamenti e firewall, e usare una GUI se preferisci evitare il Terminale. Copre macOS Sequoia e versioni successive.
La tua connessione è lenta, ma tecnicamente funziona. Le pagine alla fine si caricano. Le videochiamate vanno a scatti. C’è qualcosa che non va da qualche parte tra il tuo Mac e il server. Traceroute ti dice esattamente dove.
Un traceroute su macOS mostra ogni router attraverso cui passano i tuoi dati verso una destinazione, con i tempi di risposta per ognuno. Se c’è congestione, un percorso mal configurato o un link non funzionante, appare nell’output. Questa guida copre il comando traceroute, come leggere ciò che restituisce, cosa significano i pattern comuni e come eseguire un traceroute su Mac senza Terminale se preferisci un’interfaccia visiva.
Cosa fa traceroute
I dati non viaggiano direttamente dal tuo Mac a un server. Saltano attraverso una catena di router: il tuo router di casa, l’attrezzatura del tuo ISP, le reti backbone regionali e infine la rete della destinazione. Ogni passaggio è chiamato hop.
Traceroute mappa quella catena sfruttando un campo in ogni pacchetto di rete chiamato TTL (time to live). Il TTL è un contatore. Ogni router che inoltra un pacchetto lo decrementa di uno. Quando il TTL raggiunge zero, il router scarta il pacchetto e invia un messaggio di errore identificando se stesso.
Traceroute invia un pacchetto con TTL=1. Il primo router lo scarta e risponde. Traceroute registra l’indirizzo e il tempo di risposta del router, poi invia un pacchetto TTL=2. Il secondo router risponde. Questo continua hop per hop fino a quando i pacchetti raggiungono la destinazione.
Il risultato è una mappa completa del percorso, con misurazioni della latenza ad ogni passo.
Eseguire traceroute su macOS
Apri il Terminale (Applicazioni > Utility > Terminale) ed esegui:
traceroute google.com
I risultati appaiono riga per riga man mano che ogni hop risponde. Non devi aspettare che l’intera esecuzione sia completata per leggere gli hop iniziali.
Come appare l’output
traceroute to google.com (142.250.80.46), 64 hops max, 52 byte packets
1 192.168.1.1 (192.168.1.1) 2.849 ms 2.103 ms 1.987 ms
2 96.120.68.69 (96.120.68.69) 12.445 ms 11.203 ms 10.987 ms
3 68.87.167.117 (68.87.167.117) 14.221 ms 13.008 ms 12.445 ms
4 * * *
5 72.14.215.171 (72.14.215.171) 18.334 ms 17.112 ms 16.889 ms
6 108.170.246.33 (108.170.246.33) 19.441 ms 18.902 ms 18.776 ms
7 lga34s32-in-f14.1e100.net (142.250.80.46) 20.112 ms 19.887 ms 19.654 ms
Le colonne sono:
- Numero hop (a sinistra): la posizione nella catena. Hop 1 è il tuo router di casa.
- Nome host e IP: l’identità del router. Il DNS inverso fornisce il nome host quando disponibile; altrimenti vedi solo l’IP.
- Tre letture temporali in ms: traceroute invia tre probe per hop. Questi sono i tempi di andata e ritorno per ciascuno. Tre letture ti permettono di individuare l’incoerenza: se due sono 12 ms e una è 80 ms, quell’hop ha picchi occasionali.
Flag utili
| Flag | Cosa fa |
|---|---|
-n |
Salta le ricerche DNS. Mostra solo indirizzi IP, va più veloce. |
-m 30 |
Imposta il numero massimo di hop (il valore predefinito è 64). Utile se sai che la destinazione è vicina. |
-q 1 |
Invia solo un probe per hop invece di tre. Più veloce, meno dati. |
-w 2 |
Aspetta solo 2 secondi per hop invece di 5. Velocizza le esecuzioni verso hop non reattivi. |
Una combinazione comune per risultati più veloci:
traceroute -n -q 1 -w 2 google.com
Come leggere i risultati di traceroute
Progressione della latenza
La latenza generalmente aumenta man mano che gli hop si allontanano da te. Il tuo router di casa risponde in 1-5 ms. L’attrezzatura del tuo ISP potrebbe essere 10-20 ms. Le destinazioni internazionali possono essere 100-200 ms o più. Questa progressione è normale.
Quello che cerchi è un salto improvviso: diversi hop consecutivi in un intervallo simile, poi un hop in cui la latenza aumenta bruscamente e rimane alta per tutti gli hop successivi. Quel picco indica dove si sta verificando il rallentamento.
Se la latenza aumenta su un hop ma poi scende di nuovo al successivo, il picco era nel modo in cui quel router gestisce le probe di traceroute, non nel percorso effettivo dei dati. Alcuni router deprioritizzano la risposta ai pacchetti diagnostici mentre fanno passare il traffico regolare normalmente.
Asterischi: * * *
Una riga di asterischi significa che il router a quell’hop non ha inviato una risposta entro il timeout. Tre cause:
- Firewall che blocca ICMP: molti router, specialmente su reti aziendali e dei carrier, sono configurati per scartare silenziosamente le probe di traceroute. Questa è la ragione più comune.
- Rate limiting: il router ha risposto ad alcune probe ma non a tutte. Potresti vedere
* 14ms *per una risposta parziale. - Perdita reale di pacchetti: il link tra gli hop ha problemi reali.
Il test chiave è cosa succede dopo gli asterischi. Se il percorso continua e raggiunge la destinazione, gli asterischi sono quasi certamente una configurazione del firewall, non un problema reale. Se il percorso si interrompe agli asterischi e non raggiunge mai la destinazione, c’è un vero punto di interruzione in quel punto.
Leggere un esempio completo
1 192.168.1.1 2 ms 2 ms 1 ms ← il tuo router di casa, sano
2 10.20.30.1 11 ms 10 ms 10 ms ← primo hop dell'ISP, normale
3 * * * ← hop silenzioso, probabilmente un firewall
4 68.86.90.34 14 ms 13 ms 13 ms ← il percorso continua, l'hop 3 era solo un firewall
5 96.110.40.1 15 ms 15 ms 15 ms
6 96.110.40.2 180 ms 178 ms 179 ms ← la latenza salta qui, collo di bottiglia su questo link
7 162.151.77.10 182 ms 181 ms 180 ms ← rimane alta da qui in poi
8 destination 184 ms 183 ms 182 ms
In questa traccia: gli hop 1-5 sono sani, l’hop 3 silenzioso è un firewall (il percorso continua bene), e l’hop 6 è dove qualcosa ha rallentato. Il problema è all’hop 6 o prima.
Pattern comuni e cosa significano
Latenza costantemente alta dall’hop 1: il tuo router di casa è il collo di bottiglia. Questo succede con router vecchi sovraccarichi, router che gestiscono troppi client contemporaneamente, o router con problemi hardware. Il riavvio a volte aiuta; la sostituzione dell’hardware vecchio è una soluzione più duratura.
Picchi di latenza sugli hop 2-4: l’infrastruttura locale del tuo ISP è congestionata. Questo appare comunemente la sera durante le ore di punta nelle aree residenziali. Puoi provare a chiamare il tuo ISP per segnalarlo, ma spesso non c’è nulla da fare se non aspettare.
Un hop con alta latenza, hop successivi normali: quel router deprioritizza le risposte ICMP. Il percorso reale dei dati attraverso di esso è probabilmente a posto. Non agire su questo a meno che la destinazione mostri anche alta latenza.
La latenza salta bruscamente e rimane alta: questo è il segnale reale. Trova l’hop dove salta e quello è il collo di bottiglia. Se sono gli hop 1-2, è la tua rete locale. Se sono gli hop 3-5, è il tuo ISP. Se è l’hop 8 o successivi, è fuori dal tuo controllo.
Il percorso passa attraverso una geografia inaspettata: una connessione a un server vicino potrebbe instradare attraverso un’altra regione o persino un altro continente. Questo può aggiungere latenza significativa. Il routing internet è controllato da tabelle di routing che ottimizzano per costo e accordi di peering, non necessariamente per la prossimità fisica. Se vedi una connessione a un datacenter a 50 km che si instrada attraverso l’Europa, è un errore di configurazione della tabella di routing da qualche parte.
I pacchetti non raggiungono mai la destinazione: il percorso si interrompe completamente. O la destinazione è giù, c’è un’interruzione su un link tra te e essa, o un firewall sta bloccando le tue probe dal passare. Prova ping verso la stessa destinazione per vedere se almeno ICMP ottiene una risposta.
Eseguire traceroute su Mac senza Terminale
Se preferisci non lavorare nel Terminale, NetUtil include uno strumento traceroute con un’interfaccia basata su tabella. Inserisci un nome host e fai clic su Traccia. I risultati appaiono hop per hop in una tabella strutturata con colonne per numero hop, nome host, indirizzo IP e i tre valori temporali.
Apple un tempo includeva questo in Network Utility, un’app integrata con una scheda traceroute grafica. Network Utility è stata rimossa in macOS Monterey. NetUtil è un sostituto gratuito che copre traceroute insieme a ping, ricerca DNS, scansione porte e altre diagnostiche.
Il vantaggio pratico di una GUI rispetto all’output del Terminale non è solo estetica. Quando stai confrontando due tracce eseguite a distanza di minuti, averle in finestre separate con lo stesso layout delle colonne rende le differenze più facili da vedere. Gli hop ad alta latenza si distinguono senza dover esaminare testo grezzo.
Tutto viene eseguito localmente sul tuo Mac. Le probe traceroute vanno direttamente dalla tua macchina alla destinazione senza passare attraverso server di terze parti.
Cosa fare con ciò che trovi
Traceroute diagnostica ma non risolve. Quello che impari determina cosa fare dopo.
Problema sugli hop 1-2 (la tua rete locale): riavvia il router. Controlla se il problema appare su altri dispositivi sulla tua rete. Se riguarda un solo dispositivo, controlla la configurazione di rete di quel dispositivo. Se riguarda tutti i dispositivi, il router è il problema.
Problema sugli hop 3-5 (il tuo ISP): chiama il supporto con l’output del traceroute. Sapere quale hop è lento fornisce al team di supporto qualcosa di concreto su cui lavorare. Chiedi specificamente della congestione o dei problemi a quell’indirizzo IP.
Problema oltre il tuo ISP: se l’hop lento è lontano nella catena, è probabilmente sulle reti backbone o sull’infrastruttura della destinazione. Di solito non c’è nulla di concreto da fare dalla tua parte. Aspetta e controlla di nuovo più tardi, o prova a instradare attraverso una VPN per vedere se un percorso diverso evita il collo di bottiglia.
Non riesci a raggiungere la destinazione: controlla se il sito è giù per tutti usando un servizio come downdetector.com. Se non è un’interruzione generale, prova da una rete diversa (come il LTE del tuo telefono) per determinare se il problema è specifico della tua connessione o più diffuso.
La prossima volta che qualcosa sembra lento, esegui un traceroute prima di assumere il peggio. Richiede circa 30 secondi e ti dice immediatamente se il problema è qualcosa che puoi risolvere o qualcosa che devi semplicemente aspettare.