Una velocidad de transferencia limitada a unos 90 Mbps en una tarjeta de red Gigabit no se debe necesariamente al servidor, a Samba ni al cortafuegos. Es posible que el enlace Ethernet simplemente haya negociado una conexión de 100 Mbps. Un cable defectuoso, un puerto de conmutador limitado o una configuración dúplex inconsistente son suficientes para limitar el ancho de banda de toda la conexión.
herramienta etónica Lee los parámetros que expone el controlador de red: velocidad, modo dúplex, negociación automática, presencia de enlace y contadores de hardware. Comienzo con esta información antes de modificar la configuración IP o realizar una prueba de velocidad. La mayoría de los controles que se muestran a continuación son de solo lectura.

Identifique la interfaz Ethernet que se está utilizando realmente.
No asuma que la interfaz se llama eth0Una máquina moderna a menudo usa un nombre como enp1s0, eno1 O ens18Comience mostrando las interfaces y la ruta utilizada para salir:
ip - enlace breve
ip route get 1.1.1.1
El segundo comando indica en particular desarrollador Y srcEn este ejemplo, desarrollador enp1s0 designa la interfaz que se controlará con herramienta etónicael tutorial sobre Dirección IP en Linux detalla los estados ARRIBA, BAJAR_ARRIBA y las direcciones asociadas.
Descarte las interfaces de bucle invertido, los puentes Docker, los túneles VPN y las interfaces virtuales si su falla involucra un cable físico. En una máquina virtual, herramienta etónica A veces, solo describe la tarjeta virtual. La negociación real se lleva a cabo entonces en el host o en el conmutador.
Instala ethtool sin tocar la red.
El paquete suele tener el mismo nombre que el comando. Su instalación no modifica la configuración de la tarjeta.
sudo apt install ethtool
sudo dnf install ethtool
sudo pacman -S ethtool
A continuación, compruebe la versión y la ayuda disponible en su distribución:
ethtool --versión
ethtool --help
herramienta etónica Depende del controlador y del hardware. Una opción que aparece en la ayuda puede no estar disponible en una tarjeta virtual, un adaptador USB o un controlador que no exponga la función.
Velocidad de lectura, dúplex, negociación automática y estado del enlace
Ejecute el comando en la interfaz identificada. Los privilegios elevados le permiten obtener toda la información proporcionada por el controlador:
sudo ethtool enp1s0
Para un diagnóstico inicial, céntrate en cuatro líneas:
- Velocidad : velocidad actualmente negociada, por ejemplo
1000 Mb/s. - Dúplex :
Llenoes el valor esperado en un enlace Ethernet moderno. - Autonegociación : indica si la tarjeta está negociando capacidades con el puerto remoto.
- Enlace detectado : confirma la presencia del portador físico.
Puedes extraer estas líneas para una lectura rápida:
sudo ethtool enp1s0 | grep -E 'Speed|Duplex|Auto-negotiation|Link detected'
también mira Modos de enlace admitidos, Modos de enlace anunciados Y Enlaces de socios anuncian modos de enlaceLa tarjeta de red, su configuración y el puerto remoto deben compartir al menos un modo. Si la tarjeta anuncia velocidades Gigabit, pero el proveedor solo ofrece 100 Mbps, la velocidad negociada se mantendrá en 100 Mbps.
¿Qué debes comprobar cuando aparece «No se detectó ningún enlace»?
Enlace detectado: no Priorice el problema sobre la dirección IP, el DNS y los puertos TCP. Primero, verifique el estado tal como lo ven el kernel y el operador:
ip link show dev enp1s0
gato /sys/class/net/enp1s0/operstate
cat /sys/class/net/enp1s0/carrier
un valor cero En transportador Esto significa que el kernel no detecta una conexión física. Pruebe con otro cable que funcione correctamente y, a continuación, con otro puerto del conmutador. Además, verifique que el puerto no esté deshabilitado administrativamente y que el adaptador USB o la tarjeta de red reciban alimentación.
En una máquina con varios puertos idénticos, la opción de identificación puede hacer que el LED del puerto parpadee durante diez segundos si el controlador lo admite:
sudo ethtool -p enp1s0 10
Por último, compruebe los mensajes del kernel relacionados con la interfaz. Estos pueden indicar una pérdida de enlace repetida, la falta de firmware o un reinicio del controlador:
sudo dmesg -T | grep -Ei 'enp1s0|enlace|firmware|tiempo de espera'
sudo journalctl -k -b | grep -Ei 'enp1s0|enlace|firmware|tiempo de espera'
la guía para Mensajes de dmesg y del kernel ayuda a volver a colocar estos errores en el orden de inicio.
Una tarjeta Gigabit negociada en 100 Mb/s Merece la pena realizar una revisión física antes de cualquier optimización de software. Gigabit Ethernet utiliza los cuatro pares del cable. Un par dañado o mal conectado podría permitir que el enlace funcione, pero solo a 100 Mbps. Un puerto de conmutador Fast Ethernet produce el mismo resultado.
un dúplex Medio Esto también resulta sospechoso en una red moderna. Compare la configuración de ambos extremos. Si uno de ellos se fuerza la negociación automática y el otro se deja en modo automático, esto puede provocar errores, retransmisiones y un rendimiento inconsistente.
Identifique el controlador y, a continuación, compare los contadores de la interfaz con las estadísticas del hardware:
sudo ethtool -i enp1s0
ip -s enlace mostrar dispositivo enp1s0
sudo ethtool -S enp1s0 | grep -Ei 'err|drop|crc|miss|fault|timeout'
Los nombres devueltos por ethtool -S Estos errores varían según el controlador. Un aumento continuo de errores CRC durante una transferencia apunta a un problema en el cable, conector, módulo o puerto. Que un contador se detenga no demuestra una falla real: tome una lectura, genere algo de tráfico y luego compare nuevamente.
No fuerce la velocidad durante una sesión SSH.
la forma ethtool -s Modifica la configuración del enlace. La renegociación puede desconectar inmediatamente la sesión SSH. Úsela solo de forma remota si dispone de una consola KVM, IPMI u otro acceso de respaldo.
Si ha confirmado que la negociación automática se deshabilitó por error, este comando la vuelve a habilitar en la interfaz:
sudo ethtool -s enp1s0 autoneg activado
El siguiente comando requiere una nueva negociación y también puede romper el enlace:
sudo ethtool -r enp1s0
No lo fuerces a ciegas. velocidad 1000, dúplex completo Y autonegativo desactivadoEl puerto remoto debe estar configurado de forma compatible, y algunos estándares requieren negociación automática. Anote la salida inicial, modifique un solo parámetro y, a continuación, verifique la conexión desde la consola.
Un ajuste aplicado con ethtool -s El cambio puede desaparecer tras reiniciar el sistema o restablecer la interfaz. La persistencia depende de NetworkManager, systemd-networkd o la configuración de la distribución. Solo haga el cambio permanente después de identificar la causa y validar la prueba. En Ubuntu, consulte el artículo dedicado a… netplan Explica cómo preparar una reversión antes de modificar la red.
Pruebe la velocidad solo cuando la conexión sea estable.
herramienta etónica Muestra la velocidad del enlace, no el ancho de banda utilizable de una aplicación. Una negociación full-duplex de 1 Gbps no garantiza que Samba, NFS o una descarga alcancen esa velocidad. Simplemente permite superar una limitación física evidente.
Tras la corrección, verifique que los contadores de errores permanezcan estables y que la ruta siga utilizando la interfaz correcta:
sudo ethtool enp1s0
ip -s enlace mostrar dispositivo enp1s0
ip route get 1.1.1.1
Luego puedes medir la red local con iperf3 entre dos máquinas que usted controla. Inicie el servidor en una máquina y luego el cliente en la otra:
iperf3 -s
iperf3 -c 192.0.2.50
Si la conexión es estable, se negocia a la velocidad esperada y no hay un aumento de errores, proceda con la ruta, el firewall, el almacenamiento y el servicio de aplicaciones. Para verificar qué está escuchando realmente en la máquina, utilice la guía en ss y puertos abiertos en Linux.
Allá Página de manual de ethtool detalla todas las opciones. sitio web oficial del proyecto Cabe señalar, sin embargo, que su manejo siempre depende del piloto y del equipo.