Quiero verificar si un ethX especificado está físicamente arriba o abajo. ¿Cómo hago eso con la línea de comando?
                    
                        linux
                                networking
                                ethernet
                                
                    
                    
                        Jader Dias
fuente
                
                
            fuente

ethtool [interface]la última línea muestra lo que quieres:
# ethtool eth0 Configuraciones para eth0: Puertos compatibles: [TP] Modos de enlace admitidos: 10baseT / Half 10baseT / Full 100baseT / Half 100baseT / Full 1000baseT / Full Soporta negociación automática: sí Modos de enlace anunciados: 10baseT / Half 10baseT / Full 100baseT / Half 100baseT / Full 1000baseT / Full Negociación automática anunciada: sí Velocidad: 1000 Mb / s Duplex: completo Puerto: par trenzado PHYAD: 0 Transceptor: interno Negociación automática: en Soporta Wake-on: g Activación: d Nivel de mensaje actual: 0x00000037 (55) Enlace detectado: sífuente
es otro. Buen viejo
o
también te dirá si la interfaz está activa. NOTA: Tenga cuidado con estos métodos, ya que pueden mostrar información desactualizada sobre el estado del enlace.
fuente
Link detected: nolugar deLink detected: yes, y ip link show se muestra en<NO-CARRIER,BROADCAST,MULTICAST,UP>lugar de<BROADCAST,MULTICAST,UP,LOWER_UP>, pero ifconfig -a se muestraUP BROADCAST MULTICAST MTU:1500 Metric:1, que es lo mismo que cuando se conecta la NIC.deberías ver todos los cambios de estado
fuente
eth0dispositivo, pero no en eleth2dispositivo.También puede usar mii-tool para ver si el enlace está activo y verificar la velocidad negociada.
fuente
# mii-tool eth0: negotiated 1000baseT-FD flow-control, link okPuede tener todos los detalles con el siguiente comando
Y si solo quieres ver el estado del enlace, da el siguiente comando
fuente
Si su sistema está usando
ifplugd(por ejemplo, en una Raspberry Pi con Raspbian), puede usar la herramienta de estado asociadaifplugstatuspara obtener el estado del enlace de todas las interfaces:o una interfaz específica (por ejemplo, eth0):
fuente
netplugd es un servicio que puede ejecutar programas cuando se conecta un cable o se desconecta un cable. Entonces, la línea de comando sería grep / var / log / messages o dmesg para la salida de netplugd.
fuente
Para agregar rápidamente a la respuesta de @ goo , debe interpretar el
ip linko de laip link show INTERFACEsiguiente manera.Este es un puerto que está administrativamente activo, pero físicamente inactivo:
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000En otras palabras, lo
UPque puede ver indica que el sistema está configurado para intentar usar la NIC para la conexión en red. ElNO-CARRIERaquí te dice cuál es el problema que impedía la creación de redes de trabajo es.Este es un puerto que está administrativamente inactivo (su capa física está 'activa', técnicamente, es una VM):
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000Finalmente, este puerto funciona normalmente:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq state UP mode DEFAULT group default qlen 1000Es administrativamente
UP,LOWER_UPindica que la capa física está funcionando (es decir, hay un operador), y el segundoUPconfirma (en efecto) que la capa IP está activa .fuente