Zum Hauptinhalt springen
Zurück zur Kategorie

Bandbreiten- und Traffic-Überwachung: vnstat, iftop, nethogs

Historische Statistiken mit vnstat, Echtzeit-Überwachung mit iftop, prozessbasierte Bandbreite mit nethogs, nload-Nutzung und Ergebnisinterpretation.

Lesezeit: 13 min Netzwerk & DNS
bandbreiten-überwachungvnstatiftopnethogsnloadnetzwerktrafficbandbreitelinux-netzwerktools

Inhaltsverzeichnis

Bandbreiten- und Traffic-Überwachung: vnstat, iftop, nethogs Leitfaden

Die Überwachung des Netzwerkverkehrs Ihres Servers ist entscheidend für die Erkennung von Leistungsproblemen, die Optimierung der Bandbreitennutzung und das Erkennen abnormaler Aktivitäten. In diesem Leitfaden behandeln wir die beliebtesten Tools zur Überwachung des Netzwerkverkehrs unter Linux — vnstat, iftop, nethogs und nload.

vnstat — Historische Traffic-Statistiken

vnstat ist ein leichtgewichtiges Tool, das Traffic-Statistiken für Netzwerkschnittstellen in einer Datenbank speichert. Es bewahrt historische Daten auch nach Systemneustarts.

Installation

hljs bash
# Ubuntu/Debian
sudo apt update
sudo apt install vnstat -y

# CentOS/AlmaLinux
sudo dnf install vnstat -y

# Dienst starten
sudo systemctl enable vnstat
sudo systemctl start vnstat

Grundlegende Verwendung

hljs bash
# Zusammenfassung aller Schnittstellen
vnstat

# Bestimmte Schnittstelle
vnstat -i eth0

# Stündliche Statistiken
vnstat -h

# Tägliche Statistiken
vnstat -d

# Monatliche Statistiken
vnstat -m

# Wöchentliche Statistiken
vnstat -w

# Live-Traffic (aktualisiert alle 5 Sekunden)
vnstat -l

# JSON-Ausgabe (für Script-Integration)
vnstat --json

vnstat-Ausgabe lesen

                      rx      /      tx      /     total    /   estimated
 eth0:
       2024-01-15    1.23 GiB  /    456 MiB  /    1.67 GiB
       2024-01-16    2.45 GiB  /    789 MiB  /    3.24 GiB
  • rx: Empfangener (Download) Traffic
  • tx: Gesendeter (Upload) Traffic
  • total: Gesamter Traffic
  • estimated: Monatsendschätzung

iftop — Echtzeit-Verbindungsüberwachung

iftop ist ein interaktives Tool, das in Echtzeit zeigt, wie viel Traffic mit welchen IP-Adressen ausgetauscht wird.

Installation

hljs bash
# Ubuntu/Debian
sudo apt install iftop -y

# CentOS/AlmaLinux
sudo dnf install iftop -y

Grundlegende Verwendung

hljs bash
# Auf Standardschnittstelle ausführen
sudo iftop

# Bestimmte Schnittstelle
sudo iftop -i eth0

# DNS-Auflösung deaktivieren (schneller)
sudo iftop -n

# Portnummern anzeigen
sudo iftop -P

# Bestimmtes Netzwerk filtern
sudo iftop -F 192.168.1.0/24

iftop-Tastaturkürzel

n  — DNS-Auflösung umschalten
p  — Portnummern umschalten
P  — Pause
s  — Quelladresse umschalten
d  — Zieladresse umschalten
t  — Traffic-Richtung umschalten
1  — 2-Sekunden-Durchschnitt
2  — 10-Sekunden-Durchschnitt
3  — 40-Sekunden-Durchschnitt
q  — Beenden

iftop-Ausgabe lesen

203.0.113.50   =>  203.0.113.1    1.23Kb  2.45Kb  3.67Kb
                <=                 4.56Kb  8.90Kb  12.3Kb
  • =>: Ausgehender Traffic (Upload)
  • <=: Eingehender Traffic (Download)
  • Drei Spalten: 2s, 10s, 40s Durchschnitte

