Wie können Sie die gesamte Internet-Datennutzung über Neustarts hinweg überwachen?


55

Einige Breitbandanbieter erheben ein monatliches Download-Limit und berechnen zusätzliche Gebühren, wenn Sie darüber hinausgehen. Es ist auch recht einfach, einige der unteren Grenzwerte zu überschreiten, indem Sie Pakete installieren / aktualisieren und "normales" Browsen durchführen (was für mich das Streamen von Fernsehprogrammen und Filmen einschließt).

Dies bedeutet, dass Sie die Menge, die Sie im Internet verwenden, begrenzen müssen. Es ist jedoch schwer zu wissen, wann.

Der Systemmonitor hilft dabei, indem er im Netzwerkbereich auf der Registerkarte Ressourcen eine Gesamtzahl der empfangenen / gesendeten Nachrichten angibt. Dies wird jedoch bei jedem Neustart zurückgesetzt. Es wäre gut, wenn es eine Möglichkeit gäbe, eine monatliche Gesamtsumme zu erhalten, damit Sie wissen, wie nahe Sie daran sind, Ihr Limit zu überschreiten, und vielleicht sogar gewarnt werden, wenn es so aussieht, als würden Sie das Limit überschreiten.

Kennt jemand einen Weg, um dies zu erreichen?


Antworten:


38

Sie können vnstat auschecken . Es ist befehlszeilenbasiert und im Repository verfügbar.

Sie können es mit starten sudo vnstat -u -i [interface]

Um die Statistiken zu sehen sudo vnstat -i [interface]


27

vnStat - Konsolenbasierter Netzwerkmonitor mit geringem Gewicht

vnStat ist ein konsolenbasierter Netzwerkverkehrsmonitor für Linux und BSD, der den Netzwerkverkehr für die ausgewählten Schnittstellen protokolliert. Es verwendet die vom Kernel bereitgestellten Netzwerkschnittstellenstatistiken als Informationsquelle. Dies bedeutet, dass vnStat tatsächlich keinen Datenverkehr aufspürt und zudem eine geringe Nutzung der Systemressourcen gewährleistet.

In diesem Tutorial werden wir überprüfen:

  • Eigenschaften
  • Installation
  • Aufbau
  • Starten Sie Systemd Service
  • Verwendung (von der Kommandozeile)
  • Conky Beispiel

Eigenschaften

  • Schnell und einfach zu installieren und in Betrieb zu nehmen
  • Die gesammelten Statistiken bleiben auch nach einem Neustart des Systems erhalten
  • kann mehrere Schnittstellen gleichzeitig überwachen
  • mehrere Ausgabeoptionen
  • Zusammenfassung, stündlich, täglich, monatlich, wöchentlich, Top 10 Tage
  • Optionale PNG-Bildausgabe (mit libgd)
  • Monate können so konfiguriert werden, dass sie dem Abrechnungszeitraum folgen
  • leichter, minimaler Ressourcenverbrauch
  • Gleiche niedrige CPU-Auslastung, unabhängig vom Datenverkehr
  • kann ohne root-berechtigung verwendet werden
  • Online-Farbkonfigurationseditor

Installation

nvStat befindet sich in den offiziellen Repositories, sodass keine Verknüpfung zu einem neuen ppa erforderlich ist. Zum Installieren einer Terminal - Instanz erstellen Ctrl+ Alt+ Tund geben Sie an der Eingabeaufforderung:

sudo apt-get install vnstat

Lassen Sie Ihr Terminal nach der Installation für die folgenden Abschnitte geöffnet. Es ist kein Neustart erforderlich.

Aufbau

Wählen Sie eine bevorzugte Netzwerkschnittstelle und bearbeiten Sie die Schnittstellenvariable /etc/vnstat.confentsprechend. Um alle für vnstat verfügbaren Schnittstellen aufzulisten, verwenden Sie:

vnstat --iflist

Um eine bestimmte Schnittstelle zu überwachen, müssen Sie zuerst eine Datenbank initialisieren. Jede Schnittstelle benötigt eine eigene Datenbank. Der Befehl zum Initialisieren einer für die eth0-Schnittstelle lautet:

sudo vnstat -u -i eth0 

Starten Sie Systemd Service

