Cómo solucionar problemas de interfaces Ethernet en un servidor Ubuntu usando ethtool
Si una tarjeta de interfaz de red (NIC) está causando problemas en su servidor Ubuntu, consulte Cómo usar el comando ethtool para solucionar el problema.
Ubuntu Server es una plataforma poderosa, confiable y flexible: las cosas que puede hacer con el sistema operativo son infinitas. Por ejemplo, si desea sintonizar y ajustar su red, Ubuntu Server proporciona muchas herramientas. Una de esas herramientas de trabajo en red es ethtool.
Con esta herramienta de línea de comandos, puede consultar o controlar los controladores de red y la configuración de hardware, y solucionar problemas de hardware de red problemático. Por ejemplo, puede cambiar lo siguiente y más:
- Autonegociación
- velocidad del dispositivo
- mostrar todas las configuraciones de NIC
- Mostrar configuración de negociación automática, RX y TX
- Mostrar estadísticas de red para una NIC específica
- Solucionar problemas de conexiones Ethernet
- Parpadea el LED para una NIC específica
Exploremos cómo usar esta herramienta imprescindible. notas: ethtool no es una herramienta nueva. Además, ethtool no es específico de Ubuntu, está disponible en la mayoría de las distribuciones de Linux.
Ver también: Política de monitoreo del sistema (Tech Pro Research)
instalar ethtool
Redes: Informes de lectura obligada
Lo más probable es que su versión de Ubuntu Server incluya ethtool. Para confirmar, abra una ventana de terminal y emita el comando which ethtool, e inmediatamente sabrá si la herramienta está instalada.
Si ethtool no está instalado, siga los pasos a continuación.
- Abra una ventana de terminal.
- Ejecute el comando sudo apt-get update.
- Instale la aplicación con el comando sudo apt-get install ethtool.
- Permita que la instalación se complete.
usar ethtool
Necesita saber el nombre del dispositivo ethernet que usará. Para averiguarlo, emita el comando ifconfig. El nombre del dispositivo aparecerá en la columna de la izquierda (Figura A).
Figura A
Una vez que tenga el nombre del dispositivo, emita el comando sudo ethtool DEVNAME (DEVNAME es el nombre real del dispositivo). Debería ver una lista completa de las configuraciones aplicadas a su dispositivo (Figura B).
Figura B
Si desea obtener estadísticas sobre la NIC, emita el comando:
sudo ethtool -S NOMBREDEV
El resultado de este comando incluirá lo siguiente y más:
- Rx_paquetes
- Tx_paquetes
- Rx_bytes
- Tx_bytes
- Rx_Broadcast
- tx_transmisión
- multidifusión
- colisión
- Rx_longitud_errores
- Rx_over_errors
- Rx_frame_errors
- Rx_no_buffer_count
El uso de los comandos anteriores es una buena manera de solucionar problemas específicos de NIC. Si encuentra que ethtool en la tarjeta informa errores específicos, hay un problema. El error específico informado lo ayudará a comprender dónde continuar con la solución de problemas.
Suponga que desea mostrar la negociación automática y la información de RX/TX sobre una tarjeta. Para hacer esto, emita el comando:
sudo ethtool -a NOMBREDEV
El comando anterior mostrará la configuración para estas tres opciones específicas (Figura C).
Figura C
A continuación se muestran dos ejemplos de cómo cambiar estos ajustes. notas: Debe utilizar ifdown antes de realizar cualquier cambio. Para hacer esto, emita el comando sudo ifdown DEVNAME (DEVNAME es el nombre real del dispositivo). Después de realizar los cambios, use el comando sudo ifup DEVNAME para restaurar el dispositivo.
Deshabilite la negociación automática y habilite semidúplex (DEVNAME es el nombre real del dispositivo):
sudo ethtool -s DEVNAME apagado semiautomático dúplex
Deshabilite la negociación automática, habilite semidúplex y establezca la velocidad en 1000 Mb/s:
sudo ethtool -s eth1 dúplex velocidad completa 1000 apagado automático
Diríjase a una NIC específica
Aquí hay un truco muy útil que ofrece ethtool: tiene un servidor con varias NIC y una de ellas falla; no está seguro de cuál es y no desea entrar en modo aleatorio en su servidor y comenzar a desconectarse. NIC. Puede usar ethtool para hacer parpadear los LED de la NIC para determinar qué NIC debe solucionar. Suponga que desea hacer parpadear el LED en el dispositivo ethernet enp0s3 durante 15 segundos; el comando correspondiente es:
sudo ethtool -p enpS03 15
El LED comenzará a parpadear para que sepa con qué tarjeta está tratando.
Pruebe sus NIC
El comando ethtool proporciona algunas pruebas útiles que se pueden ejecutar en la NIC:
- En línea: prueba nvram y prueba de enlace
- Fuera de línea: registros de prueba, memoria, loopback, interrupciones
Realicemos una prueba en línea en la NIC. Este comando se parece a:
sudo ethtool -t DEVNAME en línea
ethtool parece bloquearse cuando ejecuta este comando. Permita que el comando complete sus pruebas, devolverá el resultado (Figura D).
Figura D
Si una prueba falla, ethtool informará qué parte de la prueba falló. notas: Algunos dispositivos Ethernet no admiten la prueba fuera de línea; si su NIC falla en la prueba fuera de línea, puede significar simplemente que no es compatible con esta función.
más herramientas
Solo hemos arañado la superficie de lo que hace el comando ethtool. Para obtener más información sobre la herramienta, emita man ethtool para ver cada una de las opciones disponibles para usted.