1. 环境准备与驱动源码获取
刚拿到COMFAST CF-812AC无线网卡时,我兴冲冲地插上Kali Linux 2024准备做渗透测试,结果系统根本不识别。这种Realtek RTL88X2BU芯片的网卡在官方仓库里没有现成驱动,需要手动编译安装。下面是我折腾三小时总结的完整流程,帮你避开所有坑。
首先确认你的Kali Linux版本和内核。打开终端输入:
uname -a lsb_release -a我测试的环境是Kali Linux 2024.1,内核版本6.5.0。不同内核版本可能会遇到不同问题,这个后面会详细说明。
必备依赖安装:
sudo apt update sudo apt install -y git dkms bc linux-headers-$(uname -r) build-essential这里有个关键点:bc这个数学计算工具经常被忽略,但高版本内核编译时必装,否则会报错(后面会具体讲怎么排查)。
驱动源码推荐从官方GitHub仓库获取:
git clone https://github.com/cilynx/rtl88x2bu.git cd rtl88x2bu如果GitHub访问慢,可以用我备份的镜像源:
git clone https://gitee.com/mirrors_rtl88x2bu/rtl88x2bu.git实测2024年3月最新可用的是5.13.1版本驱动,支持内核6.x系列。注意:不要用2020年的老驱动,新内核会编译失败。
2. 驱动编译与DKMS配置
进入驱动目录后先看版本号:
VER=$(sed -n 's/PACKAGE_VERSION="\(.*\)"/\1/p' dkms.conf) echo $VER我的显示是5.13.1,这个变量后面每一步都会用到。
关键步骤:DKMS注册
sudo rsync -rvhP ./ /usr/src/rtl88x2bu-${VER} sudo dkms add -m rtl88x2bu -v ${VER}这里容易踩两个坑:
- 如果报
dkms: command not found,说明漏装了依赖,重新执行sudo apt install dkms - 高版本内核可能会提示
bc: command not found,这时要补装sudo apt install bc
编译环节实战记录:
sudo dkms build -m rtl88x2bu -v ${VER}我在内核6.5.0上第一次编译失败了,查看日志发现关键报错:
cat /var/lib/dkms/rtl88x2bu/5.13.1/build/make.log日志显示ERROR: Kernel configuration is invalid,解决方法是在Makefile里加上:
CONFIG_PLATFORM_I386_PC = y修改后重新编译就通过了。这个坑在GitHub的issue里都没人提过,是我实测出来的解决方案。
3. 驱动安装与加载
编译成功后,安装就简单了:
sudo dkms install -m rtl88x2bu -v ${VER}但加载驱动时有技巧:
sudo modprobe 88x2bu如果报modprobe: FATAL: Module 88x2bu not found,尝试:
sudo depmod -a sudo modprobe -v 88x2bu我遇到更诡异的情况:驱动加载成功但iwconfig不显示。最后发现是USB3.0接口供电不足,换到USB2.0口立即识别。建议用以下命令检查:
lsusb | grep Realtek dmesg | grep 88x2bu4. 疑难问题排查指南
场景1:编译时内核头文件缺失报错/lib/modules/6.5.0-kali3-amd64/build: No such file,解决:
sudo apt install linux-headers-$(uname -r)场景2:驱动加载后频繁断连修改驱动参数提升稳定性:
echo "options 88x2bu rtw_power_mgnt=0 rtw_enusbss=0" | sudo tee /etc/modprobe.d/88x2bu.conf sudo reboot场景3:虚拟机无法识别USB网卡VMware用户需要:
- 虚拟机设置→USB控制器→USB兼容性选3.0
- 勾选"显示所有USB输入设备"
- 右键虚拟机右下角USB图标→连接设备
实测发现Kali 2024对Realtek RTL88X2BU的支持比旧版好很多,但仍有几个注意点:
- 休眠唤醒后可能需要重新modprobe
- 5GHz频段比2.4GHz更稳定
- 监控模式需要额外打补丁(airmon-ng实测可用)
最后用这个命令验证驱动状态:
dkms status | grep 88x2bu iwconfig | grep -A 3 wlan看到类似rtl88x2bu/5.13.1, 6.5.0-kali3-amd64, x86_64: installed的输出就说明成功了。