Wie man den Netzwerkverkehr mit vnStat unter Ubuntu 22.04 überwacht
vnStat ist ein kostenloses, quelloffenes und konsolenbasiertes Tool zur Überwachung des Netzwerkverkehrs für das Linux-Betriebssystem. Mit vnStat kannst du Netzwerkstatistiken über verschiedene Zeiträume hinweg überwachen. Es ist einfach, leichtgewichtig und verbraucht nur einen kleinen Teil deiner Systemressourcen. vnStat ermöglicht es dir, die Netzwerkverkehrsdaten in einer Stunde, einem Tag, einem Monat, einer Woche und einem Tag zu erstellen. In diesem Lernprogramm erfährst du, wie du vnStat installierst und zur Überwachung des Netzwerkverkehrs verwendest.
Funktionen
- Überwache mehrere Schnittstellen gleichzeitig.
- Bietet verschiedene Ausgabeoptionen, z. B. tageweise, wochenweise usw.
- Sortiere die Daten nach Stunde, Tag, Monat oder Woche oder erhalte die Top 10 Tage.
- Ermöglicht die Ausgabe im Bildformat.
- Überwache mehrere Netzwerkschnittstellen zur gleichen Zeit.
- Geringes Gewicht und niedrige CPU-Auslastung.
Diese Anleitung zeigt dir, wie du das Tool VnStat installierst und verwendest, um den Netzwerkverkehr unter Ubuntu 22.04 zu überwachen.
Voraussetzungen
- Ein Server, auf dem Ubuntu 20.04 läuft.
- Ein Root-Passwort ist auf dem Server eingerichtet.
Erste Schritte
Bevor du anfängst, solltest du alle Systempakete auf die neueste Version aktualisieren und aufrüsten. Du kannst alle Pakete mit dem folgenden Befehl aktualisieren:
apt update -y apt upgrade -y
Sobald alle Pakete aktualisiert sind, kannst du im nächsten Schritt VnStat aus der Quelle installieren.
vnStat installieren
Standardmäßig ist die neueste Version von vnStat nicht im Standard-Repository von Ubuntu verfügbar. Daher musst du sie aus dem Quellcode kompilieren.
Installiere zunächst alle Abhängigkeiten, die zum Kompilieren von vnStat erforderlich sind, mit dem folgenden Befehl:
apt-get install build-essential gcc make libsqlite3-dev -y
Sobald alle Abhängigkeiten installiert sind, lade die neueste Version des vnStat-Quellcodes mit dem folgenden Befehl herunter:
wget https://humdi.net/vnstat/vnstat-2.10.tar.gz
Sobald der Download abgeschlossen ist, entpacke die heruntergeladene Datei mit dem folgenden Befehl:
tar -xvzf vnstat-2.10.tar.gz
Wechsle dann in das entpackte Verzeichnis und konfiguriere es mit dem folgenden Befehl:
cd vnstat-2.10 ./configure --prefix=/usr --sysconfdir=/etc
Als Nächstes installierst du vnStat, indem du den folgenden Befehl ausführst:
make make install
Sobald vnStat installiert ist, kannst du die installierte Version von vnStat mit dem folgenden Befehl überprüfen:
vnstat -v
Du solltest die folgende Ausgabe erhalten:
vnStat 2.10 by Teemu Toivola
Wenn du fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Systemd zur Verwaltung von VnStat verwenden
Um VnStat mit systemd zu verwalten, musst du die systemd-Dienstdatei vnStat aus der vnStat-Quelle in das Verzeichnis /etc/systemd/system/ kopieren:
cp -v vnstat-2.10/examples/systemd/vnstat.service /etc/systemd/system/
Als Nächstes aktivierst du den vnStat-Dienst und startest ihn mit dem folgenden Befehl:
systemctl enable vnstat systemctl start vnstat
Du kannst den Status des vnStat-Dienstes auch mit folgendem Befehl überprüfen:
systemctl status vnstat
Du solltest die folgende Ausgabe erhalten:
? vnstat.service - vnStat network traffic monitor Loaded: loaded (/lib/systemd/system/vnstat.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-11-29 08:34:08 IST; 2h 49min ago Docs: man:vnstatd(1) man:vnstat(1) man:vnstat.conf(5) Main PID: 1730 (vnstatd) Tasks: 1 (limit: 4915) CGroup: /system.slice/vnstat.service ??1730 /usr/sbin/vnstatd -n Nov 29 08:34:08 vyompc systemd[1]: Started vnStat network traffic monitor. Nov 29 08:34:08 vyompc vnstatd[1730]: Info: vnStat daemon 1.18 started. (pid:1730 uid:122 gid:128) Nov 29 08:34:08 vyompc vnstatd[1730]: Info: Monitoring: enp20s0 (1000 Mbit) wlp22s0 (1000 Mbit)
Wenn du fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Wie du den Netzwerkverkehr mit vnStat überwachst
vnStat bietet mehrere Optionen, mit denen du den Netzwerkverkehr überwachen kannst. Du kannst alle verfügbaren Optionen mit dem folgenden Befehl auflisten:
vnstat --help
Du solltest die folgende Ausgabe erhalten:
vnStat 2.10 by Teemu Toivola -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 set list begin date -e, --end 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 -tr, --traffic [time] calculate traffic -l, --live [mode] show transfer rate in real time -i, --iface select interface Use "--longhelp" or "man vnstat" for complete list of options.
Bevor du vnStat benutzt, musst du einige Zeit warten, um die vnStat-Datenbank zu aktualisieren. Nach der Aktualisierung der Datenbank kannst du vnStat wie unten gezeigt ohne Optionen ausführen:
vnstat
Du solltest die folgende Ausgabe sehen:
rx / tx / total / estimated wlp22s0: Oct '22 17.80 GiB / 4.35 GiB / 22.15 GiB Nov '22 16.61 GiB / 3.62 GiB / 20.23 GiB / 21.48 GiB yesterday 332.22 MiB / 114.17 MiB / 446.39 MiB today 710.25 MiB / 44.85 MiB / 755.11 MiB / 1.55 GiB
Um eine bestimmte Netzwerkschnittstelle zu verwenden, verwende die Option -i (siehe unten):
vnstat -i ens3
Du solltest die Tages- und Monatsstatistiken in der folgenden Ausgabe erhalten:
Database updated: 2020-11-12 06:30:00 ens3 since Saturday 29 January 2022 rx: 185.89 GiB tx: 38.82 GiB total: 224.70 GiB monthly rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- Oct '22 17.80 GiB | 4.35 GiB | 22.15 GiB | 71.04 kbit/s Nov '22 16.61 GiB | 3.62 GiB | 20.23 GiB | 71.20 kbit/s ------------------------+-------------+-------------+--------------- estimated 17.64 GiB | 3.85 GiB | 21.48 GiB | daily rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- yesterday 332.22 MiB | 114.17 MiB | 446.39 MiB | 43.34 kbit/s today 710.25 MiB | 44.85 MiB | 755.11 MiB | 154.31 kbit/s ------------------------+-------------+-------------+--------------- estimated 1.46 GiB | 92 MiB | 1.55 GiB |
Um die stündlichen Statistiken anzuzeigen, führe den folgenden Befehl aus:
vnstat -h
Du solltest die folgende Ausgabe erhalten:
ens3 / hourly h rx (MiB) tx (MiB) ][ h rx (MiB) tx (MiB) ][ h rx (MiB) tx (MiB) 12 5.4 0.2 ][ 20 30.4 14.8 ][ 04 0.0 0.0 13 72.7 15.0 ][ 21 24.8 6.4 ][ 05 0.0 0.0 14 1.9 0.4 ][ 22 20.1 9.8 ][ 06 0.0 0.0 15 0.0 0.0 ][ 23 0.0 0.0 ][ 07 0.0 0.0 16 0.0 0.0 ][ 00 0.0 0.0 ][ 08 147.0 10.2 17 36.4 9.6 ][ 01 0.0 0.0 ][ 09 64.1 9.4 18 54.0 23.4 ][ 02 0.0 0.0 ][ 10 496.9 23.9 19 86.5 34.5 ][ 03 0.0 0.0 ][ 11 2.3 1.3
Um die Tagesstatistiken anzuzeigen, führe den folgenden Befehl aus:
vnstat -d
Du solltest die folgende Ausgabe erhalten:
ens3 / daily day rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- Sunday 30 October 2022 266.75 MiB | 47.81 MiB | 314.56 MiB | 30.54 kbit/s Monday 31 October 2022 701.49 MiB | 225.89 MiB | 927.38 MiB | 90.04 kbit/s Tuesday 01 November 2022 506.20 MiB | 184.50 MiB | 690.70 MiB | 67.06 kbit/s Wednesday 02 November 2022 631.15 MiB | 182.43 MiB | 813.59 MiB | 78.99 kbit/s Thursday 03 November 2022 189.21 MiB | 41.18 MiB | 230.39 MiB | 22.37 kbit/s Friday 04 November 2022 703.67 MiB | 175.49 MiB | 879.16 MiB | 85.36 kbit/s Saturday 05 November 2022 518.96 MiB | 130.47 MiB | 649.43 MiB | 63.05 kbit/s Sunday 06 November 2022 301.74 MiB | 81.95 MiB | 383.69 MiB | 37.25 kbit/s
Du kannst die Option -t verwenden, um die Tage mit dem höchsten Verkehrsaufkommen anzuzeigen:
vnstat -t
Du solltest die folgende Ausgabe erhalten:
ens3 / top 1 # day rx | tx | total | avg. rate -----------------------------+-------------+-------------+--------------- 1 Thursday 03 February 2022 2.58 GiB | 214.64 MiB | 2.79 GiB | 277.76 kbit/s 2 Saturday 05 February 2022 2.11 GiB | 229.32 MiB | 2.33 GiB | 231.67 kbit/s 3 Tuesday 01 February 2022 1.81 GiB | 190.56 MiB | 2.00 GiB | 198.71 kbit/s 4 Wednesday 02 February 2022 1.80 GiB | 179.75 MiB | 1.98 GiB | 196.72 kbit/s 5 Sunday 10 July 2022 1.69 GiB | 248.34 MiB | 1.93 GiB | 192.21 kbit/s 6 Saturday 19 February 2022 1.56 GiB | 172.67 MiB | 1.73 GiB | 171.56 kbit/s 7 Friday 16 September 2022 1.44 GiB | 201.21 MiB | 1.64 GiB | 163.16 kbit/s 8 Friday 17 June 2022 1.34 GiB | 278.89 MiB | 1.61 GiB | 160.33 kbit/s 9 Friday 25 March 2022 1.06 GiB | 504.19 MiB | 1.55 GiB | 154.51 kbit/s 10 Monday 07 February 2022 1.30 GiB | 160.68 MiB | 1.46 GiB | 145.30 kbit/s -----------------------------+-------------+-------------+---------------
Um die Netzwerkverkehrsstatistiken in Echtzeit anzuzeigen, führe den folgenden Befehl aus:
vnstat -l
Du solltest die folgende Ausgabe erhalten:
Monitoring ens3... (press CTRL-C to stop) rx: 11 kbit/s 7 p/s tx: 9 kbit/s 6 p/s^C ens3 / traffic statistics rx | tx --------------------------------------+------------------ bytes 17 KiB | 18 KiB --------------------------------------+------------------ max 24 kbit/s | 33 kbit/s average 6.78 kbit/s | 7.39 kbit/s min 0 kbit/s | 0 kbit/s --------------------------------------+------------------ packets 78 | 82 --------------------------------------+------------------ max 10 p/s | 11 p/s average 3 p/s | 4 p/s min 0 p/s | 0 p/s --------------------------------------+------------------ time 20 seconds
Du kannst auch die Datenbankeinträge für die Schnittstelle ens3 löschen und die Überwachung mit dem folgenden Befehl beenden:
vnstat -i ens3 --remove --force
Du solltest die folgende Ausgabe erhalten:
Interface "ens3" removed from database. The interface will no longer be monitored. Use --add if monitoring the interface is again needed.
Du kannst auch die entfernte Schnittstelle ens3 wieder hinzufügen, indem du den folgenden Befehl ausführst:
vnstat -i ens3 --add
Du solltest die folgende Ausgabe erhalten:
Adding interface "ens3" for monitoring to database... Restart the vnStat daemon if it is currently running in order to start monitoring "ens3".
Starte anschließend den vnStat-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart vnstat
Fazit
In diesem Beitrag haben wir dir erklärt, wie du vnStat unter Ubuntu 22.04 installierst. Außerdem haben wir dir anhand einiger Beispiele gezeigt, wie du es zur Überwachung des Netzwerkverkehrs einsetzen kannst. Du kannst dieses Tool nun nutzen, um Netzwerkprobleme zu analysieren und zu beheben. Wenn du Fragen hast, kannst du dich gerne an mich wenden.