Ethtool ist ein Netzwerkdienstprogramm unter Linux. Es wird verwendet, um die Ethernet-Geräteparameter anzuzeigen und zu ändern. In diesem Artikel erfahren Sie, wie Sie den ethtool-Befehl unter Linux verwenden.
Die Konfiguration Ihrer Ethernet-Karte ermöglicht Ihrem Computer eine effektive Kommunikation über das Netzwerk. Ethtool bietet viele Informationen zu Ethernet-Geräten, die mit Ihrem Linux-System verbunden sind. Sie können die Parameter der Ethernet-Karte nach Bedarf ändern, einschließlich der automatischen Aushandlung , Geschwindigkeit , Duplex und Wake-on-LAN .
Die folgenden Informationen helfen Ihnen zu verstehen, wie die Ethernet-Karte funktioniert.
- Automatische Verhandlung: Es ist ein Mechanismus, der es einem Gerät ermöglicht, automatisch die beste Netzwerkgeschwindigkeit und den besten Betriebsmodus zu wählen.
- Geschwindigkeit: Standardmäßig wird die maximale Geschwindigkeit verwendet und Sie können sie nach Bedarf ändern.
- Halbduplex: Ermöglicht einem Gerät, Pakete gleichzeitig zu senden oder zu empfangen.
- Vollduplex: Ermöglicht einem Gerät das gleichzeitige Senden und Empfangen von Paketen.
- Wake-on-LAN (WoL) :Industriestandardprotokoll, mit dem ein Computer durch eine Netzwerknachricht eingeschaltet oder geweckt werden kann.
- Link-Erkennung: Zeigt den Status der Netzwerkschnittstellenkarte an. Wenn „nein“ angezeigt wird, versuchen Sie, die Schnittstelle neu zu starten. Wenn die Verbindungserkennung immer noch „nein“ sagt, überprüfen Sie, ob es Probleme mit den Kabeln gibt, die zwischen dem Switch und dem System angeschlossen sind.
Überprüfen der verfügbaren Netzwerkschnittstellenkarte (NIC) unter Linux
Zunächst müssen Sie den Namen Ihrer Netzwerkschnittstellenkarte kennen. Um den Namen Ihrer Netzwerkschnittstellenkarte zu finden, führen Sie den folgenden Befehl vom Befehlsterminal aus:
ifconfig
enp5s0: flags=4163 mtu 1500
inet 192.168.0.101 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::65f2:72ae:2878:8a76 prefixlen 64 scopeid 0x20
inet6 fd37:45bb:20bd::45e prefixlen 128 scopeid 0x0
inet6 fd37:45bb:20bd:0:da60:e2eb:96ad:ec26 prefixlen 64 scopeid 0x0
ether 2c:5a:3f:c4:02:8b txqueuelen 1000 (Ethernet)
RX packets 1006202 bytes 940298098 (896.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 550734 bytes 123076237 (117.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xfc200000-fc2fffff
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 5546564 bytes 324011516 (309.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5546564 bytes 324011516 (309.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Wie Sie sehen können, lautet der Name des Geräts im obigen Beispiel enp5s0
.
Überprüfen von Informationen zu Netzwerkschnittstellenkarten (NIC) unter Linux mit ethtool
Sobald Sie den Ethernet-Schnittstellennamen haben, können Sie die Details einfach mit dem ethtool
überprüfen Befehl.
Wenn Sie ethtool
ausführen Befehl mit einem Gerätenamen, es zeigt Ethernet-Karteneigenschaften wie Geschwindigkeit, Aktivierung, Duplex und den Verbindungserkennungsstatus an.
sudo ethtool enp5s0
Settings for enp5s0:
Supported ports: [ ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
So überprüfen Sie die Ethernet-Kartentreiber- und Firmware-Version unter Linux mit ethtool
Mit dem ethtool
können Sie Treiberversion, Firmwareversion und Busdetails überprüfen Befehl mit dem -i
Option wie unten gezeigt.
sudo ethtool -i enp5s0
driver: igc
version: 5.9.14-arch1-1
firmware-version:
expansion-rom-version:
bus-info: 0000:05:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes
So ändern Sie die Ethernetkarteneinstellungen unter Linux mit ethtool
Das -s
Option kann verwendet werden, um die aktuellen Einstellungen zu ändern, indem die Werte für Geschwindigkeit definiert werden , Duplex , und autoneg im folgenden Format:
sudo ethtool -s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off]
Zum Beispiel, um die Geschwindigkeit auf 100Mb/s
einzustellen , den Duplexmodus auf full
und die Autonegotiation auf on
der Befehl wäre:
sudo ethtool -s enp5s0 speed 100 duplex full autoneg on
Außerdem können Sie jede Option einzeln ändern:
sudo ethtool -s enp5s0 speed 100
sudo ethtool -s enp5s0 duplex full
sudo ethtool -s enp5s0 autoneg on
Hinweis:Sobald Sie die Geschwindigkeit ändern, während der Adapter online ist, geht er automatisch offline und Sie müssen ihn mit ifup
wieder online schalten Befehl.
sudo ifup enp5s0
Bitte beachten Sie, dass, wenn Sie Ethernet-Kartenparameter mit dem ethtool
geändert haben , wird alles nach dem nächsten Neustart verschwinden.
So behalten Sie ethtool-Einstellungen über einen Neustart hinweg bei
Allerdings nach einem Systemneustart die Änderungen, die Sie mit ethtool
vorgenommen haben wird standardmäßig zurückgesetzt.
Um benutzerdefinierte Einstellungen dauerhaft zu machen, müssen Sie Ihren Wert in der Netzwerkkonfigurationsdatei aktualisieren. Abhängig von Ihrer Linux-Distribution müssen Sie diesen Wert möglicherweise auf die richtige Datei aktualisieren.
Für RedHat/CentOS-basierte Systeme ändern Sie /etc/sysconfig/network-scripts/ifcfg-eth-id
Datei und fügen Sie eine Zeile wie unten gezeigt ein:
ETHTOOL_OPTS="speed 100 duplex full autoneg on"
Für auf Debian/Ubuntu basierende Systeme müssen Sie /etc/network/interfaces
ändern Datei und fügen Sie Ihre Änderungen wie unten gezeigt hinzu:
post-up ethtool -s enp5s0 speed 100 duplex full autoneg on
Fazit
Sie haben festgestellt, dass dies nur eine grundlegende Einführung in ethtool ist, da es viele andere Optionen bietet, die oben nicht erklärt wurden. In Kombination mit anderen Tools dieser Art kann dies zu einem tödlichen Tool in der Trickkiste eines Systemadministrators werden.