LINUX

Cómo configurar la velocidad de Ethernet/modo dúplex en Linux

De forma predeterminada, las NIC utilizadas en Linux negocian su velocidad y dúplex con el conmutador mediante el intercambio de pulsos de enlace rápido (FLP). Cuando se fuerzan la velocidad y el dúplex, estos FLP no se envían. Esto da como resultado errores cuando la NIC está en modo de negociación automática y no detecta ningún FLP. Luego establece el dúplex en semidúplex y la velocidad en el valor más bajo permitido. Para evitar esto, es mejor forzar el puerto del conmutador y la NIC del servidor a la misma velocidad y valores de dúplex o negociación automática.

Cambiar la velocidad y el dúplex de la NIC

Para las plataformas Linux, nada supera a una NIC perfectamente compatible. La mayoría de los proveedores de Linux tienen una lista de hardware compatible en sus sitios web. Las distribuciones de Linux negocian automáticamente la velocidad y el dúplex de la NIC con el conmutador al que está conectado. Debido a que existen diferencias en la implementación del protocolo, no es suficiente configurar un puerto de switch para negociar automáticamente la velocidad y el modo dúplex. Sin embargo, la NIC con negociación fallida funcionará incluso si se muestran muchos errores con el comando ifconfig –a.

Según el tipo de tarjeta Ethernet instalada en su sistema, puede usar mii-tool o ethtool para configurar la velocidad y el modo dúplex.

1) Usando la herramienta mii

Mii-tool es la herramienta original utilizada para configurar la velocidad y el dúplex de la NIC. Esta herramienta ha sido reemplazada por el comando ethtool, pero algunas NIC más antiguas aún admiten mii-tool. Para que muestre un breve informe, simplemente ejecute el comando sin argumentos:

[root@localhost ~]# mii-tool
SIOCGMIIPHY on 'eth0' failed: Operation not supported
eth1: 100 Mbit, half duplex, link ok

Las NIC que no son compatibles con mii-tool aún funcionan, pero para configurar la velocidad y el dúplex, debe consultar la guía del fabricante.

Puede encontrar más detalles usando el comando mii-tool con la opción –v:

# mii-tool –v
eth1: negotiated 100baseTx-FD, link ok
product info: vendor 00:10:18, model 33 rev 2
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control

Puede forzar la NIC a una velocidad y dúplex específicos mediante la opción –F, pero tenga en cuenta que hacerlo puede provocar la pérdida de conectividad con el servidor si la velocidad y el dúplex deseados no coinciden con su conmutador.

# mii-tool –F 100baseTx-FD eth0

Sin embargo, estos cambios no son permanentes y se pierden durante el reinicio del sistema. Para que estas configuraciones sean permanentes entre apagados, debe colocar el comando en el archivo /etc/rc.local para permitir que el comando se ejecute durante el proceso de arranque.

2) Usando Ethtool

El comando ethtool ha reemplazado con éxito al comando mii-tool. Usando este comando, puede encontrar todos los detalles sobre la interfaz dada como argumento.

# ethtool eth0

Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: No
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: g
Wake-on: g
Current message level: 0x00000007 (7)
Link detected: yes

En el resultado anterior, podemos ver que la interfaz eth0 no realiza negociación automática y está configurada a una velocidad de 100 Mbps, dúplex completo. También se proporciona una lista de modos admitidos en la parte superior de la salida.
La velocidad y el dúplex de la NIC se pueden configurar como:

# ethtool –s eth0 speed 100 duplex full

# ethtool –s eth0 speed 10 duplex half

Para tener estas configuraciones en el próximo inicio, debe configurarlas con la variable ETHTOOL_OPTS de la siguiente manera:

# Vi /etc/sysconfig/network-scripts/ifconfig-eth0

DEVICE=eth0
IPADDR=192.168.100.11
NETMASK=255.255.255.0
BOOTPROTO=static
ONBOOT=yes
ETHTOOL_OPTS="speed 100 duplex full autoneg off"

Puede probar la configuración cerrando la interfaz y luego habilitándola nuevamente con los comandos ifup y ifdown.

También puede cambiar la velocidad y el modo dúplex usando la opción –s de la siguiente manera:

# ethtool –s eth0 speed 100 duplex full autoneg on

Si tiene alguna pregunta o idea para compartir sobre este tema, utilice el formulario de comentarios.

Lea también:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar