GNU/Linux >> Znalost Linux >  >> Linux

vnStat – Monitorování šířky pásma sítě v Linuxu a BSD

V tomto tutoriálu uvidíme, co je vnStat, jak jej nainstalovat a jak monitorovat šířku pásma sítě pomocí vnStat v operačních systémech Linux a BSD.

Úvod Vnstat

VnStat je bezplatný, open source, lehký a konzolový monitor síťového provozu. Pomocí VnStat můžeme snadno zjistit, kolik šířky pásma sítě je spotřebováno, a zobrazit výsledek hodinově, denně, měsíčně nebo za konkrétní časové období.

Vnstat shromažďuje podrobnosti o použití jednoho nebo více síťových rozhraní a zobrazuje souhrn na příkazovém řádku. Pomáhá také vypočítat přibližné množství využití šířky internetového pásma za měsíc, za den nebo za určité časové období.

Nainstalujte vnStat v systému Linux

VnStat je k dispozici ve výchozích úložištích mnoha operačních systémů Linux a Unix. Můžete jej nainstalovat pomocí správce balíčků vaší distribuce.

Na systémech založených na Arch:

Ujistěte se, že jste povolili [Community] úložiště a nainstalujte jej pomocí pacmana jako níže:

$ sudo pacman -S vnstat

V systémech Debian, Uubntu, Linux Mint, Pop OS:

$ sudo apt install vnstat

Na Ubuntu možná budete muset povolit [Universe] úložiště pro instalaci vnstat.

Na Redhat, CentOS, AlmaLinux, Rocky Linux:

Nejprve přidejte a povolte úložiště EPEL:

$ sudo dnf nainstalovat epel-release

A poté nainstalujte vnStat, jak je uvedeno výše.

$ sudo dnf install vnstat

Na Fedoře:

$ sudo dnf install vnstat

Na openSUSE:

$ sudo zypper install vnstat

Po instalaci vnStat spusťte jeho službu příkazem:

$ sudo systemctl enable --now vnstat

Vnstat nemusíte spouštět na systémech založených na DEB, protože se automaticky spustí během instalace.

Nainstalujte vnStat na FreeBSD

Na systémech BSD, jako je freeBSD, aktualizujte strom portů a nainstalujte vnStat jako root uživatel pomocí příkazů:

# aktualizace balíčků
# pkg install vnstat

Po instalaci povolte a spusťte službu vnStat, jak je uvedeno níže.

# echo 'vnstat_enable="YES"'>> /etc/rc.conf
# spuštění služby vnstat

Ukázkový výstup:

Spouštění vnstat.V databázi nebyla nalezena žádná rozhraní, přidávám dostupná rozhraní...Přidáno rozhraní "em0" s limitem šířky pásma 1000 Mbit.-> Bylo nalezeno 1 nové rozhraní. Limity lze upravit pomocí konfiguračního souboru. Viz "man vnstat.conf". Nežádoucí rozhraní lze z monitorování odebrat pomocí "vnstat --remove".

Nakonfigurujte výchozí síťové rozhraní v systému Linux

vnStat používá eth0 jako výchozí síťové rozhraní v jeho konfiguračním souboru (/etc/vnstat.conf ).

V některých systémech Linux (např. Ubuntu) se však název síťového rozhraní může lišit, například enp0s3 , enp0s8 . Název síťového rozhraní můžete ověřit pomocí "ip addr" příkaz.

Pojďme se podívat na obsah konfiguračního souboru vnstat.

$ head /etc/vnstat.conf

Ukázkový výstup:

# konfigurační soubor vnStat 1.18### výchozí rozhraníRozhraní "eth0" # umístění adresáře databázeDatabaseDir "/var/lib/vnstat"# národní prostředí (LC_ALL) ("-" =použití národního prostředí systému)

Jak vidíte, výchozí rozhraní je etho v tomto souboru.

Pojďme zkontrolovat dostupná síťová rozhraní identifikovaná vnstat.

$ ls /var/lib/vnstatenp0s3 enp0s8

Jak vidíte, dostupná síťová rozhraní se liší od toho, které je definováno v souboru vnstat.conf.

Pokud nenastavíte správné výchozí rozhraní, může se při zobrazení hodinového nebo měsíčního provozu šířky pásma sítě zobrazit následující chyba.

Chyba:Nelze přečíst databázi "/var/lib/vnstat/eth0":Žádný takový soubor nebo adresář

K tomu dochází, protože výchozí rozhraní je nesprávně definováno v /etc/vnstat.conf soubor.

Chcete-li nakonfigurovat výchozí síťové rozhraní, upravte /etc/vnstat.conf soubor a aktualizujte správný název rozhraní. Můžete přímo upravit /etc/vnstat.conf soubor a globálně aktualizujte název rozhraní. Doporučuje se však vytvořit si vlastní konfigurační soubor vnstat v adresáři HOME uživatele.

$ cp /etc/vnstat.conf ~/.vnstatrc
$ nano ~/.vnstatrc

Budu používat enp0s3 jako mé výchozí rozhraní.