nethogs — Prozessbasierte Bandbreite

nethogs zeigt, welche Anwendung oder welcher Prozess wie viel Bandbreite verwendet. Ideal zum Finden des Prozesses, der hohen Traffic erzeugt.

Installation

hljs bash
# Ubuntu/Debian
sudo apt install nethogs -y

# CentOS/AlmaLinux
sudo dnf install nethogs -y

Grundlegende Verwendung

hljs bash
# Alle Schnittstellen überwachen
sudo nethogs

# Bestimmte Schnittstelle
sudo nethogs eth0

# Mehrere Schnittstellen
sudo nethogs eth0 eth1

# Aktualisierungsintervall setzen (Sekunden)
sudo nethogs -d 2

# Traffic-Einheit (KB/s)
sudo nethogs -v 1

# Traffic-Einheit (MB/s)
sudo nethogs -v 2

nethogs-Ausgabe lesen

  PID USER     PROGRAM                      DEV        SENT      RECEIVED
 1234 www-data /usr/sbin/apache2            eth0       1.234     5.678 KB/sec
 5678 root     /usr/bin/wget                eth0       0.123     45.67 KB/sec
  • PID: Prozess-ID
  • USER: Benutzer, der den Prozess ausführt
  • PROGRAM: Anwendungsname
  • SENT: Daten-Senderate
  • RECEIVED: Daten-Empfangsrate

nload — Bandbreitengraph

nload ist ein einfaches Tool, das Netzwerktraffic in Echtzeit als ASCII-Graph anzeigt.

Installation

hljs bash
# Ubuntu/Debian
sudo apt install nload -y

# CentOS/AlmaLinux
sudo dnf install nload -y

Grundlegende Verwendung

hljs bash
# Standardschnittstelle
nload

# Bestimmte Schnittstelle
nload eth0

# Mehrere Schnittstellen (mit Pfeiltasten wechseln)
nload eth0 eth1

# Aktualisierungsintervall (Millisekunden)
nload -t 500

# Traffic-Einheit
nload -u h  # Menschenlesbar
nload -u m  # Mbit/s
nload -u k  # Kbit/s

Weitere nützliche Tools

ss — Socket-Statistiken

hljs bash
# Aktive Verbindungen auflisten
ss -tuln

# Verbindungsanzahl anzeigen
ss -s

# Nach bestimmtem Port filtern
ss -tuln sport = :80

# Verbindungszustände anzeigen
ss -tan | awk '{print $1}' | sort | uniq -c | sort -rn

Traffic-Statistiken mit ip-Befehl

hljs bash
# Schnittstellenstatistiken
ip -s link show eth0

# Alle Schnittstellen
ip -s link

# Kontinuierliche Überwachung
watch -n 1 'ip -s link show eth0'

Ergebnisse interpretieren

Abnormalen Traffic erkennen

hljs bash
# Prozesse mit hohem Traffic finden
sudo nethogs eth0

# Verdächtige Verbindungen prüfen
ss -tuln

# Externe IP-Verbindungen auflisten
ss -tn | grep ESTABLISHED | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn

Bandbreitennutzungsbericht

hljs bash
# Monatliche Nutzungszusammenfassung
vnstat -m

# Top-10-Nutzung aller Zeiten
vnstat --top10

Sie können automatisierte Berichte erstellen, indem Sie vnstat mit cron kombinieren:

hljs bash
# Jeden Abend um Mitternacht Bericht senden
0 0 * * * vnstat --json > /var/log/vnstat_daily.json

iftop und nethogs erfordern Root-Rechte. Führen Sie diese Tools aus Sicherheitsgründen nur bei Bedarf aus und speichern Sie Ausgaben sicher.

Fazit

vnstat ist ideal für historische Traffic-Statistiken, iftop für Echtzeit-Verbindungsüberwachung, nethogs für prozessbasierte Bandbreitenanalyse und nload für visuelle Traffic-Graphen. Mit diesen Tools zusammen können Sie den Netzwerkverkehr Ihres Servers umfassend überwachen, abnormale Aktivitäten erkennen und die Bandbreitennutzung optimieren.