Kali Linux 无线网卡驱动问题排查
症状速查
| 症状 | 可能原因 |
|---|---|
iwconfig 看不到无线网卡 | 驱动没装 / 内核不支持 / 网卡坏了 |
rfkill list 显示 Soft blocked | 被 rfkill 软锁定 |
airmon-ng start wlan0 失败 | NetworkManager 冲突 |
airodump-ng 不抓到包 | 不在 monitor mode |
aireplay-ng -9 injection failed | 网卡芯片不支持注入 |
第一步:确认硬件被内核识别
# 查看 PCI 设备(内置无线)
lspci | grep -i wifi
# 查看 USB 设备(外接无线)
lsusb | grep -i wireless
# 查看内核日志
dmesg | grep -i wifi
如果 lspci/lsusb 都看不到,说明是硬件问题(没插好、线松了、U 口供电不足等)。
第二步:确认驱动已加载
# 查看已加载的模块
lsmod | grep -i wifi
# 查看哪个驱动关联哪个设备
lspci -k
# 在 Wireless controller 那一段看 "Kernel driver in use"
驱动缺失的常见场景
Broadcom(BCM43XX 系列)
Broadcom 需要闭源固件:
sudo apt update
sudo apt install -y firmware-brcm80211
sudo modprobe -r brcmfmac && sudo modprobe brcmfmac
Realtek(RTL8188EUS、RTL8812AU 等)
较老的内核可能不支持某些 Realtek 芯片:
# RTL8188EUS
sudo apt install -y realtek-rtl8188eu-dkms
# RTL8812AU(Alfa AWUS036ACH)
sudo apt install -y realtek-rtl88xxau-dkms
# RTL8852AE(最新的 Wi-Fi 6 芯片)
sudo apt install -y realtek-rtl8852be-dkms
Kali 内核 6.0+ 已经内置了大部分 Realtek 驱动,如果还是识别不到,更新内核再试:
sudo apt full-upgrade -y
sudo reboot
MediaTek(MT7610/MT7612)
sudo apt install -y firmware-mediatek
sudo modprobe mt76
第三步:rfkill 软/硬锁定
rfkill 是 Linux 管理无线设备启用/禁用的子系统:
rfkill list
# 可能看到:
# 0: phy0: Wireless LAN
# Soft blocked: yes
# Hard blocked: no
Soft blocked(软锁)
解决:
sudo rfkill unblock all
# 或只 unblock 某个
sudo rfkill unblock wifi
常见原因:笔记本按过 Wi-Fi 快捷键(Fn+F几)、NetworkManager 不小心禁用了。
Hard blocked(硬锁)
Hard blocked 通常是物理开关(笔记本侧面的 Wi-Fi 物理开关)或 BIOS 里禁用了 Wi-Fi。物理解决:拨开关或 BIOS 里打开。
第四步:NetworkManager 冲突
NetworkManager(或 wpa_supplicant)会占用无线网卡,导致无法进入 monitor mode。airmon-ng 自带处理:
airmon-ng check kill # 杀掉冲突进程
airmon-ng start wlan0
这个命令会杀掉 NetworkManager 和 wpa_supplicant。测完要恢复:
sudo systemctl start NetworkManager
第五步:Monitor Mode 成功但抓不到包
# 确认真的在 monitor mode
iw dev
# 应该看到 mon0 的 type 是 monitor
# 确认在正确的频道
airodump-ng -c 6 mon0
# 如果还是抓不到,可能是网卡真不支持 monitor mode
iw phy
# Band 下应该有 Frequencies 列表
# 如果显示 "no monitor mode support",那就是真不支持
第六步:Injection 失败
aireplay-ng -9 mon0
# 结果: Injection failed
常见原因和解决:
- 网卡芯片不支持注入:换芯片(推荐 Realtek RTL8812AU、Atheros AR9271)
- 不在 monitor mode:重新
airmon-ng start wlan0 - rfkill 还有软锁:再跑一次
airmon-ng check kill - USB 供电不足:换短 USB 线或加 USB 供电 hub
Alfa AWUS036ACH 常见问题
这是渗透测试最常用的 USB 网卡,Kali 内核 5.15+ 已内置驱动。如果没识别:
# 查内核日志看有没有加载
dmesg | tail -50 | grep -i rtw88
# 如果有 rtw88 错误:
sudo modprobe -r rtw88_bt rtw88
sudo modprobe rtw88
# 最新内核的 rtw88 驱动支持 RTL8812AU 和 RTL8811AU
2026 年内核支持更新
内核 7.0+ 原生支持了更多新芯片(Realtek RTL8812BU、MediaTek MT7902),很多过去需要 DKMS 的卡现在直接就能用。如果你的卡是 2024 年后出的,先更新内核再折腾驱动。