MTR sta per My Traceroute.
È un potente strumento diagnostico di rete che combina la potenza dei comandi Ping e Traceroute.
Consente all'amministratore di diagnosticare e isolare gli errori di rete e di fornire utili rapporti sullo stato della rete.
In questo articolo, spiegheremo come installare, utilizzare e analizzare il rapporto fornito dal comando MTR.
MTR funziona inviando pacchetti ICMP aumentando in modo incrementale il valore TTL per trovare il percorso tra la sorgente e la destinazione specificata.
1. Installazione
Sui sistemi Debian o Ubuntu usa il seguente comando:
$ sudo apt-get install mtr
Sui sistemi centos e fedora eseguire il seguente comando:
$ yum install mtr
2. Esegui mtr per un dominio
MTR funziona in due modalità, una modalità grafica (X11) e una modalità basata su testo (ncurses). Per impostazione predefinita, il comando mtr viene eseguito in modalità X11.
$ mtr google.com
Il comando precedente aprirà una finestra della GUI e visualizzerà i risultati.
3. Avvia la modalità testo usando –curses
Usa l'opzione –curses per eseguire mtr in modalità terminale.
$ mtr --curses google.com Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. mblaze.hilink 0.0% 20 3.2 2.7 2.1 3.8 0.5 2. 10.228.129.9 0.0% 20 187.7 61.8 41.6 187.7 31.3 3. 10.228.149.14 0.0% 20 112.1 60.2 33.2 112.1 17.8 4. 116.202.226.145 0.0% 20 57.9 63.2 35.2 147.6 24.4 5. 116.202.226.21 0.0% 20 35.4 70.4 35.4 211.8 48.6 6. 72.14.219.94 0.0% 20 58.9 74.6 43.4 231.2 44.2 7. 72.14.233.204 0.0% 20 46.9 69.8 40.3 222.5 41.9 8. 72.14.239.20 0.0% 20 94.1 259.2 68.8 3436. 748.2 9. 209.85.244.111 0.0% 20 86.4 97.5 72.1 232.2 34.3 10. google.com 0.0% 19 387.9 132.5 71.8 387.9 84.9
Quanto sopra verrà eseguito continuamente in modalità interattiva.
In modalità interattiva, il risultato rifletterà il tempo di andata e ritorno corrente, per ogni host. Dall'esempio sopra, il pacchetto ha viaggiato attraverso "mblaze.hilink", (il mio router locale), quindi attraverso una serie di "hop" e raggiunge la destinazione.
Gli hop sono router o nodi in Internet attraverso i quali il pacchetto viaggia per raggiungere la destinazione.
4. Ometti il DNS inverso usando –no-dns
MTR trova il nome host di ciascun router/nodo utilizzando la ricerca DNS inversa. Se vuoi evitare di eseguire una ricerca DNS inversa, usa l'opzione –no-dns.
$ mtr --curses --no-dns google.com Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. 192.168.1.1 0.0% 2 3.0 2.9 2.9 3.0 0.1 2. 10.228.129.9 0.0% 2 58.6 49.6 40.7 58.6 12.7 3. 10.228.149.14 0.0% 2 46.1 46.8 46.1 47.6 1.0 4. 116.202.226.145 0.0% 2 61.8 61.6 61.3 61.8 0.3 5. 116.202.226.17 0.0% 2 42.7 39.9 37.0 42.7 4.0 6. 72.14.215.234 0.0% 2 47.1 43.9 40.7 47.1 4.5 7. 72.14.232.110 0.0% 2 56.9 60.7 56.9 64.4 5.3 8. 72.14.239.22 0.0% 2 111.5 95.0 78.5 111.5 23.3 9. 209.85.244.23 0.0% 2 126.0 102.4 78.8 126.0 33.4 10. 209.85.223.113 0.0% 10 76.4 92.7 75.4 157.3 29.5 11. 74.125.200.102 0.0% 1 78.4 78.4 78.4 78.4 0.0
5. Esegui mtr in modalità Report usando –report
Invece di eseguire MTR in modalità interattiva, puoi eseguirlo in modalità report utilizzando –report. In modalità report, mtr verrà eseguito per il numero di cicli (predefinito 10), quindi stampa le statistiche ed esce. Questa modalità sarà utile per generare statistiche sulla qualità della rete.
$ mtr --no-dns --report google.com HOST: lakshmanan Loss% Snt Last Avg Best Wrst StDev 1.|-- 192.168.1.1 0.0% 10 2.5 3.0 2.4 4.2 0.6 2.|-- 10.228.129.9 0.0% 10 235.0 74.4 34.0 235.0 67.9 3.|-- 10.228.149.14 0.0% 10 154.8 65.5 38.7 154.8 34.8 4.|-- 116.202.226.145 0.0% 10 60.9 66.9 48.2 102.4 15.4 5.|-- 116.202.226.17 0.0% 10 54.1 65.1 36.0 194.5 46.8 6.|-- 72.14.215.234 0.0% 10 44.5 78.8 39.2 252.7 64.5 7.|-- 72.14.232.110 0.0% 10 55.7 66.4 39.1 179.8 41.8 8.|-- 66.249.94.72 0.0% 10 68.9 90.3 68.9 133.6 18.6 9.|-- 72.14.233.105 0.0% 10 68.8 76.3 68.8 92.2 7.3 10.|-- 173.194.38.162 0.0% 10 88.7 107.3 72.2 293.1 65.8
Nell'esempio sopra, mtr è stato eseguito per 10 cicli e ha raccolto le statistiche. Gli utenti possono modificare il numero di cicli utilizzando l'opzione -c.
Comprendi il rapporto MTR
Oltre a fornire le informazioni sul percorso tra la sorgente e la destinazione, MTR fornisce preziose statistiche sulla durata della connessione.
- Lost%:mostra la % di pacchetti persi ad ogni hop.
- Snt – Mostra il numero di:pacchetti inviati.
- Ultimo:latenza dell'ultimo pacchetto inviato.
- Media:latenza media di tutti i pacchetti.
- Migliore:mostra il miglior tempo di andata e ritorno per un pacchetto su questo host (RTT più breve).
- Prima:mostra il tempo di andata e ritorno peggiore per un pacchetto su questo host (RTT più lungo).
- StDev:fornisce la deviazione standard delle latenze a ciascun host.
Anche se la "Media" sembra buona, dai un'occhiata alla deviazione standard. Se la deviazione standard è alta, potrebbe indicare che "Media" è distorta da qualche errore di misurazione o da troppe fluttuazioni. In tal caso, dai un'occhiata alla latenza Migliore e Prima per assicurarti che la media sia buona.
Analizza i rapporti MTR
1. Verifica la perdita di pacchetti
C'è una pratica comune tra i servizi forniti per "Rate Limit" il traffico ICMP. Questo può fornire un'illusione di perdita di pacchetti, quando in realtà non c'è perdita. Per verificare se la perdita è reale o dovuta alla limitazione del tasso, controlla la "Perdita%" del salto successivo. Se mostra 0,0%, puoi essere certo che la "Perdita%" riportata è dovuta alla limitazione del tasso ICMP e non alla perdita effettiva.
10.|-- 209.85.250.237 0.0% 10 85.6 97.5 76.0 172.0 27.2 11.|-- 209.85.250.203 100.0 10 0.0 0.0 0.0 0.0 0.0 12.|-- 74.125.135.138 0.0% 10 77.2 107.3 77.2 219.5 43.5
Nell'output precedente, sebbene mostri una perdita del 100,0% tra l'hop 10 e l'11, l'hop 12 successivo riporta una perdita di pacchetti dello 0,0%, il che significa che la perdita riportata sull'hop 11 è dovuta solo alla limitazione della velocità ICMP.
Se la perdita continua per più di 1 hop, è possibile che si verifichi una perdita di pacchetti. Si noti inoltre che la limitazione della velocità e la perdita di pacchetti possono verificarsi contemporaneamente. In tal caso, prendi come perdita effettiva la percentuale di perdita più bassa in una sequenza.
2. Rete di host di destinazione impropria
13.|-- 4.69.168.254 0.0% 10 293.3 304.7 276.0 441.0 48.5 14.|-- 4.69.161.105 10.0% 10 287.5 291.7 261.2 393.6 40.0 15.|-- 4.69.137.50 0.0% 10 412.2 299.2 266.9 412.2 48.6 16.|-- 4.69.134.146 10.0% 10 260.5 281.8 260.3 320.1 22.0 17.|-- 4.69.134.129 10.0% 10 294.7 303.5 268.0 397.8 41.8 18.|-- 4.69.132.177 10.0% 10 287.8 341.6 262.7 470.4 77.4 19.|-- 4.71.162.50 10.0% 10 280.8 276.0 257.8 323.2 21.3 20.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
Dall'esempio sopra, potrebbe sembrare che i pacchetti non abbiano raggiunto la destinazione. Ma arriva a destinazione. Ciò potrebbe essere il risultato di regole dell'host o del firewall configurate in modo errato per eliminare i pacchetti ICMP.
3. Problema di timeout e percorso di ritorno
A volte, i router scarteranno l'ICMP e verrà mostrato come ??? sull'uscita. In alternativa potrebbe esserci un problema anche con il percorso di ritorno.
9.|-- 209.85.244.25 0.0% 10 260.6 147.0 78.1 260.6 75.3 10.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0 11.|-- 74.125.200.100 0.0% 10 84.8 112.4 75.6 234.4 63.9
Nell'esempio sopra, il router all'hop 10 non risponde a ICMP o si è verificato un problema nel percorso di ritorno del pacchetto.