Nahraďte enp0s3 svým vlastním. Uložte a zavřete soubor.

Nakonfigurujte výchozí síťové rozhraní na FreeBSD

Upravit konfigurační soubor vnstat:

# vi /usr/local/etc/vnstat.conf

Pokud konfigurační soubor není k dispozici, vytvořte nový pomocí vzorového konfiguračního souboru:

# cp /usr/local/etc/vnstat.conf.sample /usr/local/etc/vnstat.conf

Potom aktualizujte správné výchozí síťové rozhraní:

Rozhraní "em0"

Uložte a zavřete soubor.

Monitorování šířky pásma sítě pomocí vnStat v Linuxu a Unixu

Pokud s vnStat začínáte, vyvolejte část nápovědy vnStat a zobrazte seznam dostupných možností spuštěním tohoto příkazu:

$ vnstat --help

Ukázkový výstup:

 vnStat 1.18 od Teemu Toivola  -q, --query query database -h, --hours show hours -d, --days show days -m, --months show months -w, --weeks show weeks -t, --top10 show top 10 days -s, --short use short output -u, --update update database -i, --iface select interface (výchozí:eth0) -?, -- help krátká nápověda -v, --version zobrazit verzi -tr, --traffic vypočítat provoz -ru, --rateunit swap nakonfigurovaná rychlostní jednotka -l, --live zobrazit přenosovou rychlost v reálném časeViz také "--longhelp" pro kompletní možnosti seznam a "man vnstat".

Zobrazení využití šířky pásma všech rozhraní

Nyní zobrazme síťový provoz všech rozhraní.

Chcete-li to provést, stačí spustit:

$ vnstat

Ukázkový výstup:

 rx / tx / celkem / odhadovaný enp0s3:září '19 120 KiB / 66 KiB / 186 KiB / 0 KiB dnes 120 KiB / 66 KiB / 186 KiB / -- enp0s8:září 2019 128 KiB / 218 KiB KiB / 0 KiB dnes 128 KiB / 88 KiB / 216 KiB / --

Tady,

  • rx - Přijatý provoz
  • tx - Přenesený provoz

Počkejte několik minut, než Vnstat začne shromažďovat využití síťového provozu. Pokud spustíte vnstat ihned po jeho instalaci, můžete získat výsledek podobný níže.

enp0s3:Zatím není k dispozici dostatek dat.

Nebo získáte následující výstup v distribucích založených na RPM, jako je CentOS.

Nebyla nalezena žádná databáze, není co dělat. Pro nápovědu použijte --help.Novou databázi lze vytvořit pomocí následujícího příkazu:vnstat --create -i eth0Nahraďte 'eth0' rozhraním, které by mělo být monitorováno. V současné době jsou k dispozici následující rozhraní:enp0s3 (1000 Mbit) lo 

Teď nezobrazuje nic. Je to proto, že vnStat ještě nezačal shromažďovat statistiky.

Zobrazení využití šířky pásma konkrétního rozhraní

Chcete-li zobrazit využití šířky pásma sítě konkrétního rozhraní, například enp0s3 , stačí uvést název síťové karty jako níže.

$ vnstat -i enp0s3

Ukázkový výstup:

Aktualizace databáze:Po 9. září 08:26:47 2019 enp0s3 od 9. 9. 2019 rx:136 KiB tx:74 KiB celkem:210 KiB měsíčně rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- Září '19 136 KiB | 74 kB | 210 kiB | 0,00 kbit/s -----------------------+-------------+-------- ------+--------------- odhadovaný -- | -- | -- | denně rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- dnes 136 KiB | 74 kB | 210 kiB | 0,06 kbit/s -----------------------+-------------+-------- ------+--------------- odhadovaný -- | -- | -- |

Zde enp0s3 je název mé síťové karty. Název síťové karty najdete pomocí "ip addr" příkaz.

Na FreeBSD , název síťové karty je em0 . Chcete-li zobrazit jeho šířku pásma, jednoduše spusťte:

# vnstat -i em0

Ukázkový výstup:

Aktualizace databáze:2019-09-09 16:40:00 em0 od 2019-09-09 rx:606,84 KiB tx:56,12 KiB celkem:662,96 KiB měsíčně rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- 2019-09 606,84 KiB | 56,12 KiB | 662,96 KiB | 7 bit/s ------------------------+-------------+-------- ------+--------------- odhadovaný -- | -- | -- | denně rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- dnes 606,84 KiB | 56,12 KiB | 662,96 KiB | 90 bit/s ------------------------+-------------+-------- ------+--------------- odhadem 873 kiB | 80 kiB | 953 kB

Zobrazení využití šířky pásma za hodinu

Zobrazme výsledky síťového provozu za hodinu. Chcete-li to provést, spusťte:

$ vnstat -h

