Overvågning af netværkstrafik hjælper ikke kun administratorer med at registrere årsager til trafikrelaterede problemer, som f.eks. Overbelastning af netværk, men hjælper dem også med at holde en fane på trafikstrømmen til og fra internettet. Alt i alt er det en vigtig opgave, der kræver en dedikeret og en effektiv software.

For Linux er der mange GUI-baserede netværkstrafikovervågningsværktøjer, men hvis du leder efter et kommandolinjebaseret værktøj, er vnstat værd at prøve. I denne artikel vil vi diskutere de grundlæggende elementer i kommandoen sammen med de funktioner, den giver.

Introduktion

vnStat er et kommandolinjebaseret netværkstrafikovervågningsværktøj til både Linux og BSD. Det holder en log over netværkstrafik for de valgte grænseflader og bruger den netværkskortstatistik, der leveres af kernen som informationskilde, hvilket effektivt betyder, at det er let på systemressourcer, da det ikke snupper nogen trafik. Men for at kommandoen skal køre korrekt, kræves der i det mindste en 2, 2-seriens kerne.

Her er nogle af de funktioner, den giver:

  • De statistikker, den samler, fortsætter ved hjælp af system genstart
  • Den kan overvåge flere grænseflader til enhver tid
  • Det giver flere output muligheder: opsummering, time, daglig, månedlig, ugentlig og top 10 dage
  • Måneder kan konfigureres til at følge faktureringsperioden
  • Det giver mulighed for at producere output som et png-billede
  • Det er let på systemressourcer
  • Det kan bruges uden root tilladelser

Download og installer

Brugere af Debian-baserede Linux-distributioner, som Ubuntu, kan nemt downloade og installere hjælpeprogrammet ved hjælp af følgende kommando:

 sudo apt-get install vnstat 

Alternativt kan du også downloade kommandos kildepakke fra dens officielle hjemmeside og installere den manuelt.

Anvendelseseksempler

Her er nogle eksempler på hvordan kommandoen vnstat kan bruges:

Bemærk : Alle eksempler, der præsenteres i denne artikel, testes på Ubuntu 14.04.

Standard output

Hvis du kører kommandoen vnstat uden kommandolinjevalg, vises den en månedlig og daglig rapport om netværksaktiviteten. Her er output kommandoen produceret på mit system:

 vnstat 

Som klart fra den første linje i output opdaterede vnstat en slags database, før der blev produceret andre output. Dette er den samme database (svarende til en netværksgrænseflade), som værktøjet oprettede, da du installerede det:

Databasen er oprettet med samme navn som den grænseflade, der overvåges ( eth0 i dette tilfælde) og er gemt som en FPT-fil inde i /var/lib/vnstat/ directory.

Vis timers, daglig, ugentlig og månedlig trafik

Kommandoen giver kommandolinjevalg til visning hver time og dagligt såvel som månedligt, netværksaktivitet. For eksempel at vise timetrafik, brug kommandolinjen -h :

 vnstat -h 

For at vise daglig trafik skal du bruge kommandolinjen -d :

 vnstat -d 

På samme måde skal du bruge kommandolinjen -w og -m at vise ugentlig og månedlig trafik:

Prøve trafik i et bestemt antal sekunder ved hjælp af -tr-indstillingen

vnstat kommandoen giver dig mulighed for at beregne, hvor meget trafik der går gennem den valgte grænseflade i et givet antal sekunder. Dette kan gøres ved hjælp af -tr indstillingen. For eksempel brugte jeg følgende kommando til at beregne den gennemsnitlige trafikmængde, der går gennem eth0 om 10 sekunder:

 vnstat -tr 10 

Bemærk, at standardtiden vil være 5 sekunder, hvis en nummerparameter ikke er inkluderet.

Vis output i en linje

Du kan også tvinge kommandoen vnstat til at producere output i en enkelt linje, et format, der er specielt egnet til at analysere udgangen af ​​kommandoen inden for kode. Dette kan gøres ved at bruge --oneline indstillingen. Her er et eksempel:

 vnstat --oneline 

For mere information om vnstat, gå gennem sin man side.

Konklusion

Vnstat er et praktisk værktøj til dem, der ønsker at overvåge netværkstrafik via kommandolinjen. Det giver ikke kun et bredt udvalg af muligheder, men det er også ekstremt let på systemressourcer. Har du nogensinde brugt vnstat eller nogen anden lignende hjælpeprogram? Hvordan var din oplevelse? Del dine tanker i kommentarer nedenfor.