Nach dem Einführen der Schnittstelle (n) und dem Überprüfen der Konfigurationsdatei. Sie können den Überwachungsprozess starten über systemd:

sudo systemctl start vnstat.service

Um diesen Dienst dauerhaft zu nutzen:

sudo systemctl enable vnstat.service

Ab sofort vnstatwird die Netzwerkauslastung im Hintergrund mit einem so geringen Prozentsatz der CPU erfasst, dass sie nicht mehr in der Liste der 9 wichtigsten Prozesse von conky (Systemmonitor) (auf meinem Computer) angezeigt wird.

Verwendung (über die Befehlszeile)

Fragen Sie den Netzwerkverkehr ab:

vnstat -q

Anzeigen der Nutzung des Live-Netzwerkverkehrs:

vnstat -l

Um weitere Optionen zu finden, verwenden Sie:

vnstat --help

Monatssummen

Verwenden Sie zum Anzeigen der monatlichen Summen Folgendes:

rick@dell:~$ vnstat -m

 eth0  /  monthly

       month        rx      |     tx      |    total    |   avg. rate
    ------------------------+-------------+-------------+---------------
      Nov '16     76.31 MiB |    2.03 MiB |   78.35 MiB |   10.45 kbit/s
    ------------------------+-------------+-------------+---------------
    estimated      3.13 GiB |      84 MiB |    3.21 GiB |

Conky Beispiel

Conky ist ein beliebter leichter Systemmonitor, der in vielen Linux-Distributionen verwendet wird. Sie können die vnStat-Bandbreitensummen für Ihr conky-Display wie folgt festlegen:

Bildbeschreibung hier eingeben

Beachten Sie, dass das Bild am YesterdaySonntag aufgenommen wurde, was erklärt, warum der wöchentliche Gesamtbetrag geringer ist.

Der Conky-Code, um dies zu erreichen, lautet:

${color orange}${voffset 2}${hr 1}
${color1}Network using vnStat "-i", "-w" and "-m"
${color}${goto 5}Today ${goto 100}Yesterday ${goto 225}Week ${goto 325}Month ${color green}
${execi 300 vnstat -i eth0 | grep "today" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 110}${execi 300 vnstat -i eth0 | grep "yesterday" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 220}${execi 300 vnstat -i eth0 -w | grep "current week" | awk '{print $9" "substr ($10, 1, 1)}'} ${goto 315}${execi 300 vnstat -i eth0 -m | grep "`date +"%b '%y"`" | awk '{print $9" "substr ($10, 1, 1)}'}
${color orange}${voffset 2}${hr 1}

Um Platz zu sparen auf meinem schmalen Fenster I „G“ statt „GiB“, „M“ anstelle von „MiB“ verwendet, etc. Wenn Sie mehr Bildschirm zum Immobilien ändern substr ($10, 1, 1)zu $10und das gleiche für $9.

Möglicherweise müssen Sie in Abhängigkeit von Ihrem von gemeldeten Netzwerknamen eth0zu wlan0oder eth1usw. wechseln ifconfig.


Ist es möglich, den lokalen Netzwerkverkehr zu "filtern"? Ich habe viel lokalen Verkehr und möchte ihn nicht für meine Internetnutzung zählen.
JPelletier

@JPelletier Der Autor von vnStat wird zitiert, dass dies nicht möglich ist. Er wird in diesem Thread zitiert, in dem ungefähr 20 Leute 280 US-Dollar gesammelt haben , um jemanden zu bezahlen, der genau das tut, wonach Sie gefragt haben: forum.netgate.com/topic/29677/… Doug Smythies ist ein Experte für die Überwachung des Datenverkehrs pro IP-Adresse, und ich werde es tun Bitten Sie ihn, sich Ihren Kommentar anzusehen.
WinEunuuchs2Unix

Danke für die Antwort! Momentan benutze ich, iftopum die Internetnutzung zu diagnostizieren, aber die historischen Informationen zu haben, wäre nett
JPelletier

@JPelletier: Mein Router ist ein Ubuntu-Server, auf dem ein iptables-Skript für die Routing- / Firewall-Funktion ausgeführt wird. Über die WAN-Schnittstelle kann nur WAN-Verkehr überwacht werden. Für einen Ubuntu-Computer in einem LAN kann man möglicherweise alles mit tcpdump erfassen und dann die LAN- und Broadcast-Pakete herausfiltern, um WAN-Pakete von / zu diesem Computer zu extrahieren. Siehe auch hier
Doug Smythies

@DougSmythies Danke für den Kommentar! Ich frage mich, ob es überhaupt möglich ist, zwei Schnittstellen zu erstellen: eth0 und eth1, die an dieselbe Netzwerkkarte gebunden sind. Wurde dann der gesamte lokale Datenverkehr über eth1 und alles andere über eth0 geleitet vnstat, auf dem Statistiken gesammelt würden? Sorry, wenn es wie eine dumme Frage klingt ...
WinEunuuchs2Unix

6

Obwohl dies keine Ubuntu-Antwort ist, verwende ich dafür die Tomato-Firmware auf meinem WRT54G-Router. Es gibt mir monatliche Up / Down-Nutzung für die letzten paar Jahre, und das Schöne (im Kontext Ihrer Frage) ist, dass es für das gesamte Netzwerk ist, nicht nur für das eine System, auf dem es läuft (obwohl dieser Punkt strittig ist) wenn das betreffende System Ihr Router ist oder direkt verbunden ist).


