GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trouver les interfaces réseau disponibles sous Linux

Nous pouvons configurer les interfaces réseau sous Linux pendant le temps d'installation. Mais certains d'entre vous préféreront peut-être le faire après l'installation ou modifier les paramètres existants. Comme vous le savez déjà, vous devez d'abord savoir combien d'interfaces sont disponibles sur le système afin de configurer les paramètres réseau à partir de la ligne de commande. Ce didacticiel détaillé aborde toutes les manières possibles de répertorier et de trouver les interfaces réseau disponibles sur les systèmes d'exploitation Linux et Unix.

Rechercher les interfaces réseau disponibles sous Linux

Nous pouvons trouver les cartes réseau disponibles de plusieurs manières. Dans ce guide, nous discuterons de 10 façons de répertorier les cartes d'interface réseau sous Linux.

1. Lister les interfaces réseau à l'aide de la commande ifconfig

La méthode la plus couramment utilisée pour trouver les détails de l'interface réseau en utilisant ifconfig commande. Je pense que certains utilisateurs de Linux pourraient encore l'utiliser.

$ ifconfig -a

Exemple de résultat :

enp5s0 : flags=4098 mtu 1500ether 24:b6:fd:37:8b:29 txqueuelen 1000 (Ethernet)paquets RX 0 octets 0 (0.0 B)erreurs RX 0 abandonnés 0 dépassements 0 trame 0paquets TX 0 octets 0 (0.0 B) Erreurs de transmission 0 abandonnées 0 dépassements 0 porteuse 0 collisions 0lo : flags=73 mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10loop txqueuelen 1000 (Local Loopback)RX packets 171420 bytes 303980988 (289.8 MiB)RX errors 0 abandonné 0 dépassements 0 trame 0TX paquets 171420 octets 303980988 (289,8 Mio)erreurs TX 0 abandonnés 0 dépassements 0 porteuse 0 collisions 0wlp9s0 : flags=4163 mtu 1500inet 192.168.225.37 netmask 255.255.255.0 broadcast 192.168.225.255inet6 2409:4072:6183:c604:c218:85ff:fe50:474f scopeether c0:18:85:50:47:4f txqueuelen 1000 (Ethernet)RX packets 564574 bytes 628671925 (599.5 MiB)RX errors 0 abandonné 0 overruns 0 frame 0TX paquets 299706 octets 60535732 (57,7 Mio)TX erreurs 0 abandonnés 0 dépassements 0 transporteur 0 collisions 0

Comme vous le voyez dans la sortie ci-dessus, j'ai deux interfaces réseau à savoir enp5s0 (adaptateur Ethernet filaire intégré) et wlp9s0 (adaptateur réseau sans fil) sur ma machine Linux. Ici, lo est une interface de bouclage, qui est utilisée pour accéder localement à tous les services réseau. Il a une adresse IP 127.0.0.1 .

Nous pouvons également utiliser le même 'ifconfig' commande dans de nombreuses variantes UNIX, par exemple FreeBSD , pour répertorier les cartes réseau disponibles.

2. Lister les interfaces réseau à l'aide de la commande ip

Le 'ifconfig' La commande est obsolète dans les dernières versions de Linux. Vous pouvez donc utiliser 'ip' commande pour afficher les interfaces réseau comme indiqué ci-dessous.

Afficher le lien $ ip

Exemple de résultat :

1 :lo : 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 :002 :enp5s0 : mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff3:wlp9s0 : mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000 link/ether c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff  

Vous pouvez également utiliser les commandes suivantes.

$ adresse ip
lien $ ip -s

Avez-vous remarqué que ces commandes affichent également l'état connecté des interfaces réseau ? Si vous regardez attentivement la sortie ci-dessus, vous remarquerez que ma carte Ethernet n'est pas connectée au câble réseau (voir le mot "DOWN" dans la sortie ci-dessus). Et la carte réseau sans fil est connectée (voir le mot "UP" ). Pour plus de détails, consultez notre guide précédent pour trouver l'état connecté des interfaces réseau sous Linux .

Ces deux commandes (ifconfig et ip ) suffisent juste pour trouver les cartes réseau disponibles sur vos systèmes Linux.

Cependant, il existe peu d'autres méthodes disponibles pour répertorier les interfaces réseau sous Linux.

3. Répertorier les interfaces réseau à l'aide du répertoire /sys/class/net/

