Introduzione
La configurazione della tua scheda Ethernet definisce l'efficacia della comunicazione dei tuoi server.
È necessario capire come Autonegoziazione, Velocità e Duplex le impostazioni influiscono sul trasferimento dei dati per mantenere la connettività di rete con il minimo sforzo.
Questo articolo ti mostrerà come modificare le impostazioni di velocità, duplex e negoziazione automatica in Linux con i comandi ethtool.
Prerequisiti
- Riga di comando/finestra del terminale
- Un account utente con root o sudo privilegi
- L' Ethtool strumento di configurazione installato
Half Duplex, Full Duplex e negoziazione automatica
Mezzo duplex la modalità consente a un dispositivo di inviare o ricevere pacchetti a turno. Un dispositivo impostato su questa modalità non può eseguire entrambe le azioni contemporaneamente.
Quando la modalità di un dispositivo è full duplex può anche inviare e ricevere pacchetti contemporaneamente.
negoziazione automatica è un meccanismo mediante il quale un dispositivo sceglie automaticamente la modalità di trasmissione più performante in base alle caratteristiche delle sue controparti. Si consiglia di mantenere abilitata la negoziazione automatica in quanto consente ai dispositivi di scegliere il mezzo più efficiente per il trasferimento dei dati.
Cos'è una mancata corrispondenza duplex?
Quando un dispositivo, con la negoziazione automatica abilitata, si connette a un dispositivo che non utilizza questo metodo di segnalazione, il processo non funziona. L'estremità della connessione con un'autonegoziazione attiva è ancora in grado di rilevare la velocità dell'altra estremità, ma non è in grado di rilevare correttamente la modalità duplex. Di norma, l'estremità di negoziazione automatica della connessione utilizzerà half-duplex mentre l'altra estremità potrebbe essere full-duplex. Questa situazione è considerata una mancata corrispondenza duplex .
Una mancata corrispondenza duplex non interrompe completamente la comunicazione. Pacchetti singoli e piccole quantità di dati non causano problemi immediati. Tuttavia, quando una grande quantità di dati viene inviata da entrambe le estremità, la velocità diminuisce notevolmente. La connessione funziona, ma le prestazioni sono ridotte poiché la velocità di trasferimento dei dati è asimmetrica e potrebbe causare la perdita di pacchetti.
Come utilizzare il comando Ethtool per configurare le impostazioni NIC
Ethtool è un comando di configurazione della scheda di interfaccia di rete che consente di recuperare informazioni e modificare le impostazioni della scheda di rete. Queste impostazioni includono Velocità , Duplex , negoziazione automatica e molti altri parametri.
Per procedere, 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
Il comando funziona sia con Linux Centos 7 che con Ubuntu. L'uscita fornisce il nome della scheda di interfaccia del dispositivo. Per saperne di più su questo comando, leggi la nostra guida Come installare e utilizzare ifconfig.
Nell'esempio sopra, il nome del dispositivo è enp0s3.
Ora che hai determinato il nome del dispositivo, controlla le impostazioni correnti di velocità, negoziazione automatica e modalità duplex con il comando:ethtool devicename
.
Nel nostro esempio specifico il comando è:
ethtool enp0s3
L'output mostra che la velocità attuale è 1000 Mb/s, che il duplex è su "Pieno" e che la negoziazione automatica è attiva.
Comando Ethtool per modificare le impostazioni dell'adattatore Ethernet
Il ethtool -s
il comando può essere utilizzato per modificare le impostazioni correnti definendo i valori per "speed", "duplex" e "autoneg" 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 1000 Mb/s, la modalità duplex su 'pieno' e l'autonegoziazione su 'on' il comando sarebbe:
sudo ethtool -s enp0s3 speed 1000 duplex full autoneg on
Il ethtool [device_name]
comando è necessario per confermare che le modifiche sono state applicate.
Variabile Ethtool_opt per impostare in modo permanente le impostazioni dei comandi Ethtool
Modifiche apportate con Ethtool vengono ripristinati per impostazione predefinita dopo il riavvio di un sistema.
Per applicare impostazioni personalizzate ogni volta che un sistema si avvia, modifica il file per l'interfaccia del dispositivo:
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
Aggiungi i valori desiderati come riga alla fine del file utilizzando la seguente sintassi:
ETHTOOL_OPTS="speed [100|1000|10000] duplex [half|full] autoneg [on|off]”
Ad esempio:
ETHTOOL_OPTS="speed 1000 duplex full autoneg on"
Salva le modifiche ed esci dal file.
Ora le modifiche vengono applicate dopo ogni riavvio e sono permanenti a meno che il file non venga modificato di nuovo.