Netzwerk-Monitoring ist wichtig, um jedes Netzwerk gesund und funktionsfähig zu halten. Linux bietet viele leistungsstarke Tools, die Systemadministratoren beim Überwachen des Netzwerkverkehrs und beim Beheben von Problemen unterstützen. Dieser Artikel betrachtet sechs dieser Tools: NetHogs, nload, netstat, iftop, speedometer und NetFlow.
Die wichtigsten Punkte
- NetHogs ist ein Netzwerk-Monitoring-Tool, das die Bandbreitennutzung nach Prozessen (PIDs) gruppiert. Das macht es nützlich, um die Ursachen plötzlicher Traffic-Spitzen zu finden und schnell die für Netzwerkprobleme verantwortlichen Prozesse zu identifizieren.
- nload ist ein Echtzeit-Netzwerk-Monitoring-Tool, das Diagramme für eingehenden und ausgehenden Verkehr direkt in der Konsole anzeigt, zusammen mit Statistiken zur Bandbreitennutzung wie aktuelle, durchschnittliche, minimale und maximale Nutzung.
- netstat liefert detaillierte Informationen über eingehende und ausgehende Netzwerkverbindungen für TCP- und UDP-Protokolle sowie Routing-Tabellen, Netzwerkschnittstellen und Protokoll-Statistiken. Das macht es wertvoll für das Verstehen von Netzwerkverkehr und die Fehlersuche bei Verbindungsproblemen.
- iftop ist ein Echtzeit-Netzwerk-Monitoring-Tool, das die Bandbreitennutzung auf einer Schnittstelle nach Verbindungen oder Hosts anzeigt. Es ermöglicht Ihnen, Verbindungen mit hoher Bandbreite zu identifizieren und mit netstat die verantwortlichen Prozesse zu finden.
- speedometer ist ein Kommandozeilen-Tool, das den Netzwerkverkehr pro Schnittstelle überwacht. Es bietet anpassbare Anzeigeoptionen und die Möglichkeit, mehrere Schnittstellen gleichzeitig zu überwachen. Das macht es nützlich für den Vergleich der Schnittstellenleistung und die Identifizierung von Bandbreitenproblemen.
NetHogs
NetHogs ist ein Netzwerk-Monitoring-Tool, mit dem Sie die Bandbreitennutzung nach Prozessen (PIDs) gruppieren können. Das unterscheidet NetHogs von anderen Linux-Netzwerk-Tools, die den Verkehr nach Protokoll, Schnittstelle oder Subnetz gruppieren. Durch die Gruppierung des Verkehrs nach Prozessen ist NetHogs nützlich, um die Ursachen plötzlicher Traffic-Spitzen zu finden. Wenn Ihr Linux-System ungewöhnliche Netzwerkaktivität zeigt, kann NetHogs Ihnen helfen, den oder die für das Verhalten verantwortlichen Prozesse zu finden. Diese Art der Überwachung ermöglicht es Systemadministratoren, schnell Netzwerkprobleme zu finden und zu beheben, die durch Apps oder Dienste auf dem System verursacht werden.
Funktionen von NetHogs
- Überwachung auf Prozessebene: NetHogs überwacht den Netzwerkverkehr auf Prozessebene und verknüpft die Bandbreitennutzung mit PIDs.
- Echtzeit-Updates: Es liefert Echtzeit-Informationen über die Netzwerkaktivität und aktualisiert die Anzeige standardmäßig jede Sekunde.
- Aktualisierungsrate: Sie können die Aktualisierungsrate mit der Option
-dgefolgt vom Intervall in Sekunden anpassen. - Sortieroptionen: NetHogs ermöglicht es Ihnen, die Ausgabe nach gesendetem oder empfangenem Verkehr zu sortieren, indem Sie die Option
-sgefolgt vonsentoderrecvverwenden. - Schnittstellen auswählen: Standardmäßig überwacht NetHogs alle Netzwerkschnittstellen, aber Sie können eine Schnittstelle mit der Option
-igefolgt vom Schnittstellennamen auswählen.
Beispiele
Beispiel 1: Einen Prozess finden, der viel Bandbreite nutzt
Wenn Sie einen plötzlichen Anstieg des Netzwerkverkehrs auf Ihrem Linux-Server bemerken, um den für die erhöhte Bandbreitennutzung verantwortlichen Prozess zu finden:
- Führen Sie NetHogs in einem Terminal aus:
sudo nethogs - Schauen Sie sich die Ausgabe an und finden Sie Prozesse mit hohem gesendeten oder empfangenen Verkehr.
- Sobald Sie den problematischen Prozess gefunden haben, können Sie ihn genauer untersuchen und Maßnahmen ergreifen, wie das Stoppen des Prozesses oder die Änderung seiner Einstellungen.
Beispiel 2: Verkehr auf einer Schnittstelle überwachen
Wenn Sie den Netzwerkverkehr auf einer Schnittstelle wie eth0 überwachen möchten:
- Führen Sie NetHogs mit der Option
-iaus:sudo nethogs -i eth0 - NetHogs zeigt die Bandbreitennutzung für Prozesse an, die die Schnittstelle verwenden, wodurch es einfacher wird, sich auf relevanten Verkehr zu konzentrieren.
NetHogs Ausgabe
| PID | USER | PROGRAM | DEV | SENT | RECEIVED |
|-----|----------|--------------------------|------|-----------|-----------|
| 1234| john | /usr/bin/firefox | eth0 | 500 KB/s | 1.2 MB/s |
| 5678| www-data | /usr/sbin/apache2 | eth0 | 250 KB/s | 800 KB/s |
| 9012| root | /usr/sbin/sshd | eth0 | 10 KB/s | 5 KB/s |
In dieser Ausgabe zeigt NetHogs die PID, den Benutzernamen, den Programmnamen, das Netzwerkgerät und die Bandbreitennutzung (gesendet und empfangen) für jeden Prozess an. Diese Informationen können Ihnen helfen, schnell zu erkennen, welche Prozesse die meiste Bandbreite nutzen, und entsprechende Maßnahmen zu ergreifen.
nload
nload ist ein konsolenbasiertes Netzwerk-Monitoring-Tool für Linux, das Echtzeit-Informationen über eingehenden und ausgehenden Netzwerkverkehr liefert. Es zeigt die aktuelle, durchschnittliche, minimale und maximale Netzwerknutzung sowie die insgesamt übertragenen Daten an. Eine der wichtigsten Funktionen von nload ist die Fähigkeit, eingehenden und ausgehenden Verkehr direkt in der Konsole anzuzeigen, was es einfach macht, die Netzwerkaktivität auf einen Blick zu überwachen.
Funktionen von nload
- Echtzeit-Überwachung: nload aktualisiert die Informationen zur Netzwerknutzung in Echtzeit und liefert aktuelle Einblicke in die Netzwerkaktivität.
- Verkehrs-Visualisierung: Das Tool zeigt Diagramme für eingehenden und ausgehenden Verkehr direkt in der Konsole an, wodurch es einfach ist, Trends und Anomalien zu erkennen.
- Bandbreitennutzungs-Statistiken: nload zeigt die aktuelle, durchschnittliche, minimale und maximale Netzwerknutzung sowie die insgesamt übertragenen Daten an.
- Anpassbare Anzeige: Sie können die Anzeige anpassen, indem Sie das Aktualisierungsintervall ändern und die Einheiten für die Bandbreite auswählen (z.B. Bits, Bytes, Kilobits, Megabits).
- Multi-Geräte-Überwachung: nload kann mehrere Netzwerkschnittstellen gleichzeitig überwachen und ermöglicht es Ihnen, die Netzwerkaktivität über verschiedene Geräte hinweg zu verfolgen.
Beispielnutzung
Um mit der Überwachung des Netzwerkverkehrs mit nload zu beginnen, führen Sie den Befehl aus:
nload
Standardmäßig zeigt nload Informationen zur Netzwerknutzung für alle verfügbaren Netzwerkschnittstellen an. Um eine bestimmte Schnittstelle zu überwachen, verwenden Sie die Option -d gefolgt vom Schnittstellennamen:
nload -d eth0
Um das Aktualisierungsintervall zu ändern, verwenden Sie die Option -t gefolgt vom gewünschten Intervall in Millisekunden:
nload -t 1000
Dieser Befehl setzt das Aktualisierungsintervall auf 1000 Millisekunden (1 Sekunde).
Praxisszenarien
-
Netzwerkprobleme beheben: Wenn Sie langsame Netzwerkleistung oder Verbindungsprobleme haben, kann nload helfen zu identifizieren, ob das Problem mit hoher Bandbreitennutzung oder Netzwerküberlastung zusammenhängt. Durch die Überwachung des Echtzeit-Verkehrs können Sie feststellen, ob es ungewöhnliche Spitzen oder anhaltende Phasen hoher Nutzung gibt, die das Problem verursachen könnten.
-
Kapazitätsplanung: nload kann verwendet werden, um Daten zur Netzwerknutzung über die Zeit zu sammeln, was bei der Kapazitätsplanung hilft. Durch die Analyse der durchschnittlichen und Spitzennutzung können Sie feststellen, ob Ihre aktuelle Netzwerkinfrastruktur ausreicht, um die Last zu bewältigen, oder ob Upgrades notwendig sind, um zukünftiges Wachstum zu ermöglichen.
-
Anomalien erkennen: Durch regelmäßige Überwachung des Netzwerkverkehrs mit nload können Sie eine Grundlinie für normales Netzwerkverhalten erstellen. Wenn Sie plötzliche Änderungen oder ungewöhnliche Muster im Verkehr bemerken, kann dies auf eine potenzielle Sicherheitsverletzung hinweisen, wie einen Denial-of-Service-Angriff oder unbefugte Zugriffsversuche.
Einschränkungen
Obwohl nload ein nützliches Tool für die Überwachung der gesamten Netzwerknutzung ist, liefert es keine detaillierten Informationen über die Netzwerkbandbreitennutzung durch einzelne Prozesse oder Prozess-IDs (PIDs). Wenn Sie die Netzwerknutzung auf Prozessebene analysieren müssen, sind Tools wie NetHogs oder iftop möglicherweise besser geeignet.
netstat
netstat ist ein in Linux-Systeme integriertes Netzwerk-Monitoring-Tool. Es liefert Informationen über eingehende und ausgehende Netzwerkverbindungen für TCP- und UDP-Protokolle. Das macht es nützlich für das Verstehen von Netzwerkverkehr und die Fehlersuche bei Verbindungsproblemen.
Die von netstat gesammelten Daten sind organisiert nach:
- Protokoll (TCP oder UDP)
- Lokale Adresse und Port
- Externe Adresse und Port
- Verbindungsstatus (z.B. ESTABLISHED, CLOSE_WAIT)
Dadurch können Sie sehen, welche Prozesse mit welchen entfernten Hosts verbunden sind und welchen Status diese Verbindungen haben.
Zusätzlich zu Verbindungsdaten liefert netstat Informationen über:
- Routing-Tabellen
- Netzwerkschnittstellen
- Netzwerkprotokoll-Statistiken
netstat bietet Optionen zum Filtern der Ausgabe und zur Anzeige relevanter Daten. Einige gängige Optionen:
-aum alle Sockets anzuzeigen-num Adressen anstelle von Hostnamen anzuzeigen-pum die PID und den Namen des Programms anzuzeigen, zu dem jeder Socket gehört-sum Statistiken nach Protokoll anzuzeigen-rum die Kernel-Routing-Tabellen anzuzeigen-ium Netzwerkschnittstellen-Statistiken anzuzeigen-cum die Ausgabe zu aktualisieren
Beispielbefehle
Um alle aktiven TCP-Verbindungen und den Prozess anzuzeigen, der jede Verbindung nutzt:
netstat -atp
Dies könnte ausgeben:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 localhost:mysql 0.0.0.0:* LISTEN 1234/mysqld
tcp 0 0 0.0.0.0:http 0.0.0.0:* LISTEN 5678/apache2
tcp 0 316 192.168.1.5:ssh 203.0.113.10:12345 ESTABLISHED 9012/sshd: user
Um Routing-Tabellen-Informationen anzuzeigen:
netstat -r
Beispielausgabe:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Um Netzwerkschnittstellen-Statistiken anzuzeigen:
netstat -i
Beispielausgabe:
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 12345678 0 1 2 8765432 0 0 0 BMRU
lo 65536 1234567 0 0 0 1234567 0 0 0 LRU
Durch die Kombination dieser Optionen können Sie netstat verwenden, um Daten über Ihre Netzwerknutzung zu sammeln und Probleme zu diagnostizieren.
Praxisanwendungen
Betrachten Sie einen Webserver, der beim Verbindungsaufbau von Clients zeitweise Timeouts hat. Sie könnten netstat verwenden, um:
-
Zu prüfen, ob der Webserver-Prozess auf dem richtigen Port lauscht:
netstat -anlp | grep :80Wenn Sie eine Zeile wie
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1234/apache2sehen, lauscht der Webserver auf Port 80. -
Nach vielen Verbindungen im TIME_WAIT-Status zu suchen, was auf einen falsch konfigurierten Load Balancer oder Clients hinweisen könnte, die sich nicht ordnungsgemäß trennen:
netstat -an | grep TIME_WAIT | wc -lWenn diese Zahl sehr hoch ist (z.B. Tausende), deutet dies darauf hin, dass Verbindungen nicht sauber geschlossen werden.
-
Die Rate neuer Verbindungen zu überwachen, um zu sehen, ob der Server überlastet ist:
netstat -an | grep SYN_RECV | wc -lViele Verbindungen im SYN_RECV-Status könnten bedeuten, dass der Server schneller Verbindungsanfragen erhält, als er sie verarbeiten kann.
| Szenario | Befehl | Interpretation |
|---|---|---|
| Webserver-Port prüfen | netstat -anlp | grep :80 |
Bestätigt, dass Webserver auf korrektem Port lauscht |
| TIME_WAIT-Verbindungen zählen | netstat -an | grep TIME_WAIT | wc -l |
Hohe Anzahl deutet auf nicht ordnungsgemäß schließende Verbindungen hin |
| Rate neuer Verbindungen überwachen | netstat -an | grep SYN_RECV | wc -l |
Hohe Anzahl könnte bedeuten, dass Server mit neuen Anfragen überlastet ist |
Während netstat detaillierte Daten liefert, zeigt es nur eine Momentaufnahme des aktuellen Netzwerkzustands. Für kontinuierliche Überwachung müssten Sie netstat regelmäßig ausführen oder ein Tool verwenden, das auf netstat aufbaut, wie netdata.
Auch wenn netstat mit der Option -p Prozessnamen und PIDs anzeigen kann, sind Tools wie nethogs und iftop besser geeignet, um die Bandbreitennutzung nach Prozess oder Verbindung über die Zeit zu überwachen.
netstat ist ein wichtiges Tool für jeden Linux-Systemadministrator oder Entwickler, der Netzwerkverhalten verstehen und debuggen muss. Seine Fähigkeit, detaillierte Verbindungsdaten, Routing-Tabellen und Schnittstellen-Statistiken anzuzeigen, macht es wertvoll für die Fehlersuche. Indem Sie wissen, wie man netstat verwendet, können Sie schnell Quellen von Netzwerkproblemen finden und Ihre Systeme reibungslos am Laufen halten.
iftop
iftop ist ein Netzwerk-Monitoring-Tool, das die Bandbreitennutzung auf einer Schnittstelle nach Verbindungen oder Hosts in Echtzeit anzeigt. Es lauscht auf den Netzwerkverkehr auf einer Schnittstelle und zeigt eine Tabelle der Bandbreitennutzung nach Host-Paaren an.
iftop Funktionen
- Echtzeit-Überwachung: iftop aktualisiert die Informationen alle 2, 10 oder 40 Sekunden und bietet Ihnen eine nahezu Echtzeit-Ansicht des Netzwerkverkehrs.
- Bandbreitennutzung nach Verbindung: iftop zeigt die Bandbreitennutzung jeder Verbindung an und hilft Ihnen zu erkennen, welche Verbindungen die meiste Bandbreite nutzen.
- Host-Auflösung: Standardmäßig löst iftop IP-Adressen in Hostnamen auf, wodurch es einfacher wird, die Hosts in jeder Verbindung zu identifizieren.
- Anzeigeoptionen: Sie können die iftop-Anzeige ändern, indem Sie Verbindungen nach Bandbreitennutzung sortieren, den Anzeigemodus ändern und das Bildschirm-Aktualisierungsintervall festlegen.
- Filterung: iftop ermöglicht es Ihnen, die Verbindungen nach Quell- oder Ziel-Host, Netzwerk oder Port zu filtern.
Beispiele
Beispiel 1: Eine Schnittstelle überwachen
Um die Bandbreitennutzung auf einer Schnittstelle wie eth0 zu überwachen, führen Sie aus:
sudo iftop -i eth0
Dieser Befehl zeigt die Echtzeit-Bandbreitennutzung für jede Verbindung auf der eth0-Schnittstelle an.
Beispiel 2: Verbindungen mit hoher Bandbreite finden
Um herauszufinden, welche Verbindungen die meiste Bandbreite nutzen:
- Führen Sie iftop aus:
sudo iftop - Drücken Sie
s, um die Verbindungen nach Bandbreitennutzung zu sortieren, wobei die höchste Nutzung oben steht. - Schauen Sie sich die Verbindungen am Anfang der Liste an, um zu sehen, welche Hosts beteiligt sind und wie viel Bandbreite sie nutzen.
Wenn Sie zum Beispiel eine Verbindung zwischen Ihrem Webserver und einem Client sehen, die viel Bandbreite nutzt, könnte das bedeuten, dass der Client eine große Datei herunterlädt oder es könnte ein Problem mit der Anwendung geben, das zu viel Datenübertragung verursacht.
Beispiel 3: iftop mit netstat verwenden
Um die Prozesse zu finden, die hohe Bandbreitennutzung verursachen:
- Führen Sie iftop aus und finden Sie die Verbindungen mit hoher Bandbreite wie in Beispiel 2 gezeigt.
- Notieren Sie sich die Quell- und Ziel-IP-Adressen und Ports für die Verbindungen, die Sie überprüfen möchten.
- Führen Sie in einem anderen Terminal
sudo netstat -anp | grep <ip>:<port>aus und ersetzen Sie<ip>und<port>mit den Werten aus Schritt 2. - Die Ausgabe zeigt die Prozess-ID (PID) und den Namen an, die für die Verbindung verantwortlich sind.
Wenn Sie beispielsweise feststellen, dass eine Verbindung zwischen Ihrem Server und einem entfernten Host viel Bandbreite nutzt, können Sie netstat verwenden, um herauszufinden, welcher Prozess auf Ihrem Server dafür verantwortlich ist. Das kann Ihnen helfen zu erkennen, ob die Bandbreitennutzung normal ist (z.B. ein Backup-Prozess oder eine große Dateiübertragung) oder ob sie auf ein Problem hinweist (z.B. Malware oder eine falsch konfigurierte Anwendung).
iftop Ausgabe
1.2Mb 2.4Mb 3.6Mb 4.8Mb 6.0Mb
└─────────────────┴───────────────┴───────────────┴───────────────┴───────────────
localhost => example.com 1.08Mb 1.08Mb 1.08Mb
<= 2.55Mb 2.55Mb 2.55Mb
localhost => example.org 0Kb 676Kb 442Kb
<= 68Kb 102Kb 68Kb
In dieser Ausgabe zeigt iftop die Bandbreitennutzung für jede Verbindung an, mit dem Quell-Host auf der linken und dem Ziel-Host auf der rechten Seite. Die Pfeile zeigen die Richtung des Verkehrs an, und die drei Spalten rechts zeigen die durchschnittliche Bandbreitennutzung über die letzten 2, 10 und 40 Sekunden.
iftop Ausgabe verstehen
| Quell-Host | Ziel-Host | Ausgehende Bandbreite (2s) | Ausgehende Bandbreite (10s) | Ausgehende Bandbreite (40s) | Eingehende Bandbreite (2s) | Eingehende Bandbreite (10s) | Eingehende Bandbreite (40s) |
|---|---|---|---|---|---|---|---|
| localhost | example.com | 1.08Mb | 1.08 Mb | 1.08 Mb | 2.55 Mb | 2.55 Mb | 2.55 Mb |
| localhost | example.org | 0 Kb | 676 Kb | 442 Kb | 68 Kb | 102 Kb | 68 Kb |
Die obige Tabelle zeigt, wie man die iftop-Ausgabe versteht. Für jede Verbindung können Sie die Quell- und Ziel-Hosts sowie die durchschnittliche ausgehende und eingehende Bandbreitennutzung über die letzten 2, 10 und 40 Sekunden sehen. Diese Informationen können Ihnen helfen zu erkennen, welche Verbindungen die meiste Bandbreite nutzen und in welche Richtung der Verkehr geht.
Einschränkungen
Obwohl iftop nützlich für die Überwachung der Netzwerkbandbreitennutzung nach Verbindung ist, hat es einige Einschränkungen:
- Benötigt Root-Rechte: iftop benötigt Root-Rechte, um auf den Netzwerkverkehr zu lauschen, was nicht in allen Umgebungen ideal sein mag.
- Zeigt keine Informationen auf Prozessebene: Im Gegensatz zu Tools wie NetHogs zeigt iftop nicht direkt an, welche Prozesse für den Netzwerkverkehr verantwortlich sind. Sie können jedoch iftop mit anderen Tools wie netstat verwenden, um diese Informationen zu erhalten, wie in Beispiel 3 gezeigt.
- Eingeschränkte Filteroptionen: Während iftop das Filtern nach Host, Netzwerk und Port erlaubt, bietet es keine erweiterten Filteroptionen wie das Filtern nach Protokoll oder Paketgröße.
speedometer
speedometer ist ein Kommandozeilen-Tool für die Überwachung des Netzwerkverkehrs auf Linux-Systemen. Wie nload zeigt speedometer die Netzwerknutzung pro Schnittstelle als einzelne Zahl an und kombiniert den Verkehr aller Verbindungen auf einer Schnittstelle. speedometer bietet jedoch mehr Optionen für seine Anzeige im Vergleich zu nload.
speedometer installieren
Um speedometer auf Debian-basierten Distributionen zu installieren, verwenden Sie apt:
sudo apt install speedometer
Auf Red Hat-basierten Distributionen ist speedometer im EPEL-Repository verfügbar:
sudo yum install epel-release
sudo yum install speedometer
speedometer verwenden
Um mit der Überwachung des Netzwerkverkehrs mit speedometer zu beginnen, verwenden Sie den Befehl:
speedometer -r eth0 -t eth0
Dieser Befehl zeigt zwei Diagramme an: eines für eingehenden (-r) Verkehr und eines für ausgehenden (-t) Verkehr auf der eth0-Schnittstelle.
Die Anzeige anpassen
speedometer ermöglicht es Ihnen, die Anzeige auf verschiedene Weise anzupassen:
| Option | Beschreibung |
|---|---|
-i <interval> |
Aktualisierungsintervall in Sekunden festlegen (Standard: 1) |
-s <scale> |
Skala für das Diagramm festlegen (Standard: auto) |
-c <width> |
Breite des Diagramms in Zeichen festlegen (Standard: 80) |
-m <mode> |
Anzeigemodus festlegen (Standard: graph) |
Um beispielsweise den eingehenden und ausgehenden Verkehr auf eth0 mit einem 2-Sekunden-Intervall und einer festen Skala von 10 Mbps anzuzeigen:
speedometer -r eth0 -t eth0 -i 2 -s 10M
Mehrere Schnittstellen anzeigen
Einer der Vorteile von speedometer gegenüber nload ist die Möglichkeit, mehrere Diagramme nebeneinander für verschiedene Schnittstellen anzuzeigen. Um den Verkehr auf mehreren Schnittstellen gleichzeitig zu überwachen, geben Sie jede Schnittstelle mit ihrer eigenen Option -r oder -t an:
speedometer -r eth0 -t eth0 -r wlan0 -t wlan0
Dieser Befehl zeigt vier Diagramme an: eingehenden und ausgehenden Verkehr für sowohl eth0 als auch wlan0.
Praxisbeispiele
Einen Webserver überwachen
Angenommen, Sie haben einen Webserver mit zwei Netzwerkschnittstellen: eth0 für eingehenden Verkehr und eth1 für ausgehenden Verkehr. Um die Bandbreitennutzung auf beiden Schnittstellen zu überwachen, können Sie den folgenden Befehl verwenden:
speedometer -r eth0 -t eth1 -i 5 -s 100M
Dies zeigt zwei Diagramme an, eines für eingehenden Verkehr auf eth0 und eines für ausgehenden Verkehr auf eth1, aktualisiert alle 5 Sekunden mit einer festen Skala von 100 Mbps. Diese Einstellung ermöglicht es Ihnen, schnell zu sehen, ob der Server seine Bandbreitengrenzen erreicht, und bei Bedarf Maßnahmen zu ergreifen.
Kabelgebundene und drahtlose Schnittstellen vergleichen
Wenn Sie einen Laptop mit sowohl kabelgebundener (eth0) als auch drahtloser (wlan0) Schnittstelle haben, können Sie speedometer verwenden, um deren Leistung zu vergleichen:
speedometer -r eth0 -t eth0 -r wlan0 -t wlan0 -i 2 -s auto
Dieser Befehl zeigt vier Diagramme an, die den eingehenden und ausgehenden Verkehr für beide Schnittstellen zeigen, aktualisiert alle 2 Sekunden mit automatischer Skala. Durch den Vergleich der Diagramme können Sie sehen, welche Schnittstelle schneller und stabiler ist, was Ihnen hilft zu entscheiden, welche Sie für bandbreitenintensive Aufgaben verwenden sollten.
Anwendungsfälle
-
Server-Bandbreite überwachen: Wenn Sie speedometer auf einem Linux-Server ausführen, können Sie schnell die aktuelle Netzwerknutzung sehen und feststellen, ob Schnittstellen ihre Grenzen erreichen. Das kann Ihnen bei Entscheidungen über die Aufrüstung der Netzwerkinfrastruktur oder die Optimierung von Anwendungen helfen.
-
Netzwerkprobleme beheben: Wenn Benutzer langsame Netzwerkleistung melden, kann die Ausführung von speedometer Ihnen zeigen, ob Schnittstellen mit Verkehr überlastet sind. Sie können dann weiter untersuchen, um die Ursache der hohen Nutzung zu finden (z.B. ein Backup-Job, eine fehlerhafte Anwendung oder eine Sicherheitsverletzung).
-
Schnittstellenleistung vergleichen: Durch die Anzeige von Diagrammen für mehrere Netzwerkschnittstellen nebeneinander macht es speedometer einfach, deren relative Leistung zu vergleichen. Dies kann nützlich sein, wenn Sie den Verkehr über mehrere Verbindungen verteilen oder Probleme mit einer bestimmten Schnittstelle diagnostizieren.
Während speedometer eine anpassbarere Anzeige als nload bietet, fehlen ihm noch einige Funktionen, die in anderen Tools zu finden sind. Wie nload unterteilt speedometer den Verkehr nicht nach Verbindung oder Prozess, daher ist es weniger nützlich für das Auffinden bestimmter Quellen der Netzwerkaktivität. Tools wie iftop und nethogs sind für diese Anwendungsfälle besser geeignet.
NetFlow
NetFlow ist ein von Cisco Systems entwickeltes Netzwerkprotokoll, das die Erfassung von Verkehrs-Metadaten ermöglicht, während diese durch ein Gerät oder eine Schnittstelle fließen. Es liefert Einblicke in Netzwerkverkehrsmuster und hilft Administratoren, die Netzwerkleistung zu überwachen, Sicherheitsbedrohungen zu identifizieren und die Kapazität zu planen.
Während NetFlow-Daten über ein Terminal angezeigt werden können, kann es schwierig sein, die rohen Informationen zu analysieren und zu interpretieren. Hier kommen Netzwerk-Monitoring-Tools wie NetFlow-Analyzer ins Spiel. Diese Tools können die von NetFlow gesammelten Metadaten erfassen und in einem Format präsentieren, wie Diagrammen, Charts und Tabellen.
NetFlow-Analyzer bieten Einblick in den Netzwerkverkehr mit Statistiken über Spitzen-Traffic, Verkehrs-Stöße, Anwendungs- und Schnittstellenverkehr sowie bandbreitenfressende Verbindungen. Diese Informationen können Administratoren helfen, Probleme wie Netzwerküberlastung, Bandbreiten-Engpässe und ungewöhnliche Verkehrsmuster zu identifizieren und zu beheben, die auf eine Sicherheitsverletzung hinweisen könnten.
Einer der Vorteile von NetFlow ist seine Fähigkeit, Flows basierend auf verschiedenen Technologien zu analysieren, darunter:
- J-Flow (Juniper Networks)
- sFlow (sampling-basierter Flow)
- IPFIX (Internet Protocol Flow Information Export)
- NetStream (Huawei)
- AppFlow (Citrix)
- CFlow (Alcatel-Lucent)
Diese Flexibilität ermöglicht es NetFlow, in Netzwerkumgebungen mit Geräten mehrerer Hersteller verwendet zu werden.
Praxisszenarien
-
Top-Nutzer identifizieren: Durch die Verwendung von NetFlow zur Überwachung von Verkehrsflüssen können Administratoren die Top-Nutzer im Netzwerk identifizieren - die Hosts, Anwendungen oder Benutzer, die die meiste Bandbreite nutzen. Diese Informationen können bei der Kapazitätsplanung, der Behebung von Leistungsproblemen und der Durchsetzung von Netzwerknutzungsrichtlinien helfen.
Beispielsweise bemerkt ein Administrator an einer Universität, dass das Netzwerk während der Stoßzeiten langsam ist. Durch die Analyse von NetFlow-Daten stellt er fest, dass eine kleine Gruppe von Studenten eine große Menge an Bandbreite durch das Streaming von hochauflösenden Videos nutzt. Der Administrator kann dann mit den Studenten zusammenarbeiten, um andere Lösungen zu finden, wie die Nutzung eines lokalen Medienservers oder die Begrenzung der Videoqualität während der Stoßzeiten.
-
DDoS-Angriffe erkennen: NetFlow kann helfen, Distributed-Denial-of-Service (DDoS)-Angriffe zu erkennen, indem ungewöhnliche Verkehrs-Spitzen aus mehreren Quellen identifiziert werden. Durch das Setzen von Schwellenwerten und Alarmen in einem NetFlow-Analyzer können Administratoren schnell auf Angriffe reagieren und Maßnahmen ergreifen, um deren Auswirkungen zu verringern.
Beispielsweise hat ein Unternehmen einen plötzlichen Verkehrsanstieg, der seine Webserver überlastet. Durch die Analyse von NetFlow-Daten identifiziert das Sicherheitsteam eine große Anzahl eingehender Flows von einer Reihe von IP-Adressen, was auf einen DDoS-Angriff hinweist. Sie implementieren schnell Verkehrsfilterregeln, um die schädlichen Flows zu blockieren und den normalen Betrieb wiederherzustellen.
-
Anwendungsleistung optimieren: NetFlow kann Einblicke in Anwendungsverkehrsmuster liefern und Administratoren helfen zu verstehen, wie Bandbreite von verschiedenen Anwendungen genutzt wird. Diese Informationen können verwendet werden, um wichtige Anwendungen zu priorisieren, Quality of Service (QoS)-Einstellungen anzupassen und sicherzustellen, dass Anwendungen genügend Bandbreite haben, um gut zu funktionieren.
Beispielsweise verlässt sich ein Callcenter auf ein Voice-over-IP (VoIP)-System, um Kundenanrufe zu bearbeiten. Durch die Überwachung von NetFlow-Daten bemerkt das IT-Team, dass VoIP-Verkehr mit weniger wichtigem Verkehr konkurriert, was zu schlechter Anrufqualität führt. Sie verwenden diese Informationen, um QoS-Einstellungen anzupassen und VoIP-Verkehr gegenüber anderen Verkehrstypen zu priorisieren, um eine bessere Benutzererfahrung zu gewährleisten.
-
Kapazitätsplanung: Durch die Analyse von NetFlow-Daten über die Zeit können Administratoren Trends in der Netzwerknutzung erkennen und für zukünftige Kapazitätsanforderungen planen. Wenn beispielsweise der Verkehr zu einer bestimmten Anwendung oder einem Server kontinuierlich wächst, könnte zusätzliche Bandbreite oder Hardware-Ressourcen erforderlich sein, um Leistungsengpässe zu vermeiden.
Beispielsweise überwacht ein E-Commerce-Unternehmen seinen Netzwerkverkehr mit NetFlow und bemerkt einen stetigen Anstieg des Verkehrs zu seinen Webservern über mehrere Monate. Durch die Extrapolation dieses Trends können sie abschätzen, wann sie mehr Serverkapazität benötigen, um die erhöhte Last zu bewältigen, und entsprechend budgetieren.





