GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So manipulieren Sie die Ethernet-Karte unter Linux mit dem ethtool-Befehl

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.


Linux
  1. So ändern Sie Geschwindigkeit und Duplex der Ethernet-Karte in Linux mit dem Ethtool-Befehl

  2. wc Linux-Befehl mit Beispielen

  3. So finden Sie Dateien in Linux mit dem Find-Befehl

  4. Verwendung des ethtool-Befehls mit Beispielen

  5. So finden Sie Dateien mit dem fd-Befehl in Linux

So verwenden Sie den Linux-rm-Befehl mit Beispielen

So finden Sie Dateien mit dem fd-Befehl in Linux

So laden Sie Dateien mit dem Curl-Befehl unter Linux herunter

So laden Sie Dateien mit dem Wget-Befehl unter Linux herunter

So überprüfen Sie die Betriebssystemversion mit der Linux-Befehlszeile

So listen Sie Dateisysteme in Linux mit lfs auf