Solution 1 :
$ ethtool <eth?>
Par exemple :
$ ethtool eth0
fournit :
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000001 (1)
Link detected: yes
Solution 2 :
Vérifiez /sys/class/net/eth0/operstate et d'autres fichiers dans ce répertoire.
Autant que je sache, cela est spécifique à Linux 2.6+, mais il fournit une interface propre au pilote du noyau.
Documentation complète pour cette partie du sys système de fichiers peut être trouvé ici :
https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
Solution 3 :
ethtool [interface]
la dernière ligne montre ce que vous voulez :
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Current message level: 0x00000037 (55)
Link detected: yes
Solution 4 :
ip link show
en est une autre. Bon vieux
ifconfig dev_name
ou
ifconfig -a
vous dira également si l'interface est en place. REMARQUE : Soyez prudent avec ces méthodes car elles peuvent afficher des informations obsolètes concernant l'état du lien.
Solution 5 :
dmesg | grep eth
vous devriez voir tous les changements de statut