3
Leckere Tomaten. Großartig für Sandwiches, noch besser für Router.
Ryan Thompson

6

Nur um Rickys Antwort zu erweitern:

Mit können ifconfig | cut -c 1-8 | sort | uniq -uSie die Schnittstellen auflisten:

enp0s31f
lo      
wlp3s0

Für eine Benutzeroberfläche können Sie dann den Datenverkehr folgendermaßen visualisieren:

vnstati -vs -i wlp3s0 -o ~/summary.png

gibt eine schöne Zusammenfassung:

Bildbeschreibung hier eingeben

  • rx ist der empfangene Verkehr
  • tx ist der übertragene Verkehr

Stellen Sie einfach sicher, dass Sie vnstati zusätzlich zu vnstat installiert haben. sudo apt install vnstat vnstati
Organic Addict

3

Ich empfehle das Dienstprogramm ntop, das in den Repositorys verfügbar ist, als Dienst ausgeführt wird und Aufzeichnungen zur Verkehrsnutzung führt. Die Berichte stehen auf einem internen http-Server (Port 3000) zur Verfügung. Sie können sie leicht mit einem Browser überprüfen,http://localhost:300/

Überprüfen Sie, was Sie von ntop auf der ntop-Website erhalten können .


ntop verfolgt nicht die Nutzung zwischen Neustarts, oder?
Erigami

Laut Dokumentation kann es das rrd Plugin verwenden, ich habe mich nicht selbst getestet.
João Pinto

Wie benutzt man dann das rrd Plugin?
Anwar,

2

Abgesehen von jeder Softwarelösung würde ich empfehlen, Ihren Anbieter zu konsultieren. Viele von ihnen verfügen über Überwachungstools, die Sie warnen, wenn Sie ein bestimmtes Limit erreichen oder Ihren Zugang vorübergehend sperren. Dies hat den Vorteil, dass Sie eine "offizielle" Nummer erhalten.


Ein paar Jahre zu spät zu der Party, was Sie nicht erkennen, ist, dass der ISP nicht betroffen ist, wenn Sie darüber hinweggehen, in der Tat, wie sie ihr Geld verdienen, so dass ihre Werkzeuge wahrscheinlich nicht berücksichtigen, viele Faktoren wie. Mein ISP gewährt 40 GB Erlaubnis für eine Gebühr von 20 GBP, berechnet jedoch 20 GBP pro Gigabyte, über die ich bereits einmal hinausgegangen bin, und ich erinnere mich, dass es Weihnachten ruiniert hat, aber der ISP hat mich glücklich gemacht, mir einen riesigen Teil des Geldes in Rechnung zu stellen. Ich sagte, mein Internet sei ausgeschaltet, sie haben geeicht, es sei eingeschaltet. Später fand ich jemanden, der sich direkt über zufällige Konten mit dem MUX verband
Mark Giblin,

0

Ich fand " download monitor " als sehr gutes und einfach zu verwendendes Tool, um Datenstatistiken anzuzeigen. Es hat GUI-Schnittstelle , die es sehr einfach zu bedienen macht. Es ist im Ubuntu Software Center verfügbar.

Monitor herunterladen

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.