# Comment : Afficher la liste des cartes réseau sous Linux
{{METATOC 4-5}}
Pour afficher une liste de toutes les cartes réseau sous les systèmes d'exploitation Linux, on peut utiliser l'une des commandes suivantes:
Les commandes **ifconfig** et **ip** afficheront également des informations d'interface sur vpn, loop et autres interfaces configurées.
* **Commande lspci**: répertorie tous les périphériques PCI.
* **Commande lshw**: Linux identifie les interfaces Ethernet et le matériel NIC.
* **Commande dmidecode**: répertorie toutes les données matérielles du BIOS.
* **Commande ifconfig**: utilitaire de configuration réseau obsolète.
* **Commande ip**: nouvel utilitaire de configuration réseau recommandé.
* **Commande hwinfo**: sonde Linux pour les cartes réseau.
* **Commande ethtool**: voir le pilote et les paramètres de la carte réseau/carte sous Linux.
Ce tutoriel utilise des termes standard, tels que le contrôleur d'interface réseau (NIC). Également appelée carte d'interface réseau, adaptateur réseau, adaptateur LAN ou interface réseau physique, etc.
#### commande lspci
Taper la commande lspci suivante avec la commande egrep pour filtrer les appareils :
```
lspci | egrep -i --color 'network|ethernet'
lspci | egrep -i --color 'network|ethernet|wireless|wi-fi'
```
Exemples de sorties pour un serveur Linux :
```
09:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5761e Gigabit Ethernet PCIe (rev 10)
0c:00.0 Network controller: Intel Corporation Ultimate N WiFi Link 5300
```
#### Commande lshw
Par défaut, la commande **lshw** ou **hwinfo** peut ne pas être installée sur le système. Par conséquent, il faut les installer((Pour installer une paquet utiliser la commande apk sur Alpine Linux, la commande dnf/yum sur RHEL & co, la commande apt/apt-get sur Debian, Ubuntu & co, la commande zypper sur SUSE/OpenSUSE, la commande pacman sur Arch Linux))/
La commande lshw peut extraire des informations détaillées sur la configuration matérielle de la machine, y compris les cartes réseau. Taper la commande suivante :
```
lshw -class network
lshw -class network -short
```
* **class network**: affiche toutes les cartes réseau de votre système Linux
* **short**: affiche l'arborescence des périphériques montrant les chemins matériels, très semblable à la sortie de la commande ioscan de HP-UX.
Exemple de sortie
```
H/W path Device Class Description
===========================================================
/0/100/1d.6/0 wlp82s0 network Wi-Fi 6 AX200
/0/100/1f.6 eth0 network Ethernet Connection (7) I219-LM
```
#### Commande ethtool
On peut voir/interroger ou contrôler les paramètres du pilote réseau et du matériel sous Linux avec la commande ethtool :
```
sudo ethtool enp0s31f6
```
On peut également afficher les informations du pilote pour la carte réseau :
```
sudo ethtool -i eth0
sudo ethtool -i enp0s31f6
```
#### Commandes ifconfig et ip
Pour voir tous les périphériques réseau configurés, entrer :
```
ifconfig -a
```
OU
```
ip link show
```
OU
```
ip a
```
Exemples de sorties :
```
1: lo: mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc mq state UP qlen 1000
link/ether b8:ac:6f:65:31:e5 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.5/24 brd 192.168.1.255 scope global eth0
inet6 fe80::baac:6fff:fe65:31e5/64 scope link
valid_lft forever preferred_lft forever
3: wlan0: mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 00:21:6a:ca:9b:10 brd ff:ff:ff:ff:ff:ff
4: pan0: mtu 1500 qdisc noop state DOWN
link/ether 92:0a:e7:31:e0:83 brd ff:ff:ff:ff:ff:ff
5: vmnet1: mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:50:56:c0:00:01 brd ff:ff:ff:ff:ff:ff
inet 192.168.121.1/24 brd 192.168.121.255 scope global vmnet1
inet6 fe80::250:56ff:fec0:1/64 scope link
valid_lft forever preferred_lft forever
6: vmnet8: mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:50:56:c0:00:08 brd ff:ff:ff:ff:ff:ff
inet 192.168.179.1/24 brd 192.168.179.255 scope global vmnet8
inet6 fe80::250:56ff:fec0:8/64 scope link
valid_lft forever preferred_lft forever
```
Pour répertorier toutes les adresses IP et interfaces sous Linux sous forme de tableau pour une meilleure lisibilité, Essayer:
```
ip -br -c link show
ip -br -c addr show
```
#### Commande hwinfo
Ouvrer le terminal puis taper :
```
sudo hwinfo --network --short
```
Exemples de sorties de mon Ubuntu Linux 20.04 LTS :
```
network interface:
veth4cf4e314 Ethernet network interface
lxdbr0 Ethernet network interface
veth5ac9105a Ethernet network interface
veth0932715b Ethernet network interface
veth514990e6 Ethernet network interface
lo Loopback network interface
eth0 Ethernet network interface
veth844c4162 Ethernet network interface
vethe8d69a5f Ethernet network interface
```
On peut obtenir plus d'informations pour eth0 en utilisant la commande ip :\\ `ip a s eth0`
#### Le fichier /proc/net/dev
Le pseudo-fichier dev contient des informations sur l'état du périphérique réseau. Cela donne le nombre de paquets reçus et envoyés, le nombre d'erreurs et de collisions et d'autres statistiques de base. Ouvrer le terminal, puis taper la commande cat suivante ou la commande less/more :
```
cat /proc/net/dev
```
Exemple de sortie
```
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 20097 179 0 0 0 0 0 0 20097 179 0 0 0 0 0 0
vmnet8: 0 0 0 0 0 0 0 0 0 33 0 0 0 0 0 0
pan0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
wlan0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
eth0: 592509534 623058 0 0 0 0 0 1053 122269656 401567 0 0 0 0 0 0
vmnet1: 0 0 0 0 0 0 0 0 0 34 0 0 0 0 0 0
```