GNU/Linux >> Linux Esercitazione >  >> Linux

Come manipolare la scheda Ethernet su Linux con il comando ethtool

Ethtool è un'utilità di rete su Linux. Viene utilizzato per visualizzare e modificare i parametri del dispositivo ethernet. In questo articolo imparerai come utilizzare il comando ethtool su Linux.

La configurazione della scheda Ethernet consente al computer di comunicare in modo efficace sulla rete. Ethtool fornisce molte informazioni sui dispositivi Ethernet collegati al tuo sistema Linux. Puoi modificare i parametri della scheda Ethernet in base alle esigenze, inclusa la negoziazione automatica , Velocità , Duplex e Wake-on LAN .

Le seguenti informazioni ti aiuteranno a capire come funziona la scheda Ethernet.

  • Negoziazione automatica: È un meccanismo che consente a un dispositivo di scegliere automaticamente la migliore velocità di rete e modalità di funzionamento.
  • Velocità: Per impostazione predefinita utilizza la velocità massima e puoi modificarla in base alle tue esigenze.
  • Mezza duplex: Consente a un dispositivo di inviare o ricevere pacchetti alla volta.
  • Full duplex: Consente a un dispositivo di inviare e ricevere pacchetti contemporaneamente.
  • Wake-on-LAN (WoL) :protocollo standard del settore che consente di accendere o riattivare un computer da un messaggio di rete.
  • Rilevamento link:  Mostra lo stato della scheda di interfaccia di rete. Se mostra "no", prova a riavviare l'interfaccia. Se il rilevamento del collegamento dice ancora "no", controlla se ci sono problemi con i cavi collegati tra lo switch e il sistema.

Come controllare la scheda di interfaccia di rete (NIC) disponibile su Linux

Per prima cosa devi conoscere il nome della tua scheda di interfaccia di rete. Per trovare il nome della tua scheda di interfaccia di rete, esegui il seguente comando dal terminale di comando:

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

Come puoi vedere, nell'esempio sopra, il nome del dispositivo è enp5s0 .

Come controllare le informazioni sulla scheda di interfaccia di rete (NIC) su Linux con ethtool

Una volta ottenuto il nome dell'interfaccia Ethernet, puoi facilmente verificarne i dettagli utilizzando ethtool comando.

Quando esegui ethtool comando con il nome di un dispositivo, mostra le proprietà della scheda ethernet come velocità, riattivazione, duplex e lo stato di rilevamento del collegamento.

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

Come controllare il driver della scheda Ethernet e la versione del firmware su Linux con ethtool

Puoi controllare la versione del driver, la versione del firmware e i dettagli del bus usando ethtool comando con il -i opzione come mostrato di seguito.

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

Come modificare le impostazioni della scheda ethernet su Linux con ethtool

Il -s L'opzione può essere utilizzata per modificare le impostazioni correnti definendo i valori per la velocità , duplex e autonegazione nel seguente formato:

sudo ethtool -s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off]

Ad esempio, per impostare la velocità a 100Mb/s , la modalità duplex su full e la negoziazione automatica su on il comando sarebbe:

sudo ethtool -s enp5s0 speed 100 duplex full autoneg on

Inoltre, puoi modificare ciascuna opzione individualmente:

sudo ethtool -s enp5s0 speed 100
sudo ethtool -s enp5s0 duplex full
sudo ethtool -s enp5s0 autoneg on

Nota:una volta modificata la velocità quando l'adattatore è online, si disattiva automaticamente e devi riportarlo online utilizzando ifup comando.

sudo ifup enp5s0

Tieni presente che se hai modificato i parametri di una scheda ethernet utilizzando ethtool , scomparirà tutto dopo il prossimo riavvio.

Come mantenere le impostazioni di ethtool durante il riavvio

Tuttavia, dopo che un sistema ha riavviato le modifiche apportate con ethtool verrà ripristinato per impostazione predefinita.

Per rendere permanenti le impostazioni personalizzate, è necessario aggiornare il valore nel file di configurazione di rete. A seconda della tua distribuzione Linux potrebbe essere necessario aggiornare questo valore al file corretto.

Per i sistemi basati su RedHat/CentOS, modificare il /etc/sysconfig/network-scripts/ifcfg-eth-id file e includi una riga come mostrato di seguito:

ETHTOOL_OPTS="speed 100 duplex full autoneg on"

Per i sistemi basati su Debian/Ubuntu devi modificare /etc/network/interfaces file e aggiungi le modifiche come mostrato di seguito:

post-up ethtool -s enp5s0 speed 100 duplex full autoneg on

Conclusione

Hai capito che questa è solo un'introduzione di base a ethtool, perché fornisce molte altre opzioni non spiegate sopra. Combinato con altri strumenti simili, questo può diventare uno strumento mortale nella borsa dei trucchi di un amministratore di sistema.


Linux
  1. Come modificare la velocità e il duplex della scheda Ethernet in Linux con il comando Ethtool

  2. Comando wc Linux con esempi

  3. Come trovare file in Linux con il comando Trova

  4. Come utilizzare il comando ethtool con esempi

  5. Come trovare file con il comando fd in Linux

Come utilizzare il comando Linux rm con esempi

Come trovare file con il comando fd in Linux

Come scaricare file con il comando Curl in Linux

Come scaricare file con il comando Wget in Linux

Come controllare la versione del sistema operativo con la riga di comando di Linux

Come elencare i filesystem in Linux con lfs