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.