staging.inyokaproject.org

nethogs

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png nethogs 🇬🇧 ist ein Kommandozeilenwerkzeug, das die Bandbreitennutzung nach Prozessen und Sub-Netzen gruppieren kann. Es listet die PID, den Prozessnamen und den ausführenden Benutzer auf.

Möchte man den Netzwerkverkehr nach Verbindungen aufgeschlüsselt bekommen, kann man die Anwendung iftop verwenden. Eine Übersicht zu weiteren Programmen findet sich im Artikel Netzwerk-Monitoring.

Installation

Da das Programm nicht Teil der Standardinstallation ist, muss zunächst das gleichnamige Paket installiert werden[1]:

  • nethogs (universe)

Befehl zum Installieren der Pakete:

sudo apt-get install nethogs 

Verwendung

nethogs wird im Terminal[2] über den gleichnamigen Befehl aufgerufen. Da das Programm auf eine Netzwerkschnittstelle und auf alle TCP-Verbindungen zugreift, muss die Anwendung mit Root-Rechten[3] ausführt werden. Übergibt man dem Befehl nethogs keine Parameter, dann lauscht das Programm auf allen aktiven Schnittstellen. Möchte man gezielt den Netzwerkverkehr einer Schnittstelle bekommen, muss man diese dem Programm als Parameter übergeben.

Beispiele

Ohne weitere Argumente lauscht das Programm auf allen Netzwerkschnittstellen des Computers:

sudo nethogs 

Mit dem folgenden Befehl lauscht das Programm nur auf der WLAN-Schnittstelle wlp1s0 (die Namen der Schnittstellen findet man beispielsweise über den Befehl ifconfig):

sudo nethogs wlp1s0 

Möchte man mehrere Netzwerkschnittstellen gezielt überwachen, dann kann man dem Programm mehrere Schnittstellen übergeben. In dem Beispiel handelt es sich um eine Ethernet- und zwei WLAN-Schnittstellen. Zudem aktualisiert sich nethogs nur alle drei Sekunden, was etwa bei einer großen Anzahl von Verbindungen sinnvoll sein kann.

sudo nethogs enp2s0 wlp1s0 wlp3s0 -d 3 

(Seit dem Wechlsel von upstart zu systemd in Ubuntu 15.04 werden anstelle der früheren Nummerierung eth0, eth1, wlan0, etc. sogenannte Predictable Network Interface Names 🇬🇧 verwendet, die sich reproduzierbar aus Eigenschaften der Netzwerkschnittstellen ergeben.)

Parameter und Tastenkombinationen

Über die folgenden Parameter kann man nethogs steuern (für eine vollständige Liste führe man man nethogs aus):

Optionen von nethogs
Parameter Bedeutung
-d ZAHL Aktualisierungsrate in Sekunden
-t Tracemode
-V Zeigt die Versionsnummer an
-C TCP und UDP erfassen (standardmäßig wird nur TCP erfasst)

Die folgende kurze Liste mit der Tastenbelegung innerhalb des Programms ist vollständig. Es gibt keine weiteren dokumentierten Aktionen, die durch einen Tastendruck ausgelöst werden können.

Tastenbelegung
Taste Aktion
M Zwischen Einheiten umschalten (KB/s, KB, B, MB)
B Umschalten zwischen Basisnamen und vollständigem Pfad der Programme (basename)
L Umschalten der Anzeige der Kommandozeilen-Argumente der Programme (line)
R Liste wird nach empfangenen Datenvolumen sortieren (received)
S Liste wird nach gesendeten Datenvolumen sortieren (send)
Q Programm wird beendet

Problembehebung

nethogs zeigt keinen Datenverkehr (UDP) von BitTorent an

Standardmäßig zeigt nethogs nur TCP-Verbindungen an. Um auch den durch BitTorrent verwendeten UDP-Datenverkehr anzuzeigen, muss mit der Option -C der "catch all"-Modus aktiviert werden.

Fehlermeldung (Stand: 23.2.2016, Ubuntu 14.04, LTS)

Nach Update startet nethogs mit Fehlermeldung:

sudo nethogs  
[sudo] password for <$USER>: 
creating socket failed while establishing local IP - are you root?

Kann durch Aktualisierung behoben werden, dafür ist Git zu installieren:

Abhängige Entwicklungspakete installieren:

sudo apt-get build-dep nethogs 

Aktuelle Version mit auschecken/klonen:

git clone https://github.com/raboof/nethogs.git 

Hinweis!

Fremdsoftware kann das System gefährden.

und vorzugsweise mit checkinstall installieren:

cd nethogs && make && sudo -k checkinstall --pkgsource="https://github.com/raboof/nethogs/" --pkglicense="GPL2" --deldesc=no --nodoc --maintainer="$USER\\<$USER@$HOSTNAME\\>" --pkgarch=$(dpkg --print-architecture) --pkgversion="0.8.2" --pkgrelease="SNAPSHOT" --pkgname=nethogs make install 

Die Nachfragen von Checkinstall mit bestätigen.

Diese Revision wurde am 2. September 2025 15:35 von hife erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Netzwerk, System, Internet