Einführung
In diesem Lab lernen Sie, wie Sie die Geschwindigkeit einer Netzwerkschnittstelle in Linux überprüfen können. Wir werden drei gängige Methoden zur Erreichung dieses Ziels untersuchen.
Zunächst verwenden Sie den Befehl ethtool, ein leistungsstarkes Hilfsprogramm zum Abfragen und Steuern von Netzwerkeinstellungen. Anschließend lernen Sie, wie Sie Ihre Netzwerkschnittstelle mithilfe des Befehls ip link show identifizieren können. Abschließend zeigen wir, wie Sie die Geschwindigkeit der Netzwerkschnittstelle überprüfen können, indem Sie den Inhalt des Verzeichnisses /sys/class/net untersuchen.
Geschwindigkeit mit ethtool prüfen
In diesem Schritt lernen wir, wie Sie die Geschwindigkeit Ihrer Netzwerkschnittstelle mithilfe des Befehls ethtool überprüfen können. ethtool ist ein Befehlszeilen-Hilfsprogramm zum Abfragen und Steuern von Netzwerktreibern und Hardwareeinstellungen.
Zunächst identifizieren wir Ihre Netzwerkschnittstelle. In den meisten Linux-Umgebungen trägt die primäre Netzwerkschnittstelle oft den Namen eth0 oder ähnliche Namen wie enpXsY. Sie können den Namen normalerweise anhand der Ausgabe des Befehls ip link show finden, den wir im nächsten Schritt untersuchen werden. Vorerst gehen wir davon aus, dass Ihre Schnittstelle eth0 heißt.
Um die Geschwindigkeit der Schnittstelle eth0 zu überprüfen, öffnen Sie Ihr Terminal und geben Sie den folgenden Befehl ein:
sudo ethtool eth0
Drücken Sie die Eingabetaste.
Sie sehen eine Ausgabe ähnlich der folgenden:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
Suchen Sie nach der Zeile, die mit Speed: beginnt. Diese Zeile gibt Ihnen die aktuelle Geschwindigkeit Ihrer Netzwerkverbindung an. Im obigen Beispiel beträgt die Geschwindigkeit 1000Mb/s.
Wenn Sie eine Fehlermeldung wie command not found erhalten, bedeutet dies, dass ethtool nicht installiert ist. Sie können es mit dem Paketmanager installieren:
sudo apt update
sudo apt install ethtool -y
Nach der Installation versuchen Sie erneut den Befehl sudo ethtool eth0.
Denken Sie daran, eth0 durch den tatsächlichen Namen Ihrer Netzwerkschnittstelle zu ersetzen, wenn dieser unterschiedlich ist.
Klicken Sie auf Weiter, um mit dem nächsten Schritt fortzufahren.
Schnittstelle mit 'ip link show' überprüfen
Im vorherigen Schritt haben wir ethtool verwendet, um die Netzwerkgeschwindigkeit zu überprüfen, wobei wir davon ausgegangen haben, dass der Schnittstellenname eth0 ist. Allerdings können die Namen der Netzwerkschnittstellen variieren. In diesem Schritt verwenden wir den Befehl ip link show, um alle Netzwerkschnittstellen aufzulisten und ihren Status zu überprüfen.
Der Befehl ip ist ein leistungsstarkes Hilfsprogramm für die Netzwerkkonfiguration in Linux. Das link-Objekt wird verwendet, um Netzwerkschnittstellen zu verwalten, und die Aktion show zeigt Informationen über sie an.
Öffnen Sie Ihr Terminal und geben Sie den folgenden Befehl ein:
ip link show
Drücken Sie die Eingabetaste.
Sie sehen eine Ausgabe ähnlich der folgenden, die Ihre Netzwerkschnittstellen auflistet:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
In dieser Ausgabe:
loist die Loopback-Schnittstelle, die für die Kommunikation innerhalb desselben Computers verwendet wird.eth0ist wahrscheinlich Ihre primäre Netzwerkschnittstelle, die mit dem externen Netzwerk verbunden ist. Der Name kann in anderen Umgebungen unterschiedlich sein (z. B.enp3s0).<BROADCAST,MULTICAST,UP,LOWER_UP>gibt den Zustand und die Fähigkeiten der Schnittstelle an.UPbedeutet, dass die Schnittstelle aktiv ist.mtuist die maximale Übertragungseinheit (Maximum Transmission Unit).state UPbestätigt, dass die Schnittstelle betriebsbereit ist.
Identifizieren Sie den Namen Ihrer primären Netzwerkschnittstelle aus der Ausgabe. Es ist normalerweise die Schnittstelle, die UP ist und nicht lo. In unserer LabEx-Umgebung ist es eth0.
Jetzt wissen Sie, wie Sie den richtigen Namen der Netzwerkschnittstelle finden können, was für die Verwendung von Befehlen wie ethtool von entscheidender Bedeutung ist.
Klicken Sie auf Weiter, um fortzufahren.
Geschwindigkeit in /sys/class/net prüfen
Neben der Verwendung von Befehlen wie ethtool können Sie auch Informationen über Netzwerkschnittstellen direkt im Linux-Dateisystem, genauer im Verzeichnis /sys, finden. Das /sys-Dateisystem bietet eine Schnittstelle zu Kerneldatenstrukturen.
Informationen zu Netzwerkschnittstellen befinden sich normalerweise unter /sys/class/net/. In diesem Verzeichnis finden Sie Unterverzeichnisse, die nach jeder Netzwerkschnittstelle auf Ihrem System benannt sind (z. B. eth0, lo).
Um die Geschwindigkeitsinformationen für Ihre primäre Schnittstelle (die wir im vorherigen Schritt als eth0 identifiziert haben) zu finden, können Sie in der Datei /sys/class/net/eth0/speed nachschauen.
Öffnen Sie Ihr Terminal und verwenden Sie den Befehl cat, um den Inhalt dieser Datei anzuzeigen:
cat /sys/class/net/eth0/speed
Drücken Sie die Eingabetaste.
Als Ausgabe sollten Sie eine einzelne Zahl sehen, die die Linkgeschwindigkeit in Megabit pro Sekunde (Mb/s) darstellt.
1000
Diese Ausgabe bestätigt, dass die Geschwindigkeit der Schnittstelle eth0 1000 Mb/s beträgt, was mit den Informationen übereinstimmt, die wir mit ethtool gesehen haben.
Diese Methode zur Überprüfung der Geschwindigkeit durch das Lesen einer Datei in /sys ist nützlich, da keine zusätzlichen Tools wie ethtool installiert werden müssen. Es ist eine direkte Möglichkeit, auf Informationen zuzugreifen, die der Kernel zur Verfügung stellt.
Denken Sie daran, dass der Pfad /sys/class/net/eth0/speed davon ausgeht, dass Ihre Netzwerkschnittstelle eth0 heißt. Wenn Ihre Schnittstelle einen anderen Namen hat, ersetzen Sie eth0 durch den richtigen Namen.
Sie haben jetzt drei verschiedene Methoden gelernt, um Informationen über Ihre Netzwerkschnittstellen und deren Geschwindigkeit zu erhalten!
Klicken Sie auf Weiter, um dieses Lab abzuschließen.
Zusammenfassung
In diesem Lab haben wir gelernt, wie man die Geschwindigkeit einer Netzwerkschnittstelle in Linux auf drei verschiedene Arten überprüft. Zunächst haben wir den Befehl ethtool verwendet, ein leistungsstarkes Hilfsprogramm zum Abfragen und Steuern von Netzwerkeinstellungen, um direkt die Schnittstellengeschwindigkeit anzuzeigen. Anschließend haben wir den Befehl ip link show untersucht, um den Namen der Netzwerkschnittstelle zu identifizieren, was für die Verwendung von Tools wie ethtool von entscheidender Bedeutung ist. Schließlich haben wir entdeckt, wie man das Verzeichnis /sys/class/net, einen Teil des sysfs virtuellen Dateisystems, untersucht, um die Schnittstellengeschwindigkeitsinformationen zu finden, indem man den Inhalt der speed-Datei im Verzeichnis der Schnittstelle prüft. Diese Methoden bieten verschiedene Möglichkeiten, auf die Netzwerkschnittstellengeschwindigkeit zuzugreifen und sie zu überprüfen, und ermöglichen es, je nach Situation und verfügbaren Tools flexibel zu handeln.



