Comment vérifier si une carte réseau est présente sous Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à vérifier si une carte réseau est présente dans votre système Linux. Nous allons explorer trois méthodes courantes pour y parvenir.

Tout d'abord, vous utiliserez la commande lshw avec l'option -C network pour lister les informations détaillées sur votre matériel réseau. Ensuite, vous vérifierez la présence d'interfaces réseau en inspectant le contenu du répertoire /sys/class/net. Enfin, vous utiliserez la commande lspci pour lister les périphériques PCI et filtrer les contrôleurs réseau, offrant ainsi une autre façon d'identifier vos cartes réseau. En effectuant ces étapes, vous acquerrez des compétences pratiques pour diagnostiquer la présence de matériel réseau sur un système Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/FileandDirectoryManagementGroup -.-> linux/whereis("File/Command Finding") linux/SystemInformationandMonitoringGroup -.-> linux/ps("Process Displaying") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/ls -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} linux/whereis -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} linux/ps -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} linux/ifconfig -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} linux/netstat -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} linux/ip -.-> lab-558732{{"Comment vérifier si une carte réseau est présente sous Linux"}} end

Vérifier les cartes réseau avec lshw -C network

Dans cette étape, nous allons explorer comment identifier les cartes réseau connectées à votre système en utilisant la commande lshw. lshw signifie "list hardware" (lister le matériel) et est un outil puissant pour obtenir des informations détaillées sur la configuration matérielle de votre système.

Pour lister spécifiquement les cartes réseau, nous utilisons l'option -C suivie du nom de la classe, qui est network.

Ouvrez votre terminal s'il n'est pas déjà ouvert. Vous pouvez le faire en cliquant sur l'icône Xfce Terminal sur le côté gauche de votre bureau.

Maintenant, tapez la commande suivante et appuyez sur Entrée :

sudo lshw -C network

Décortiquons cette commande :

  • sudo : Comme nous l'avons appris précédemment, cela nous permet d'exécuter la commande avec des privilèges de superutilisateur, ce qui est souvent nécessaire pour accéder aux informations détaillées sur le matériel.
  • lshw : La commande pour lister le matériel.
  • -C network : Cette option filtre la sortie pour afficher uniquement les périphériques appartenant à la classe "network".

Vous verrez une sortie similaire à celle-ci (les détails exacts varieront en fonction de la configuration de la machine virtuelle) :

  *-network
       description: Ethernet interface
       product: Ethernet controller
       vendor: Red Hat, Inc.
       physical id: 3
       bus info: pci@0000:00:03.0
       logical name: eth0
       version: 00
       serial: 52:54:00:xx:xx:xx
       size: 1Gbit/s
       capacity: 10Gbit/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autoneg negotiated
       configuration: autonegotiation=on broadcast=yes driver=virtio_net driverversion=1.0.0 ip=172.18.0.x latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       resources: irq:24 ioport:c040(size=32) memory:fe000000-fe000fff

Cette sortie fournit de nombreuses informations sur votre carte réseau, notamment :

  • description : Nature du périphérique (interface Ethernet).
  • product et vendor : Fabricant et modèle du matériel.
  • logical name : Nom que le système d'exploitation utilise pour cette interface (par exemple, eth0). Ceci est important pour configurer les paramètres réseau.
  • serial : Adresse MAC de la carte réseau.
  • size et capacity : Vitesse actuelle et capacité maximale de la connexion.
  • configuration : Détails sur la configuration actuelle de l'interface, y compris son adresse IP si elle est assignée.

Comprendre cette sortie vous aide à identifier vos interfaces réseau et à résoudre les problèmes réseau.

Cliquez sur Continue pour passer à l'étape suivante.

Vérifier les interfaces dans /sys/class/net

Sous Linux, le système de fichiers /sys offre une vue sur le modèle de périphériques du noyau. C'est un système de fichiers virtuel, ce qui signifie que les fichiers et les répertoires qu'il contient ne sont pas stockés sur votre disque de manière traditionnelle, mais sont générés par le noyau pour représenter les informations système.

Plus précisément, /sys/class/net est un répertoire qui contient des liens symboliques vers toutes les interfaces réseau détectées par le système. Les noms de ces liens correspondent aux noms logiques des interfaces réseau, comme eth0 que nous avons vu à l'étape précédente.

