Vérifier si un câble réseau est branché sous Linux en ligne de commande

Examinons les exemples suivants, où eth2 n'a physiquement pas de câble branché, tandis que eth0 est correctement connecté :


# ethtool eth2
Paramètres pour eth2 :
        Ports supportés : [ TP ]
        Modes de liaison supportés :   10baseT/Half 10baseT/Full 
                                      100baseT/Half 100baseT/Full 
                                      1000baseT/Half 1000baseT/Full 
        Prise en charge des trames de pause : Non
        Prise en charge de l'auto-négociation : Oui
        Modes de liaison annoncés :  10baseT/Half 10baseT/Full 
                                      100baseT/Half 100baseT/Full 
                                      1000baseT/Half 1000baseT/Full 
        Trames de pause annoncées : Symétrique
        Auto-négociation annoncée : Oui
        Vitesse : Inconnue !
        Duplex : Inconnu ! (255)
        Port : Paire torsadée
        PHYAD : 3
        Transceiver : interne
        Auto-negotiation : activé
        MDI-X : Inconnu
        Prise en charge Wake-on : g
        Wake-on : d
        Niveau de message actuel : 0x000000ff (255)
                               pilote sonde minuterie liaison ifdown ifup rx_err tx_err
        <strong>Link detected: no</strong>

# ethtool eth0
Paramètres pour eth0 :
        Ports supportés : [ TP ]
        Modes de liaison supportés :   10baseT/Half 10baseT/Full 
                                      100baseT/Half 100baseT/Full 
                                      1000baseT/Half 1000baseT/Full 
        Prise en charge des trames de pause : Non
        Prise en charge de l'auto-négociation : Oui
        Modes de liaison annoncés :  10baseT/Half 10baseT/Full 
                                      100baseT/Half 100baseT/Full 
                                      1000baseT/Half 1000baseT/Full 
        Trames de pause annoncées : Symétrique
        Auto-négociation annoncée : Oui
        Modes de liaison annoncés par le partenaire :  100baseT/Full 
                                                      1000baseT/Full 
        Trames de pause annoncées par le partenaire : Émission uniquement
        Auto-négociation annoncée par le partenaire : Oui
        Vitesse: 1000Mb/s
        Duplex: Complet
        Port : Paire torsadée
        PHYAD : 1
        Transceiver : interne
        Auto-negotiation : activé
        MDI-X : activé
        Prise en charge Wake-on : g
        Wake-on : d
        Niveau de message actuel : 0x000000ff (255)
                               pilote sonde minuterie liaison ifdown ifup rx_err tx_err
        <strong>Link detected: yes</strong>

Une autre alternative consiste à utiliser la commande ip link (plus moderne que l'ancienne commande ifconfig) :

  1. Connectez-vous à votre serveur Linux et identifiez les interfaces réseau disponibles :

# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
   link/ether 00:1c:23:45:67:89 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
   link/ether 00:1c:23:45:67:8a brd ff:ff:ff:ff:ff:ff
   
  1. Dans cet exemple, l'interface eth0 est dans l'état UP (câble branché), tandis que eth1 est dans l'état DOWN (câble débranché).
  2. Branchez le câble sur eth1 et exécutez à nouveeau la commande :

# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
   link/ether 00:1c:23:45:67:89 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
   link/ether 00:1c:23:45:67:8a brd ff:ff:ff:ff:ff:ff
   

Après branchement du câble, l'interface eth1 passe à l'état UP, indiquant que la connexion réseau est établie.

Vous pouvez également utiliser la commande mii-tool pour vérifier l'état de la liaison :


# mii-tool eth0
eth0: negotiated 1000baseT-FD flow-control, link ok
# mii-tool eth1
eth1: no link

Étiquettes: ethtool ip link mii-tool Diagnostic réseau Linux

Publié le 18 juillet à 18h31