Monitorare il traffico sulle interfacce di rete
Versioni Compatibili Debian 7 "wheezy" Debian 8 "jessie" Debian 9 "stretch" |
Introduzione
Su un server, su un PC che funga da router o su un firewall Debian può essere comodo avere un sistema per tenere una traccia nel tempo del traffico di rete, distinguendo i flussi delle varie interfacce.
Un programma molto comodo in casi come questi è vnstat
.
Installazione
La sua installazione è molto semplice, per esempio con privilegi di amministrazione basta:
# apt-get install vnstat
Una volta terminata l'installazione del pacchetto e delle sue eventuali dipendenze, il programma è già attivo e funzionante.
Configurazione
Per poter utilizzare correttamente vnstat
è necessario generare un database per ogni interfaccia che ci interessa monitorare. Ad esempio:
# vnstat -u -i eth0 # vnstat -u -i eth1
Dopo l'esecuzione del comando (da ripetersi per ogni interfaccia da monitorare) riceverete un errore che vi avvisa che il database non esiste e che un nuovo database sarà generato. Ignorate l'errore, dato che la generazione del database è proprio il nostro scopo, e proseguite.
Utilizzo
Il programma si lancia da terminale. Di seguito sono elencate alcune combinazioni di switch, per effettuare le operazioni più comuni.
- Per avere una visione d'insieme dello stato delle interfacce:
# vnstat
che darà come risposta qualcosa del genere:
rx / tx / total / estimated eth1: yesterday 174 kB / 0 kB / 174 kB today 53 kB / 0 kB / 53 kB / -- eth0: yesterday 19.94 GB / 4.33 GB / 24.27 GB today 3.86 GB / 0.98 GB / 4.84 GB / 10.16 GB
- Per avere una visione grafica/testuale dei dati:
# vnstat -h
che genererà un output simile al seguente:
eth0 11:30 ^ r | r r | r r r | r t r r r r | rt t r r r r r r | rt t r r r r r r r | rt rt r r r r r r r r r r | rt rt r r r r r r r r r r r r | rt rt r r r r r r r r r r r r r r t r | rt rt rt r rt rt r rt r r r r r r rt r r r r rt rt rt rt r -+---------------------------------------------------------------------------> | 12 13 14 15 16 17 18 19 20 21 22 23 00 01 02 03 04 05 06 07 08 09 10 11 h rx (kB) tx (kB) h rx (kB) tx (kB) h rx (kB) tx (kB) 12 982886 695641 20 656238 57998 04 220823 12027 13 427656 757889 21 343002 62942 05 160220 11873 14 322904 165802 22 466482 52979 06 186506 21116 15 172664 85374 23 1039368 36649 07 188855 109409 16 654155 104752 00 907319 28156 08
- I dati possono poi essere visualizzati chiedendo al programma un riepilogo per giorno (
d
), settimana (w
) mese (m
) o anno (y
). Ad esempio:
# vnstat -d
restituirà:
eth0 / daily day rx | tx | total ------------------------+-------------+---------------------------------------- 14.01. 810.88 MB | 2.86 GB | 3.65 GB %:: 15.01. 1.70 GB | 4.10 GB | 5.80 GB %:::: 16.01. 33.29 MB | 245.22 MB | 278.52 MB 17.01. 18.66 MB | 125.58 MB | 144.24 MB
- Per avere una misurazione in tempo reale del traffico si può utilizzare lo switch
-tr
(traffic):
# vnstat -tr
che restituirà:
625 packets sampled in 5 seconds Traffic average for eth0 rx 17.65 kB/s 63 packets/s tx 20.51 kB/s 61 packets/s
- Lo switch
t
(top 10) mostra invece i 10 giorni che hanno registrato il maggior traffico:
# vnstat -t
con risultato:
eth0 / top 10 # day rx | tx | total -------------------------------+-------------+--------------------------------- 1 10.02.10 19.99 GB | 5.60 GB | 25.59 GB %%%%%%%%%%%%%%:::: 2 11.02.10 19.94 GB | 4.33 GB | 24.27 GB %%%%%%%%%%%%%%::: 3 04.01.10 15.97 GB | 4.21 GB | 20.18 GB %%%%%%%%%%%::: 4 12.01.10 3.01 GB | 7.07 GB | 10.08 GB %%::::: 5 05.01.10 5.22 GB | 2.58 GB | 7.80 GB %%%:: 6 13.01.10 2.00 GB | 4.51 GB | 6.51 GB %::: 7 09.02.10 2.63 GB | 3.19 GB | 5.82 GB %%:: 8 15.01.10 1.70 GB | 4.10 GB | 5.80 GB %::: 9 11.01.10 1.52 GB | 3.84 GB | 5.36 GB %:: 10 08.01.10 1.59 GB | 3.72 GB | 5.31 GB %:: -------------------------------+-------------+---------------------------------
- Per visualizzare il traffico in tempo reale si può usare lo switch
-l
(live):
# vnstat -l
che mostrerà il traffico istantaneo dell'interfaccia:
Monitoring eth0... (press CTRL-C to stop) rx: 10.69 kB/s 38 p/s tx: 9.18 kB/s 32 p/s^C
Questo ultimo comando risulta molto utile su sistemi come firewall o router dove sono installate più interfacce di rete, per poter effettuare un'analisi della banda e del traffico sulle singole interfacce.
Credits
Guida basata sull'originale presente su: SistemistiIndipendenti
Guida scritta da: Ferdybassi 14:59, 23 feb 2010 (CET) | Debianized 40% |
Estesa da: | |
Verificata da:
| |
Verificare ed estendere la guida | Cos'è una guida Debianized |