Listons le contenu de ce répertoire pour voir les interfaces réseau. Nous utiliserons la commande ls, qui est utilisée pour lister les fichiers et les répertoires.

Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

ls /sys/class/net/

Vous devriez voir une sortie similaire à celle-ci :

eth0  lo
  • eth0 : C'est l'interface Ethernet que nous avons identifiée à l'aide de lshw à l'étape précédente.
  • lo : Cela signifie "interface de bouclage" (loopback interface). C'est une interface virtuelle spéciale que votre ordinateur utilise pour communiquer avec lui-même. Elle est essentielle pour le bon fonctionnement des logiciels de réseau, même lorsque votre ordinateur n'est pas connecté à un réseau physique.

La présence de eth0 et lo dans ce répertoire confirme que le système reconnaît ces interfaces réseau. Ce répertoire est un moyen rapide de voir quelles interfaces réseau sont disponibles sur votre système.

Cliquez sur Continue pour passer à l'étape suivante.

Inspecter le matériel avec lspci

Dans cette étape, nous allons utiliser la commande lspci pour lister les informations sur les périphériques PCI connectés à votre système. PCI (Peripheral Component Interconnect) est un bus standard qui connecte les périphériques matériels à la carte mère de l'ordinateur. De nombreux périphériques, y compris les cartes réseau, les cartes graphiques et les contrôleurs de stockage, sont connectés via PCI ou son successeur, PCI Express (PCIe).

La commande lspci est utile pour identifier rapidement les périphériques connectés et leurs informations de base.

Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

lspci

Vous verrez une liste de périphériques PCI. La sortie ressemblera à ceci :

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE controller: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:01.2 USB controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Red Hat, Inc. QXL Paravirtual graphic driver
00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:04.0 Communication controller: Red Hat, Inc. Virtio console
00:05.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
00:06.0 Unclassified device [0000]: Red Hat, Inc. Virtio balloon
00:07.0 Audio device: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)

Chaque ligne représente un périphérique PCI. Le format est généralement Bus:Device.Function Classe: Fournisseur Produit.

  • Bus:Device.Function : Identifie l'emplacement du périphérique sur le bus PCI.
  • Classe : Décrit le type de périphérique (par exemple, Pont hôte, Contrôleur Ethernet, Contrôleur graphique compatible VGA).
  • Fournisseur et Produit : Identifient le fabricant et le modèle spécifique du périphérique.

Remarquez la ligne qui indique Ethernet controller: Red Hat, Inc. Virtio network device. Cela correspond à la carte réseau que nous avons vue avec lshw et dans /sys/class/net. lspci vous donne une autre perspective sur le matériel, en se concentrant sur le bus PCI.

Vous pouvez utiliser lspci avec des options telles que -v pour une sortie plus détaillée ou -nn pour afficher les identifiants de fournisseur et de périphérique au format numérique, ce qui est utile pour rechercher des informations sur le matériel en ligne.

Par exemple, essayez :

lspci -v

Cela fournira beaucoup plus d'informations détaillées sur chaque périphérique. Appuyez sur q pour quitter la sortie détaillée une fois que vous avez terminé de la consulter.

Cliquez sur Continue pour terminer ce laboratoire.

Résumé

Dans ce laboratoire, nous avons appris à vérifier la présence de cartes réseau sous Linux en utilisant divers outils en ligne de commande. Nous avons commencé par utiliser la commande sudo lshw -C network pour lister les informations détaillées sur les interfaces réseau, y compris leur description, leur fournisseur, leur produit et les détails de configuration. Cette commande fournit une vue d'ensemble complète du matériel.

Ensuite, nous avons exploré le répertoire /sys/class/net, qui fournit un lien symbolique pour chaque interface réseau présente sur le système, offrant un moyen rapide de vérifier leur existence. Enfin, nous avons utilisé la commande lspci pour inspecter le bus PCI et identifier les contrôleurs réseau en filtrant la sortie pour "Ethernet controller" ou des descriptions similaires, offrant une autre méthode pour confirmer la présence de matériel réseau. Ces étapes démontrent collectivement différentes approches pour identifier les cartes réseau dans un environnement Linux.