Saltar la navegación

ethtool

El comando ethtool (paquete ethtool) se utiliza para consultar y modificar los parámetros de las interfaces de red ethernet.

Para conocer las características de un tarjeta de red (velocidad, duplex, wake-on, estado del enlace, etc.):

# ethtool eth0
Settings for eth0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: Unknown
    Supports Wake-on: umbg
    Wake-on: d
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: yes

Se puede ver que la autonegociación está activa, lo que significa que la tarjeta negociará con el otro extremo, normalmente un switch, la velocidad y el duplex. En este caso, la velocidad se ha establecido en 1000Mb/s en modo full duplex. Para cambiar estos parámetros se debe usar la opción -s, así por ejemplo para desactivar la autonegociación, forzar una velocidad de 100Mbps y full duplex:

# ifdown eth0
# ethtool -s eth0 autoneg off  speed 100 duplex full
# ifup eth0

Es importante tener en cuenta que estos cambios no son persistentes, por lo que se perderán cuando se reinicie el sistema; para conseguir la persistencia en Debian, debemos poner los comandos anteriores en el fichero /etc/rc.local, el cual se ejecuta siempre al arrancar el sistema operativo y después de que todos los servicios hayan sido cargados.

Para conocer el driver de la tarjeta de red está la opción -i:

# ethtool -i eth0
driver: e1000
version: 7.3.21-k8-NAPI
firmware-version: N/A
bus-info: 0000:00:03.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: no

Para mostrar una estadística del tráfico de la tarjeta de red usaremos la opción -S:

# ethtool -S eth0
NIC statistics:
     rx_packets: 2072
     tx_packets: 278
     rx_bytes: 743240
     tx_bytes: 24123
     rx_broadcast: 913
     tx_broadcast: 21
     rx_multicast: 879
     tx_multicast: 65
     rx_errors: 0
     tx_errors: 0
     tx_dropped: 0
     multicast: 879
     collisions: 0
...

Otro uso de ethtool es el de identificar el puerto físico (RJ45) de una tarjeta ethernet en particular cuando tenemos montadas varias en el servidor, y no las tenemos etiquetadas. Podemos utilizar la opción -p para que el LED de puerto físico parpadee un número de segundos:

# ethtool -p eth0 4

También, ethtool, da la posibilidad de consultar la dirección MAC de la interfaz de red, usaremos para ello la opción -P:

# ethtool -P eth0
Permanent address: a8:70:e4:00:d4:2e

Este comando tiene muchas posibilidades, y es conveniente consultar su página en el manual del sistema.

# man ethtool

 

 

Licencia: licencia de software libre GPL