Cambiar negociación en placa de red / change duplex or auto negotiation on network card


No les ha pasado que algún equipo no se comunica bien con un switch ? Con la placa de red correctamente instalada, sin problemas de drivers, podemos tener grandes dolores de cabeza que se originan en la incompatibilidad de determinados hardware’s. Por ejemplo, un switch muy rápido con una placa de red lenta o que tiene problemas de clock.

En estas ocasiones, habiendo descartado problemas de configuración, tal vez podamos solucionar el problema modificando la manera de negociar de la placa de red.

Dos parámetros que podemos tocar son: la manera de comunicarse (duplex, half duplex, simplex) o la velocidad (10Mb, 100Mb ó 1000Mb).

Aclarando:

Dúplex: cuando la comunicación es bidireccional y en forma simultánea.

Semi Duplex o Half Duplex: cuando la comunicación es bidireccional, pero no en simultáneo.

Simplex: la comunicación es en un solo sentido.

Ahora bien, como vemos que configuración tenemos en una placa ?

[root@pc013 ~]# ethtool eth1
Settings for eth1:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
    Supports auto-negotiation: Yes
    Advertised link modes:  100baseT/Half 
    Advertised pause frame use: No
    Advertised auto-negotiation: No
    Speed: 100Mb/s
    Duplex: Half
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: off
    MDI-X: Unknown
    Supports Wake-on: pg
    Wake-on: g
    Current message level: 0x00000037 (55)
                   drv probe link ifdown ifup
    Link detected: yes

o bien,

[root@pc013 ~]# mii-tool eth1
eth1: 100 Mbit, half duplex, link ok

Cómo modificamos por ejemplo la velocidad a 100Mb y el modo de negociación a half duplex ?

# ethtool -s eth1 speed 100 duplex half autoneg off

o bien,

# mii-tool eth0 -F 100baseTx-HD

Cómo hacemos para que el cambio persista luego de un booteo ?

Editamos el archivo /etc/sysconfig/network-scripts/ifcfg-eth1 y agregamos la siguiente línea:

ETHTOOL_OPTS="speed 100 duplex half autoneg off"

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s