Mit Hilfe von vnStat kann der Netzwerkdurchsatz eines Rechners aufgezeichnet werden. Im FreeBSD Portbaum findet man vnstat unter net/vnstat:
# cd /usr/ports/net/vnstat && make install clean
Danach kann in der /etc/crontab folgende Zeilen eingetragen werden, damit die Datenbank von vnStat automatisch alle 5 Minuten aktualisiert wird:
# run vnstat update every 5 minutes if installed
*/5 * * * * root if [ -x /usr/local/bin/vnstat ] && [ `ls -l /var/db/vnstat/ | wc -l` -ge 1 ]; then /usr/local/bin/vnstat -u; fi
Nun muss eine Konfigurationsdatei für vnStat angelegt werden. Dazu kann als Basis die Beispielskonfiguration verwendet werden. in der Konfiguration kann zum Beispiel mit Interface die Standardnetzwerkschnittstelle angegeben werden:
# cd /usr/local/etc/
# cp vnstat.conf.sample vnstat.conf
Nun muss das Verzeichnis angelegt werden in dem die Datenbanken abgelegt werden. Danach wird für jede Netzwerkschnittstelle eine Datenbank angelegt. Im folgenden Beispiel wird nur für tun0 eine Dankenbank erstellt:
# mkdir /var/db/vnstat
# vnstat -u -i tun0
Nachdem die Datenbank das erste Mal aktualisiert wurde, können die gespeicherten Informationen abgerufen werden. Wird keine Schnittstelle mit der -i Option angegeben, so wird die Standardschnittstelle aus der Konfiguration genommen:
# vnstat
Database updated: Sat Jan 9 21:25:00 2010
tun0 since 09.01.2010
rx: 95.11 MiB tx: 5.63 MiB total: 100.74 MiB
monthly
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
Jan '10 95.11 MiB | 5.63 MiB | 100.74 MiB | 1.07 kbit/s
------------------------+-------------+-------------+---------------
estimated 331 MiB | 17 MiB | 348 MiB |
daily
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
today 95.11 MiB | 5.63 MiB | 100.74 MiB | 10.70 kbit/s
------------------------+-------------+-------------+---------------
estimated 106 MiB | 5 MiB | 111 MiB |
Mit der -s Option werden die Informationen in kompakter Form angezeigt:
# vnstat -s
rx / tx / total / estimated
tun0:
Jan '10 95.11 MiB / 5.63 MiB / 100.74 MiB / 348.00 MiB
today 95.11 MiB / 5.63 MiB / 100.74 MiB / 111 MiB
Wird die -h Option verwendet, so wird der Netzwerkdurchsatz pro Stunde, mit der -w Option der Woche und mit der -m Option des Monats angezeigt:
# vnstat -h
tun0 21:25
^ r
| r
| r r
| r r
| r r
| r r
| r r
| r r
| r r r r
| r r r r r
-+--------------------------------------------------------------------------->
| 22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21
h rx (KiB) tx (KiB) h rx (KiB) tx (KiB) h rx (KiB) tx (KiB)
22 0 0 06 0 0 14 30'404 1'352
23 0 0 07 0 0 15 9'932 814
00 0 0 08 0 0 16 5'997 574
01 0 0 09 0 0 17 7'995 715
02 0 0 10 0 0 18 2'644 650
03 0 0 11 0 0 19 421 176
04 0 0 12 0 0 20 0 0
05 0 0 13 38'000 1'169 21 1'999 311
Mit der -tr Option wird der aktuelle Verkehr einer Netzwerkschnittstelle für 5 Sekunden gemessen. Soll nicht die Standard-Netzwerkschnittstelle verwedent werden, kann mit der -i Option eine alternative Schnittstelle angegeben werden:
# vnstat -tr -i wlan0
128 packets sampled in 5 seconds
Traffic average for wlan0
rx 70.40 kbit/s 13 packets/s
tx 20.80 kbit/s 12 packets/s
Mit der -l Option wird der aktuelle Verkehr einer Schnittstelle angezeigt, bis Ctrl + C gedrückt wird:
# vnstat -l -i wlan0
Monitoring wlan0... (press CTRL-C to stop)
rx: 16 kbit/s 15 p/s tx: 24 kbit/s 18 p/s
Mehr Informationen zu vnStat findet man in der Manpage vnstat(1).