Vnstat è un ottimo tool open source per monitorare la propria rete. Non è uno sniffer, si occupa soltanto di memorizzare in un file db, le informazioni presenti in /proc. Si può usare in maniera testuale e non solo, senza i privilegi di root. Per installarlo basta un:
apt-get install vnstat libgd2-xpm
Per avere un interfaccia grafica:
wget https://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.4.tar.gz
lo scompattiamo in /var/www
cd /var/www
tar xvzf vnstat_php_frontend-1.4.tar.gz
Per comodità cambiamo il nome
mv vnstat_php_frontend-1.4 vnstat
A questo punto incominciamo a creare il db, a secondo dal numero di interfaccia e dal nome:
vnstat -u -i eth0
oppure
vnstat -u -i eth0 && vnstat -u -i eth1
Dopo 5 minuti dando da terminale vnstat, iniziamo a vedere le statistiche. Per vederle in maniera più comoda:
https://localhost/vnstat/
Ciao, ho fatto partire Vnstat ed ho creato un database relativo ad una connession wifi. Ora però vorrei crearne uno per una connessione tramie chiavetta internet usb, ma non ci riesco. Ho tentato con:
davide@aspirino:~$ vnstat -i USB0
e mi ha restituito:
Error:
Unable to read database “/var/lib/vnstat/USB0”.
USB0: Not enough data available yet
Che è normale, perché il database ancora non esiste: ma come lo creo? Grazie!
Scusa hai già creato un db per una connessione wifi, con scheda pci, adesso vuoi creare un altro db per un altra connessione wifi ma con dongle usb. Ho capito bene?
Ehm, non lo so.. 🙂
Ora provo a dirtelo atecnicamente, con parole mie. Avevo una connessione wifi al modem router ed avevo creato un database relativo ad essa. Ora mi sono preso una chiavetta usb (una Huawei HSPDA Stick, per intenderci) e vorrei monitorare la connessione, visto che il contratto col mio gestore prevede una soglia di traffico mensile. Suppongo che il database creato con la precedente connessione wifi (WLAN0) non mi dia i dati della nuova connessione, il cui nome dev’essere USB0, per cui vorrei creare un nuovo database per verificare il traffico.
Ok adesso ho capito…. Ma in ifconfig ti compare USB0 o anche qualcosa di altro? E’ chiaro che il db va creato per la chiavetta Huawei.
Prova vnstat -u -i USB0 oppure vnstat -u -i pan0.
Intanto ti ringrazio molto, alla fine rischia di diventare una specie di forum personale e non vorrei abusare della tua cortesia..
Comunque.
L’output di ifconfig è questo:
eth0 Link encap:Ethernet HWaddr 00:1e:68:a4:e7:43
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:1000
Byte RX:0 (0.0 B) Byte TX:0 (0.0 B)
Interrupt:251 Indirizzo base:0x6000
lo Link encap:Loopback locale
inet indirizzo:127.0.0.1 Maschera:255.0.0.0
indirizzo inet6: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1727 errors:0 dropped:0 overruns:0 frame:0
TX packets:1727 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:0
Byte RX:50782 (50.7 KB) Byte TX:50782 (50.7 KB)
ppp0 Link encap:Point-to-Point Protocol
inet indirizzo:10.102.13.59 P-t-P:10.64.64.64 Maschera:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1440 Metric:1
RX packets:9 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:3
Byte RX:174 (174.0 B) Byte TX:213 (213.0 B)
wlan0 Link encap:Ethernet HWaddr 00:22:69:0d:8e:78
inet indirizzo:192.168.1.52 Bcast:192.168.1.255 Maschera:255.255.255.0
indirizzo inet6: fe80::222:69ff:fe0d:8e78/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:24328 errors:0 dropped:0 overruns:0 frame:0
TX packets:20642 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:1000
Byte RX:14633157 (14.6 MB) Byte TX:3915820 (3.9 MB)
wmaster0 Link encap:UNSPEC HWaddr 00-22-69-0D-8E-78-65-37-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:1000
Byte RX:0 (0.0 B) Byte TX:0 (0.0 B)
L’output di vnstat -u -i USB0 (che avevo già tentato) è questo:
Error:
Unable to read database “/var/lib/vnstat/USB0”.
Error:
Unable to get interface statistics.
L’output di vnstat -u -i pan0 è questo:
Error:
Unable to write database “/var/lib/vnstat/pan0”.
Make sure it’s write enabled for this user.
Database not updated.
e anche con sudo vnstat -u -i pan0 il problema rimane, perché non mi restituisce output, a parte dopo la prima volta che do il comando, che mi dice di aver creato un db.
Spero che tu abbia provato a fare anche
vnstat -u -i ppp0
dato che la connessione del modem è questa.
Ovviamento non l’avevo fatto. Ora che l’ho fatto mi pare che ci siamo!
🙂
Grazie ancora
Ciao edmond,
ho provato la tua guida su un UBUNTU 8.04.. piccolo problema a terminale il comando vnstat mi da i dati mentre a sito non vedo niente….
Come aggancio/verifico il db che server per la pagina html? (premetto che vedo la pagina ma senza dati)
Ciao
mmm piccola altra info….
Installato da riga di comando e li funziona… ma se volessi togliere una scheda dal monitor??
Ciao i db risiedono in /va/lib/vnstat, basta che entri dentro da root e cancelli quello che non ti serve. Per quanto riguarda la tua prima domanda, sto verificando.
confermo funziona… grazie nell’ultima versione non sono proprio inseriti i db.
li comunque si puo aggiungere ed eliminira le schede
Grazie
a forza di ricerche ho trvato il modo… allora i db vengono salvati nella cartella /var/lib/vnstat/ dentro ci sono i file per ogni scheda… basta rimuoverli…
Ciaooo
o riletto le risposte… be mi correggo dato che ipotizzo di aver creato confusione….
per rimuovere le interfacce basta rimuovere il db con il nome corretto nella cartella /var/lib/vnstat/
per il problema che a web non si vedono i dati, basta andare nel file /var/www/vnstat/config.php e cercare la riga contenete $vnstat_bin = ”; e trasformarlo cosi… $vnstat_bin = ‘/usr/bin/vnstat’;
Edmond ti ringrazio e scusa della confusione