Ukázkový výstup:

 enp0s3 09:46 ^ r | r r | r r | r r | r r r | rt rt r | rt rt r | rt rt rt | rt rt rt | r rt rt rt -+-------------------------------------------- -------------------------------> | 10 11 12 13 14 15 16 17 18 19 20 21 22 23 00 01 02 03 04 05 06 07 08 09 h rx (KiB) tx (KiB) ][ h][K rx (K) ][ h][K rx (K) ) tx (KiB) 10 0 0 ][ 18 0 0 ][ 02 0 011 0 0 ][ 19 0 0 ][ 03 0 012 0 0 ][ 20 0 0 ][ 04 0 013 0 0 ][ 21 0 [ 05 0 014 0 0 ][ 22 0 0 ][ 06 12 715 0 0 ][ 23 0 0 ][ 07 86 4816 0 0 ][ 00 0 0 ][ 08 88 4517 0 0 ][ 0 ][ 01 59 32

Pokud máte více rozhraní, použijte -i parametr pro zobrazení hodinového síťového provozu konkrétní karty, jak je uvedeno níže.

$ vnstat -h -i enp0s8

Doporučené čtení:

  • Jak omezit šířku pásma sítě v Linuxu pomocí Wondershaper

Zobrazení denního využití šířky pásma

Použijte '-d' příznak pro zobrazení síťového provozu výchozího síťového rozhraní za den.

$ vnstat -d

Ukázkový výstup:

enp0s3 / denní den rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- 9. 9. 2019 258 kiB | 138 kB | 396 KiB | 0,09 kbit/s -----------------------+-------------+-------- ------+--------------- odhadovaný -- | -- | -- |

Zobrazení týdenního využití šířky pásma

$ vnstat -w

Ukázkový výstup:

enp0s3 / týdenní rx | tx | celkem | prům. sazba ---------------------------+-------------+------- ------+--------------- posledních 7 dní 258 KiB | 138 kB | 396 KiB | 0,00 kbit/s aktuální týden 258 kB | 138 kB | 396 KiB | 0,09 kbit/s ---------------------------+-------------+----- ---------+--------------- odhadovaný -- | -- | -- |

Zobrazení měsíčního využití šířky pásma

Chcete-li zobrazit měsíční využití karty síťového rozhraní, použijte '-m' přepínač.

$ vnstat -m

Ukázkový výstup:

enp0s3 / měsíc rx | tx | celkem | prům. sazba ------------------------+-------------+---------- ---+--------------- Září '19 258 KiB | 138 kB | 396 KiB | 0,00 kbit/s -----------------------+-------------+-------- ------+--------------- odhadovaný -- | -- | -- |

Zobrazení využití šířky pásma za posledních deset dní

Chcete-li zobrazit využití sítě za posledních deset dní, použijte '-t' vlajka.

$ vnstat -t

Ukázkový výstup:

enp0s3 / top 10 # den rx | tx | celkem | prům. sazba -----------------------------+--------------+----- --------+--------------- žádné údaje nejsou k dispozici ----------------------- ------+-------------+-------------+--------------- 

Nezobrazuje žádná data prvních deseti dnů, protože jsem dnes nainstaloval Vnstat.

Doporučené čtení:

  • Nainstalujte nástroj NetData Performance Monitoring Tool v systému Linux

Zobrazení využití šířky pásma v konkrétním čase

Můžeme také zobrazit využití šířky pásma v konkrétním čase.

Chcete-li zobrazit využití šířky pásma za posledních deset sekund, spusťte:

$ vnstat -i enp0s3 -tr 10

Ukázkový výstup:

7 paketů vzorkovaných za 10 sekund Průměrný provoz pro enp0s3 rx 0,28 kbit/s 0 paketů/s tx 0,14 kbit/s 0 paketů/s

Zobrazení využití šířky pásma v reálném čase

Chcete-li zahájit živé sledování používání konkrétní karty rozhraní, spusťte:

$ vnstat -i enp0s3 -l

Ukázkový výstup:

Monitorování enp0s3... (pro zastavení stiskněte CTRL-C) rx:0 kbit/s 0 p/s tx:0 kbit/s 0 p/s

Chcete-li zastavit živé sledování, stiskněte CTRL-C .

Další podrobnosti naleznete na manuálových stránkách:

$ man vnstat

Závěr

VnStat je praktický a užitečný nástroj pro sledování používání internetu nebo síťového provozu pro jedno nebo více síťových rozhraní. V případě, že vás zajímá, jakou šířku pásma denně/měsíčně spotřebováváte, můžete tento nástroj použít ke zjištění bez pomoci vašeho poskytovatele internetových služeb nebo pomocí nástrojů třetích stran.


Linux
  1. Jak nainstalovat a otestovat Ansible na Linuxu

  2. Jak nainstalovat a používat Flatpak v Linuxu

  3. Jak nainstalovat a používat Glances k monitorování systémů Linux

  1. Jak nainstalovat a používat Traceroute v Linuxu

  2. Odstraňování problémů se sítí Linux a ladění?

  3. Jak monitorovat a protokolovat síťový provoz v systému Linux pomocí vnStat

  1. Jak nainstalovat Elasticsearch a Kibana na Linux

  2. Nejlepší nástroje pro sledování šířky pásma sítě na serveru Linux

  3. Jak monitorovat síťový provoz na Linuxu pomocí vnStat