GNU/Linux >> Tutoriales Linux >  >> Linux

El enlace NIC de eth0 está inactivo en Linux

Este error me ha ocurrido varias veces en los últimos años. La red de repente se congela y luego regresa después de unos segundos, otras veces se congela y la única forma de trabajar de forma remota en el servidor es reiniciar la caja. Este es el mensaje de error exacto que recibo:kernel:e1000e:eth0 NIC Link is Down

Mientras inspeccionaba los registros, se veía así en /var/log/messages

May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
May 29 09:10:35 server kernel: e1000e: eth0 NIC Link is Down

Después de reiniciar el servidor, la conectividad volvió a la normalidad; sin embargo, esta no es una solución permanente para los servidores de producción. Estas son las 4 mejores soluciones que he usado en esta situación para solucionar este error "eth0 NIC Link is Down" en servidores Linux.

Una de las primeras cosas que debe hacer es verificar si la cantidad de errores aumenta al ejecutar el comando ifconfig, esa es una forma de detectar posibles problemas con el controlador nic; de lo contrario, podría estar relacionado con un problema de hardware (NIC, cable, puerto).

¿Cómo puedo resolver este error e1000e:eth0 NIC Link is Down?

Hay algunas razones por las que esto podría estar sucediendo. He visto que esto sucede en servidores CentOS y Ubuntu, y siempre está relacionado con:

1. Cables ethernet defectuosos

Esta es una de las soluciones más fáciles, simplemente reemplace los cables de Ethernet y comience a monitorear nuevamente. A veces, los malos cables de Ethernet pueden causar este tipo de problema. Se tarda alrededor de 1 minuto en reemplazar los cables de red antiguos por otros nuevos.

2. Controladores de red e1000e defectuosos

El controlador e1000e a veces falla en CentOS Linux, asegúrese de tener los controladores nic e1000e más recientes. Puede actualizar sus controladores siguiendo estos pasos:

  • Para Ubuntu:pruebe este práctico script.
  • Para CentOS/RHEL: pruebe esta guía de Intel, también puede probar este pequeño script de Ioflood.com que funciona en CentOS 6 y 7:
# Copyright 2014 Input Output Flood LLC
# IOFLOOD.com -- We Love Servers
# This script may be freely distributed so long as this copyright notice remains intact
#
# this is a pre-requisite for our nifty nic upgrade script
 yum -y install pciutils
 
 # update this network driver for the appropriate RHEL release and the appropriate driver (e1000e and igb supported)
 NIC=`lspci -nv | egrep "e1000e$|igb$" | sed 's/\tKernel driver in use: //g' | sed 's/\tKernel modules: //g' | uniq`
 if grep -q -i "release 5" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-5-5.el5.elrepo.noarch.rpm"
 elif grep -q -i "release 6" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm"
   if [[ "$NIC" == "e1000e" ]]
   then
     grubby --update-kernel=ALL --args="pcie_aspm=off e1000e.IntMode=1,1 e1000e.InterruptThrottleRate=10000,10000 acpi=ht"
   fi
 elif grep -q -i "release 7" /etc/redhat-release
 then
   RPM="http://elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm"
   if [[ "$NIC" == "e1000e" ]]
   then
     grubby --update-kernel=ALL --args="pcie_aspm=off e1000e.IntMode=1,1 e1000e.InterruptThrottleRate=10000,10000 acpi=ht"
   fi
 fi
 if [[ -n "$RPM" && -n "$NIC" ]] 
 then
   rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
   rpm -Uvh $RPM
   yum -y install kmod-$NIC
 fi

3. NIC fallida

Cambie la NIC por una nueva. Si la NIC está incluida en la placa base, tendrá que ejecutar un cambio completo de placa base, lo que puede demorar hasta 30 minutos después de que su sitio web esté inactivo.

4. Puerto de conmutador defectuoso

Lo último que debe intentar es cambiar el puerto del conmutador al que está conectado este servidor.

Última sugerencia:

El comando ethtool puede ayudarlo a asegurarse de que la configuración de red de Linux sea la misma que la que configuró en su conmutador; puede ser otra razón para tener este tipo de errores de red.

5. Actualice su BIOS y habilite el modo ASPM

Si está deshabilitado, el modo ASPM puede ser la causa de este problema. Aparte de eso, asegúrese de estar ejecutando su última versión de BIOS y actualícela si no es así.

6. Desactivar control de flujo

Tener el control de flujo habilitado provocó este extraño error de red varias veces. Intente deshabilitarlo y siga monitoreando sus registros para ver si esa fue la causa del problema:

ethtool -A eth0 rx off tx off

Ahora, compruebe si esto se ha aplicado o no:

[[email protected]:~]ethtool -a eth0

Pause parameters for eth0:

Autonegotiate:  on
RX:             off
TX:             off

Si ve apagado, entonces el control de flujo está deshabilitado.

7. Reemplace su placa base con la NIC integrada y la CPU

Una vez vi que un E3-1230v2 tenía problemas constantes, la única forma de solucionarlo era migrar los discos a un nuevo E3-1231v3 con una placa base y un NIC integrado diferentes.

¿Y usted? ¿Pudiste arreglar este error e1000e:eth0 NIC Link is Down?

El enlace NIC eth0 está inactivo en Linux was last modified:enero 5th, 2020 by Esteban Borges
Linux
  1. Linux – ¿Reenvío de IP del kernel?

  2. Linux:¿hacer un duplicado de una ruta en Unix?

  3. Mi sitio web DotNetNuke está caído

  4. cp:directorio omitido – error al copiar un directorio en Linux

  5. Error de ldconfig:no es un enlace simbólico

Comando Ln:Cómo crear enlaces simbólicos en Linux

Comando Ln en Linux (Crear enlaces simbólicos)

Guía para agregar enlaces simbólicos de Linux

Error crítico de meditación de Virtualbox Guru en Linux

Conceptos básicos de administrador de sistemas de Linux:iniciar NIC en el arranque

Solución de problemas del error "Certificado TLS inaceptable" en Linux