MTR - Uno strumento di diagnostica di rete per Linux
MTR è un semplice strumento di diagnostica di rete a riga di comando multipiattaforma che combina le funzionalità dei programmi traceroute e ping di uso comune in un unico strumento. In modo simile a traceroute, mtr stampa informazioni sul percorso che i pacchetti prendono dall'host su cui viene eseguito mtr a un host di destinazione specificato dall'utente.
Leggi anche: Come controllare le prestazioni della rete, la sicurezza e la risoluzione dei problemi in Linux
Tuttavia, mtr mostra una grande quantità di informazioni rispetto a traceroute: determina il percorso verso una macchina remota mentre stampa la percentuale di risposta e i tempi di risposta di tutti gli hop di rete nel percorso Internet tra il sistema locale e una macchina remota.
Come funziona la MTR?
Una volta eseguito mtr, verifica la connessione di rete tra il sistema locale e un host remoto specificato. Per prima cosa stabilisce l'indirizzo di ogni hop di rete (bridge, router e gateway, ecc.) tra gli host, quindi esegue il ping (invia una sequenza di richieste ICMP ECHO a) ciascuno di essi per determinare la qualità del collegamento a ciascuna macchina.
Nel corso di questa operazione, mtr produce alcune statistiche utili su ciascuna macchina, aggiornate in tempo reale, per impostazione predefinita.
Questo strumento è preinstallato sulla maggior parte delle distribuzioni Linux ed è abbastanza facile da usare una volta esaminati gli esempi di comando 10 mtr per la diagnostica di rete in Linux, spiegati di seguito.
Se mtr non è installato, è possibile installarlo sulle rispettive distribuzioni Linux utilizzando il gestore di pacchetti predefinito, come mostrato.
$ sudo apt install mtr
sudo yum install mtr
sudo dnf install mtr
10 Esempi di utilizzo dello strumento di diagnostica di rete MTR
1. L'esempio più semplice di utilizzo di mtr consiste nel fornire il nome di dominio o l'indirizzo IP della macchina remota come argomento, ad esempio google.com o 216.58.223.78. Questo comando ti mostrerà un rapporto traceroute aggiornato in tempo reale, fino a quando non esci dal programma (premendo q
o Ctrl + C
).
$ mtr google.com
OR
$ mtr 216.58.223.78
Start: Thu Jun 28 12:10:13 2018
HOST: TecMint Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0
2.|-- 5.5.5.211 0.0% 5 0.7 0.9 0.7 1.3 0.0
3.|-- 209.snat-111-91-120.hns.n 80.0% 5 7.1 7.1 7.1 7.1 0.0
4.|-- 72.14.194.226 0.0% 5 1.9 2.9 1.9 4.4 1.1
5.|-- 108.170.248.161 0.0% 5 2.9 3.5 2.0 4.3 0.7
6.|-- 216.239.62.237 0.0% 5 3.0 6.2 2.9 18.3 6.7
7.|-- bom05s12-in-f14.1e100.net 0.0% 5 2.1 2.4 2.0 3.8 0.5
2. È possibile forzare mtr a visualizzare indirizzi IP numerici anziché nomi host (in genere FQDN - Fully Qualified Domain Names), utilizzando il flag -n
come mostrato.
$ mtr -n google.com
Start: Thu Jun 28 12:12:58 2018
HOST: TecMint Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0
2.|-- 5.5.5.211 0.0% 5 0.9 0.9 0.8 1.1 0.0
3.|-- ??? 100.0 5 0.0 0.0 0.0 0.0 0.0
4.|-- 72.14.194.226 0.0% 5 2.0 2.0 1.9 2.0 0.0
5.|-- 108.170.248.161 0.0% 5 2.3 2.3 2.2 2.4 0.0
6.|-- 216.239.62.237 0.0% 5 3.0 3.2 3.0 3.3 0.0
7.|-- 172.217.160.174 0.0% 5 3.7 3.6 2.0 5.3 1.4
3. Se si desidera che mtr visualizzi sia i nomi host che i numeri IP numerici, utilizzare il flag -b
come mostrato.
$ mtr -b google.com
Start: Thu Jun 28 12:14:36 2018
HOST: TecMint Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0
2.|-- 5.5.5.211 0.0% 5 0.7 0.8 0.6 1.0 0.0
3.|-- 209.snat-111-91-120.hns.n 0.0% 5 1.4 1.6 1.3 2.1 0.0
4.|-- 72.14.194.226 0.0% 5 1.8 2.1 1.8 2.6 0.0
5.|-- 108.170.248.209 0.0% 5 2.0 1.9 1.8 2.0 0.0
6.|-- 216.239.56.115 0.0% 5 2.4 2.7 2.4 2.9 0.0
7.|-- bom07s15-in-f14.1e100.net 0.0% 5 3.7 2.2 1.7 3.7 0.9
4. Per limitare il numero di ping a un valore specifico e uscire da mtr dopo tali ping, utilizzare il flag -c
. Se si osserva dalla colonna Snt, una volta raggiunto il numero di ping specificato, l'aggiornamento in tempo reale si interrompe e il programma si chiude.
$ mtr -c5 google.com
5. È possibile impostarlo in modalità report utilizzando il flag -r
, un'opzione utile per produrre statistiche relative alla qualità della rete. È possibile utilizzare questa opzione insieme all'opzione -c
per specificare il numero di ping. Poiché le statistiche vengono stampate nell'output std, è possibile reindirizzarle a un file per un'analisi successiva.
$ mtr -r -c 5 google.com >mtr-report
Il flag -w
abilita la modalità di report ampio per un output più chiaro.
$ mtr -rw -c 5 google.com >mtr-report
6. È anche possibile riorganizzare i campi di output nel modo desiderato, questo è reso possibile dal flag -o
come mostrato (vedere la pagina man di mtr per il significato delle etichette dei campi).
$ mtr -o "LSDR NBAW JMXI" 216.58.223.78
7. L'intervallo predefinito tra le richieste ICMP ECHO è di un secondo, è possibile specificare l'intervallo tra le richieste ICMP ECHO modificando il valore utilizzando il flag -i
come mostrato.
$ mtr -i 2 google.com
8. È possibile utilizzare pacchetti TCP SYN o datagrammi UDP invece delle richieste ICMP ECHO predefinite, come mostrato.
$ mtr --tcp test.com
OR
mtr --udp test.com
9. Per specificare il numero massimo di hop (il valore predefinito è 30) da sondare tra il sistema locale e la macchina remota, utilizzare il flag -m
.
$ mtr -m 35 216.58.223.78
10. Durante il sondaggio della qualità della rete, è possibile impostare la dimensione del pacchetto utilizzata in byte utilizzando il flag -s
in questo modo.
$ mtr -r -s PACKETSIZE -c 5 google.com >mtr-report
Con questi esempi, dovresti essere a posto con l'uso di mtr, vedi la pagina man per ulteriori opzioni di utilizzo.
$ man mtr
Dai un'occhiata anche a queste utili guide sulle configurazioni di rete Linux e sulla risoluzione dei problemi:
- 13 Comandi di configurazione e risoluzione dei problemi della rete Linux
- Come bloccare le richieste di ping ICMP ai sistemi Linux
Per ora è tutto! MTR è uno strumento di diagnostica di rete semplice, facile da usare e soprattutto multipiattaforma. In questa guida, abbiamo spiegato esempi di comandi da 10 metri in Linux. Se hai domande o pensieri da condividere con noi, usa il modulo di commento qui sotto.