Avant de pouvoir configurer une interface, il faut que le pilote de périphérique correspondant ait été chargé en mémoire. Comme une interface réseau est un dispositif matériel, c'est au niveau du noyau Linux que l'opération doit s'effectuer. Soit le pilote d'interface a été inclus dans la partie monolithique du noyau soit il est chargé sous forme de module. C'est cette dernière solution qui est le plus souvent retenue. Un module peut être chargé ou déchargé à volonté sans avoir à redémarrer la machine.
Il existe une grande variété de contrôleurs d'interface réseau sans fil. À chaque composant correspond un pilote logiciel spécifique. Qu'il s'agisse d'une carte additionnelle ou d'un composant intégré sur la carte mère, le contrôleur est toujours un périphérique connecté à un bus PCI, USB ou ISA pour les modèles les plus anciens. Les commandes lspci du paquet pciutils, lsusb du paquet usbutils et lspcmcia du paquet pcmciautils donnent la liste des périphériques reliés respectivement aux bus PCI, USB ou ISA.
Voici quelques exemples caractéristiques obtenus à l'aide des
commandes
, $
lspci -v
ou $
lsusb
.$
lspcmcia
-v
-
Un contrôleur de marque Intel™ intégré sur carte mère
0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02) Subsystem: Intel Corporation Device 1021 Flags: bus master, fast devsel, latency 0, IRQ 31 Memory at f1fff000 (32-bit, non-prefetchable) [size=4K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Mask- 64bit+ Count=1/1 Enable+ Capabilities: [e0] Express Legacy Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 65-5e-54-ff-ff-3c-1f-00 Kernel driver in use: iwl3945
-
Un contrôleur mini PCI de marque Intel™ intégré sur carte mère.
03:03.0 Network controller: Intel Corporation PRO/Wireless 2915ABG ... Subsystem: Intel Corporation Unknown device 1021 Flags: bus master, medium devsel, latency 64, IRQ 18 Memory at dceff000 (32-bit, non-prefetchable) [size=4K] Capabilities: [dc] Power Management version 2
-
Un contrôleur de marque Broadcom™ sur une carte PCCARD.
06:00.0 Network controller: Broadcom Corporation BCM4306 \ 802.11b/g Wireless LAN Controller (rev 03) Subsystem: Linksys Device 4320 Flags: bus master, fast devsel, latency 64, IRQ 11 Memory at 2c000000 (32-bit, non-prefetchable) [size=8K] Capabilities: [40] Power Management version 2 Kernel driver in use: b43-pci-bridge Kernel modules: ssb
-
Un contrôleur de marque Realtek™ connecté sur un bus USB.
Bus 001 Device 003: ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter
-
Un contrôleur de marque Cisco™ sur une carte PCMCIA.
Socket 1 Bridge: [yenta_cardbus] (bus ID: 0000:00:04.1) Configuration: state: on ready: yes Voltage: 5.0V Vcc: 5.0V Vpp: 5.0V Socket 1 Device 0: [airo_cs] (bus ID: 1.0) Configuration: state: on Product Name: Cisco Systems 350 Series Wireless LAN Adapter Identification: manf_id: 0x015f card_id: 0x000a function: 6 (network) prod_id(1): "Cisco Systems" (0xa17c320e) prod_id(2): "350 Series Wireless LAN Adapter" (0x3d011600)
Certaines interfaces présentent quelques singularités quant à l'emploi de logiciel directement intégré sur les composants ; les firmwares. Quelques éléments sur l'obtention de ces firmwares sont donné à la Section 9, « Notes sur le support matériel et les firmwares ».
Les pilotes logiciels des composants sont chargés dynamiquement lors de l'initialisation du système d'exploitation. Dans la plupart des cas, ils sont chargés en mémoire sous forme de modules. On peut vérifier que ces pilotes logiciels ont bien été chargés en consultant les messages systèmes et la liste des modules chargés en mémoire.
Voici un extrait des messages d'initialisation du système avec
le contrôleur Intel™ dont le pilote
logiciel est baptisé ipw2200
. Ces
messages sont obtenus à l'aide de la commande dmesg.
# dmesg |grep -1 ipw2200 ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.2.0kdmprq ipw2200: Copyright(c) 2003-2006 Intel Corporation ACPI: PCI Interrupt 0000:03:03.0[A] -> GSI 17 (level, low) -> IRQ 18 ipw2200: Detected Intel PRO/Wireless 2915ABG Network Connection ipw2200: Detected geography ZZE (13 802.11bg channels, 19 802.11a channels) ACPI: PCI Interrupt 0000:00:1e.3[B] -> GSI 17 (level, low) -> IRQ 18
On retrouve aussi ce nom de pilote dans la liste des modules chargés en mémoire. Cette liste est obtenue à l'aide de la commande lsmod.
# lsmod |grep ipw2200 ipw2200 177864 0 ieee80211 33864 1 ipw2200 firmware_class 10240 2 pcmcia,ipw2200