Le noyau Linux enregistre les détails de l'interface réseau dans /sys/class/net annuaire. Vous pouvez vérifier la liste des interfaces disponibles en consultant ce répertoire.

$ ls /sys/class/net

Exemple de résultat :

enp5s0 lo virbr0 wlp9s0

4. Lister les interfaces réseau à l'aide du fichier /proc/net/dev

Dans les systèmes d'exploitation Linux, /proc/net/dev le fichier contient des statistiques sur les interfaces réseau.

Pour afficher les cartes réseau disponibles, affichez simplement son contenu à l'aide de la commande :

$ cat /proc/net/dev

Exemple de résultat :

Inter-| Recevoir | Transmit face |bytes packets errs drop fifo frame multicast compressé|bytes packets errs drop fifo colls carrierpressed lo :2836 30 0 0 0 0 0 0 2836 30 0 0 0 0 0 0enp5s0 :0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0wlp9s0 :557664882 402062 0 0 0 0 0 0 20087136 165358 0 0 0 0 0 0virbr0 :0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

5. Lister les interfaces réseau à l'aide de la commande netstat

Le netstat La commande affiche divers détails tels que les connexions réseau, les tables de routage, les statistiques d'interface, les connexions masquées et les adhésions à la multidiffusion.

$ netstat -i

Exemple de résultat :

Tableau d'interface du noyauIface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flgenp5s0 1500 0 0 0 0 0 0 0 0 BMUbas 65536 30 0 0 0 30 0 0 0 LRUvirbr0 1500 0 0 0 0 0 0 0 0 BMUwlp9s0 1500 402063 0 0 0 165361 0 0 0 BMRU

Veuillez noter que netstat est obsolète . Le remplacement de "netstat -i" est "ip -s link" . Notez également que cette méthode ne listera que les interfaces actives, pas toutes les interfaces disponibles.

6. Lister les interfaces réseau à l'aide de la commande nmcli

Le nmcli est un outil de ligne de commande pour contrôler NetworkManager et signaler l'état du réseau. Il est utilisé pour créer, afficher, modifier, supprimer, activer et désactiver les connexions réseau et afficher l'état du réseau.

Si vous avez un système Linux avec Network Manager installé, vous pouvez répertorier les interfaces réseau disponibles à l'aide de l'outil nmcli à l'aide des commandes suivantes :

État de l'appareil $ nmcli

Exemple de résultat :

TYPE D'APPAREIL ETAT CONNEXION wlp9s0 wifi connecté JioFi4_12E9FE virbr0 pont connecté (en externe) virbr0 p2p-dev-wlp9s0 wifi-p2p déconnecté -- enp5s0 Ethernet indisponible -- lo bouclage non géré -- 

Vous pouvez également utiliser cette commande pour afficher les interfaces réseau de votre système Linux :

Afficher la connexion $ nmcli

La plupart des utilitaires susmentionnés sont préinstallés sur la plupart des systèmes Linux et Unix. Il existe également quelques utilitaires externes supplémentaires disponibles pour afficher la liste des cartes réseau.

7. Afficher la liste des interfaces réseau utilisant hwinfo

Hwinfo est un utilitaire de ligne de commande pour afficher les informations matérielles dans un système Linux. Il recherche le matériel présent dans un système Linux et affiche les détails détaillés de chaque périphérique matériel.

Hwinfo est disponible dans les dépôts officiels de nombreuses distributions Linux. Pour installer hwinfo sur des systèmes basés sur RPM, exécutez :

$ sudo dnf install hwinfo

Sur les systèmes basés sur Deb, vous pouvez installer hwinfo à l'aide de la commande suivante :

$ sudo apt install hwinfo

Une fois installé, exécutez la commande suivante pour répertorier le nom des interfaces réseau à l'aide de l'utilitaire hwinfo :

$ sudo hwinfo --short --network

Exemple de résultat :

interface réseau :enp5s0 interface réseau Ethernet virbr0 interface réseau Ethernet wlp9s0 interface réseau Ethernet lo interface réseau Loopback

8. Afficher les interfaces réseau à l'aide de lshw

Lshw (listeur de matériel) est un utilitaire CLI qui fournit des informations détaillées sur la configuration matérielle d'un système Linux.

Pour afficher la liste des cartes réseau sous Linux avec l'utilitaire lshw, exécutez :

$ sudo lshw -class network -short

Exemple de résultat :

