VnStat is een gratis, open source, lichtgewicht en terminal-gebaseerde Netwerkmonitor. Met VnStat kunnen we eenvoudig achterhalen hoeveel netwerkbandbreedte er wordt verbruikt en het resultaat per uur, per dag, per maand of voor een specifieke tijdsperiode weergeven.
Vnstat verzamelt de gebruiksgegevens van één of meerdere netwerkinterfaces en geeft de samenvatting weer in de terminal. Het helpt ook bij het berekenen van de geschatte hoeveelheid internetgebruik per maand, per dag of voor een bepaalde periode.
VnStat is beschikbaar in de standaard softwarebronnen van veel Linux distributies. Je kunt het dus installeren met de pakketbeheerder van je distributie, voor Debian:
dany@pindabook:~$su
Wachtwoord: root@pindabook:/home/dany#apt install vnstat
Pakketlijsten worden ingelezen... Klaar Boom van vereisten wordt opgebouwd... Klaar De statusinformatie wordt gelezen... Klaar Voorgestelde pakketten: vnstati De volgende NIEUWE pakketten zullen geïnstalleerd worden: vnstat 0 opgewaardeerd, 1 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd. Er moeten 108 kB aan archieven opgehaald worden. Na deze bewerking zal er 305 kB extra schijfruimte gebruikt worden. Ophalen:1 http://deb.debian.org/debian bookworm/main amd64 vnstat amd64 2.10-2 [108 kB] 108 kB opgehaald in 0s (2.043 kB/s) Voorheen niet geselecteerd pakket vnstat wordt geselecteerd. (Database wordt ingelezen ... 173849 bestanden en mappen momenteel geïnstalleerd.) Uitpakken van .../vnstat_2.10-2_amd64.deb wordt voorbereid... Bezig met uitpakken van vnstat (2.10-2) ... Instellen van vnstat (2.10-2) ... Created symlink /etc/systemd/system/multi-user.target.wants/vnstat.service → /lib/systemd/system/vnstat.service. Bezig met afhandelen van triggers voor man-db (2.11.2-2) ... root@pindabook:/home/dany#exit
exit
Je hoeft vnStat niet te starten op DEB-gebaseerde systemen zoals Debian, omdat het automatisch wordt ingeschakeld en gestart na de installatie.
VnStat zoekt standaard zelf naar beschikbare netwerkinterface's. Maar dat kan je zelf aanpassen in het configuratiebestand /etc/vnstat.conf.
Laten we eens kijken naar het begin van het vnstat config bestand.
dany@pindabook:~$ head -15 /etc/vnstat.conf
# vnStat 2.10 configuration file
#
# lines starting with # or ; are comments, everything has default
# values, remove ; before each option to change its value
# default interface (leave empty for automatic selection)
;Interface ""
# location of the database directory
;DatabaseDir "/var/lib/vnstat"
# locale (LC_ALL) ("-" = use system locale)
;Locale "-"
Dank zij de commentaarregels met uitleg, stellen we vast dat vnStat de netwerkinterface automatisch zal selecteren.
Als je vnStat wilt leren gebruiken, open dan de helpsectie van vnStat en bekijk de lijst met beschikbare opties:
dany@pindabook:~$ vnstat --help
vnStat 2.10 by Teemu Toivola <tst at iki dot fi>
-5, --fiveminutes [limit] show 5 minutes
-h, --hours [limit] show hours
-hg, --hoursgraph show hours graph
-d, --days [limit] show days
-m, --months [limit] show months
-y, --years [limit] show years
-t, --top [limit] show top days
-b, --begin <date> set list begin date
-e, --end <date> set list end date
--oneline [mode] show simple parsable format
--json [mode] [limit] show database in json format
--xml [mode] [limit] show database in xml format
--alert <output> <exit> <type> <condition> <limit> <unit>
alert if limit is exceeded
-tr, --traffic [time] calculate traffic
-l, --live [mode] show transfer rate in real time
-i, --iface <interface> select interface
Use "--longhelp" or "man vnstat" for complete list of options.
Laten we nu het netwerkverkeer van alle interfaces weergeven:
dany@pindabook:~$ vnstat
Database updated: 2024-01-14 15:16:20
wlp4s0 since 2024-01-14
rx: 28,95 KiB tx: 22,69 KiB total: 51,64 KiB
monthly
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
2024-01 28,95 KiB | 22,69 KiB | 51,64 KiB | 1,39 kbit/s
------------------------+-------------+-------------+---------------
estimated 138,81 MiB | 108,76 MiB | 247,56 MiB |
daily
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
today 28,95 KiB | 22,69 KiB | 51,64 KiB | 1,39 kbit/s
------------------------+-------------+-------------+---------------
estimated 45 KiB | 35 KiB | 80 KiB |
Met:
Geef vnstat enkele minuten de tijd om netwerkverkeer te verzamelen. Als je vnstat direct na de installatie start, krijg je mogelijk een melding daarover.
Om het netwerkbandbreedtegebruik van een bepaalde interface te bekijken, bijvoorbeeld wlp4s0
, geef je gewoon de naam van de netwerkkaart door met de optie -i
.
dany@pindabook:~$ vnstat -i wlp4s0
Database updated: 2024-01-14 15:20:00
wlp4s0 since 2024-01-14
rx: 46,71 KiB tx: 37,25 KiB total: 83,95 KiB
monthly
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
2024-01 46,71 KiB | 37,25 KiB | 83,95 KiB | 1,31 kbit/s
------------------------+-------------+-------------+---------------
estimated 130,22 MiB | 103,03 MiB | 233,25 MiB |
daily
rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
today 46,71 KiB | 37,25 KiB | 83,95 KiB | 1,31 kbit/s
------------------------+-------------+-------------+---------------
estimated 72 KiB | 58 KiB | 129 KiB |
Hier is wlp4s0 de naam van mijn netwerkkaart. Je kunt de naam van je netwerkkaarten vinden met de opdracht:
dany@pindabook:~$ip addr
1: lo:mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: wlp4s0: mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether ac:7b:a1:42:e0:5f brd ff:ff:ff:ff:ff:ff inet 192.168.129.29/23 brd 192.168.129.255 scope global dynamic noprefixroute wlp4s0 valid_lft 4521sec preferred_lft 4521sec inet6 2a02:a03f:e02a:8901:a8fa:2902:a3c2:97f/64 scope global dynamic noprefixroute valid_lft 86352sec preferred_lft 71952sec inet6 fe80::6865:fb5:500c:e2cd/64 scope link noprefixroute valid_lft forever preferred_lft forever
Laten we de resultaten van het netwerkverkeer per uur weergeven:
dany@pindabook:~$ vnstat -h
wlp4s0 / hourly
hour rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
2024-01-14
15:00 1,21 MiB | 903,38 KiB | 2,09 MiB | 4,86 kbit/s
16:00 222,93 KiB | 138,25 KiB | 361,19 KiB | 875 bit/s
------------------------+-------------+-------------+---------------
En in grafiekvorm:
dany@pindabook:~$ vnstat -hg
wlp4s0 16:56
^ r
| r
| r
| rt
| rt
| rt
| rt
| rt
| rt
| rt rt
-+--------------------------------------------------------------------------->
| 17 18 19 20 21 22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16
h rx (KiB) tx (KiB) ][ h rx (KiB) tx (KiB) ][ h rx (KiB) tx (KiB)
17 0,0 0,0 ][ 01 0,0 0,0 ][ 09 0,0 0,0
18 0,0 0,0 ][ 02 0,0 0,0 ][ 10 0,0 0,0
19 0,0 0,0 ][ 03 0,0 0,0 ][ 11 0,0 0,0
20 0,0 0,0 ][ 04 0,0 0,0 ][ 12 0,0 0,0
21 0,0 0,0 ][ 05 0,0 0,0 ][ 13 0,0 0,0
22 0,0 0,0 ][ 06 0,0 0,0 ][ 14 0,0 0,0
23 0,0 0,0 ][ 07 0,0 0,0 ][ 15 1.234,4 903,4
00 0,0 0,0 ][ 08 0,0 0,0 ][ 16 222,9 138,3
Gebruik de -d
optie om het netwerkverkeer van de standaard netwerkinterface per dag weer te geven.
dany@pindabook:~$ vnstat -d
wlp4s0 / daily
day rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
2024-01-14 1,42 MiB | 1,02 MiB | 2,44 MiB | 3,25 kbit/s
------------------------+-------------+-------------+---------------
estimated 7,14 MiB | 5,11 MiB | 12,25 MiB |
Gebruik de -m
optie om het maandelijkse gebruik van een netwerkkaart te bekijken.
dany@pindabook:~$ vnstat -m
wlp4s0 / monthly
month rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
2024-01 1,42 MiB | 1,02 MiB | 2,44 MiB | 3,25 kbit/s
------------------------+-------------+-------------+---------------
estimated 337,72 MiB | 241,84 MiB | 579,56 MiB |
Een top (10) geef je weer met de optie -t
:
dany@pindabook:~$ vnstat -t
wlp4s0 / top 1
# day rx | tx | total | avg. rate
-----------------------------+-------------+-------------+---------------
> 1 2024-01-14 1,42 MiB | 1,02 MiB | 2,44 MiB | 236 bit/s
-----------------------------+-------------+-------------+---------------
We kunnen ook het bandbreedtegebruik van een bepaalde tijd bekijken. Voer de volgende opdracht uit om het bandbreedtegebruik van de afgelopen tien seconden weer te geven:
dany@pindabook:~$ vnstat -i wlp4s0 -tr 10
2018 packets sampled in 10 seconds
Traffic average for wlp4s0
rx 407,70 kbit/s 99 packets/s
tx 273,55 kbit/s 102 packets/s
Voer de volgende opdracht uit om het gebruik van een bepaalde netwerkkaart live te volgen:
dany@pindabook:~$ vnstat -i wlp4s0 -l
Monitoring wlp4s0... (press CTRL-C to stop)
rx: 888,18 kbit/s 260 p/s tx: 961,72 kbit/s 293 p/s^C
wlp4s0 / traffic statistics
rx | tx
--------------------------------------+------------------
bytes 353,16 KiB | 339,68 KiB
--------------------------------------+------------------
max 888,18 kbit/s | 961,72 kbit/s
average 180,82 kbit/s | 173,92 kbit/s
min 344 bit/s | 920 bit/s
--------------------------------------+------------------
packets 837 | 910
--------------------------------------+------------------
max 260 p/s | 293 p/s
average 52 p/s | 56 p/s
min 0 p/s | 0 p/s
--------------------------------------+------------------
time 16 seconds
Druk op Ctrl+c om live monitoring te stoppen en een overzicht weer te geven.
VnStat kunnen we in de terminal verwijderen met de opdracht:
dany@pindabook:~$ sudo apt purge vnstat
[sudo] wachtwoord voor root:
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar
De volgende pakketten zullen VERWIJDERD worden:
vnstat*
0 opgewaardeerd, 0 nieuw geïnstalleerd, 1 te verwijderen en 0 niet opgewaardeerd.
Na deze bewerking zal er 305 kB schijfruimte vrijkomen.
Wilt u doorgaan? [J/n]
(Database wordt ingelezen ... 174128 bestanden en mappen momenteel geïnstalleerd.)
vnstat (2.10-2) wordt verwijderd ...
Bezig met afhandelen van triggers voor man-db (2.11.2-2) ...
(Database wordt ingelezen ... 174108 bestanden en mappen momenteel geïnstalleerd.)
Configuratiebestanden voor vnstat (2.10-2) worden gewist ...