Identifying Wireless Chipsets and Drivers in Kali
Before running monitor mode or injection techniques, identify the chipset and the kernel driver bound to the adapter. This determines support for monitor mode and injection. It also affects which tool flags to use and whether driver workarounds apply. Skipping this step wastes time when a tool fails silently or returns no interfaces. The chipset, not the adapter brand, controls what is possible. A rebadged adapter can ship with a completely different chip than the one advertised on the box.
lsusb lists connected USB adapters by vendor:product ID for chipset cross-referencing.
lspci identifies built-in PCIe wireless cards (Intel, Atheros), which typically lack injection support.
airmon-ng shows all wireless interfaces with their active driver and chipset in one view.
ethtool -i returns the exact driver version and bus info for a specific interface.
lsmod confirms whether the kernel module for a chipset is loaded and active.
List Connected USB Adapters
Bus 001 Device 002: ID 0cf3:9271 Qualcomm Atheros AR9271 Bus 001 Device 003: ID 0b05:17d1 ASUSTek Computer MT7610U Bus 002 Device 004: ID 0bda:8812 Realtek RTL8812AU
The ID vendor:product field is the reliable identifier. The text description can be wrong or generic. Copy that ID and cross-reference it against the aircrack-ng compatibility list before trusting the friendly name. Adapters sold as dual-band 802.11ac sometimes ship a different chipset revision that lacks injection support. The vendor ID alone is not enough; you need the full vendor:product pair. For full details on a specific device:
idVendor 0x0bda Realtek Semiconductor Corp. idProduct 0x8812 RTL8812AU 802.11a/b/g/n/ac iManufacturer 1 Realtek iProduct 2 802.11n WLAN Adapter
List PCIe Wireless Adapters
02:00.0 Network controller: Intel Corporation Wi-Fi 6 AX200 (rev 1a) 03:00.0 Network controller: Realtek Semiconductor RTL8812AE 802.11ac
Built-in laptop cards are almost always Intel or Qualcomm Atheros PCIe adapters. Neither supports injection in standard Kali kernels. If you see an Intel card here, treat it as a management-only interface. Use a dedicated USB adapter for injection and monitor mode. The bus address in the first column, for example 03:00.0, is what you pass to lspci -vnn. For full details on a specific PCIe device:
Check the Active Driver with airmon-ng
Run without arguments to see all wireless interfaces, their drivers, and chipsets at once. This is usually the fastest first check. The Driver column maps directly to the kernel module name, and the Chipset column confirms what the kernel detected.
PHY Interface Driver Chipset phy0 wlan0 iwlwifi Intel Corporation Wi-Fi 6 AX200 phy1 wlan1 mt76x2u MediaTek MT7612U phy2 wlan2 8812au Realtek RTL8812AU
The driver name tells you immediately whether you have a supported chipset. Intel AX200 with iwlwifi does not support injection. MT7612U with mt76x2u does. If the Driver column shows iwlwifi, ath10k, or brcmfmac, that interface will not work for injection. Plan around it. If an expected interface is missing, the driver may not be loaded. The adapter may also have failed to enumerate on the USB bus.
Check the Driver with ethtool
Use ethtool -i to get driver details for a specific interface. The output confirms the exact driver version bound to the interface. The bus-info field ties the interface back to the physical USB or PCIe slot. This helps when multiple adapters are connected and interface names shift between reboots.
driver: mt76x2u version: 6.1.0-kali7-amd64 firmware-version: N/A bus-info: usb-0000:00:14.0-2
Check Which Kernel Module is Loaded
If airmon-ng shows no interface for an adapter you plugged in, check whether the kernel module loaded at all. Use lsmod filtered by common driver names. A missing module means the kernel has no driver for the chipset. It can also mean a DKMS module failed to build after a kernel update.
mt76x2u 45056 0 mt76x2_common 90112 1 mt76x2u mt76 98304 2 mt76x2u,mt76x2_common
The third column is the usage count. A value of 0 means the module is loaded but no interface is actively using it. That is normal when no adapter is plugged in. If nothing appears for your expected driver, the module is not loaded. See the driver management page. If the module is present but airmon-ng still shows nothing, check dmesg for firmware load failures or USB enumeration errors.
Identify the Wireless Chipset Driver from the Chipset Model
The key question is whether the chipset supports mac80211 injection. Chipsets that use a FullMAC architecture, where the firmware handles MAC-layer operations, typically do not support injection regardless of driver. SoftMAC chipsets expose raw frame control to the driver, which is what mac80211 injection requires. Most recommended pentesting adapters are SoftMAC. Chipsets marked DKMS in the table need a kernel module built outside the mainline tree. Kali pre-installs these DKMS drivers, but they may need rebuilding after a kernel upgrade.
References
-
Aircrack-ng: Compatible Adapters and DriversLINK: Aircrack-ng: Compatible Adapters and Drivers, www.aircrack-ng.org/doku.php?id=compatibility_drivers (opens in new tab)
Full chipset and driver compatibility matrix
-
Aircrack-ng: Injection TestLINK: Aircrack-ng: Injection Test, www.aircrack-ng.org/doku.php?id=injection_test (opens in new tab)
Verifying injection with aireplay-ng