Chemin H/W Description de la classe de périphérique=============================================================/0/100/1c.1/0 enp5s0 réseau RTL810xE PCI Express Fast Ethernet contrôleur/0/100/1c.3/ 0 réseau wlp9s0 Adaptateur réseau sans fil AR9285 (PCI-Express)

9. Afficher les interfaces réseau avec inxi

Inxi est encore un autre outil d'information système en ligne de commande comme hwinfo et lshw. Il affiche le matériel système, le processeur, les pilotes, Xorg, le bureau, le noyau, la ou les versions de GCC, les processus, l'utilisation de la RAM et une grande variété d'autres informations utiles.

Pour afficher des informations sur les cartes réseau, y compris le fournisseur, le pilote de la carte et le nombre d'interfaces réseau disponibles dans un système Linux, exécutez inix avec -N choix :

$ inxi -N Réseau :Périphérique-1 :pilote Realtek RTL810xE PCI Express Fast Ethernet :r8169 Périphérique-2 :pilote de carte réseau sans fil Qualcomm Atheros AR9285 :ath9k 

Lire connexe :

  • Comment vérifier ou trouver des informations sur le processeur sous Linux

10. Afficher les interfaces réseau à l'aide de lspci

Le lspci La commande répertorie tous les périphériques PCI d'un système Linux.

Pour afficher la liste des interfaces réseau disponibles dans un système Linux, utilisez lspci avec egrep commande comme ci-dessous :

$ lspci | egrep -i 'réseau|ethernet|sans fil|wi-fi'

Exemple de résultat :

05:00.0 Contrôleur Ethernet :Realtek Semiconductor Co., Ltd. Contrôleur RTL810xE PCI Express Fast Ethernet (rév. 05)09:00.0 Contrôleur réseau :Adaptateur réseau sans fil Qualcomm Atheros AR9285 (PCI-Express) (rév. 01)

N'afficher que le nom des interfaces réseau disponibles

Ce que nous avons vu jusqu'à présent, ce sont diverses méthodes pour trouver les interfaces réseau disponibles sous Linux. Dans toutes les méthodes susmentionnées, nous avons affiché les interfaces réseau disponibles ainsi que quelques détails supplémentaires, tels que les détails RX/TX, l'adresse Mac, l'état connecté, le mode, le type de réseau et quelques autres. Si vous souhaitez supprimer les détails inutiles et répertorier uniquement le nom des interfaces réseau, vous pouvez utiliser l'une des commandes suivantes.

$ ifconfig -a | sed 's/[ \t].*//;/^$/d'

Exemple de résultat :

enp5s0:lo:virbr0:wlp9s0 :

Pour exclure le périphérique de bouclage (lo) de la sortie, exécutez plutôt cette commande :

$ ifconfig -a | sed 's/[ \t].*//;/^\(lo\|\)$/d'

Comme indiqué précédemment, ifconfig la commande est obsolète. Si ifconfig la commande n'est pas disponible, utilisez ip commande pour afficher uniquement le nom des interfaces réseau avec -o drapeau comme ci-dessous :

$ ip -o link show | awk -F' :' '{print $2}' loenp5s0wlp9s0virbr0

Vous pouvez également utiliser la commande suivante :

$ adresse ip afficher | awk '/^[1-9]/ {print $2}'

Conclusion

Dans ce guide, nous avons discuté de dix méthodes différentes pour trouver et répertorier les interfaces réseau disponibles sous Linux et Unix. Nous avons également examiné quelques façons d'afficher uniquement le nom des interfaces réseau sous Linux.

Consultez les guides suivants pour savoir comment configurer l'adresse IP sous Linux.

  • Comment configurer une adresse IP statique sous Linux et Unix
  • Comment configurer l'adresse IP dans Ubuntu 18.04 LTS
  • Comment configurer une adresse IP statique et dynamique dans Arch Linux
  • Comment attribuer plusieurs adresses IP à une seule carte réseau sous Linux

Linux
  1. Comment utiliser FIND sous Linux

  2. Comment configurer une adresse IP statique sur Debian Linux

  3. Comment trouver un fichier sous Linux

  4. Comment trouver l'adresse IP de la passerelle par défaut sous Linux

  5. Trouver les interfaces réseau disponibles en C/C++ ?

Comment trouver une adresse IP sous Linux

Comment trouver le nom d'hôte sous Linux

Découvrez les adaptateurs réseau disponibles dans Ubuntu Linux

Comment ajouter une route sous Linux

Comment trouver la dernière connexion sous Linux

Comment trouver une adresse IP sous Linux