我有 2 个网络适配器,一个标有alfa awus 036nh
on it,另一个标有036h
如果我运行,lsusb
我会得到相同的输出:
Bus 001 Device 032: ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter
当我在 ubuntu 20.04 上使用wireshark(也在 kali 上尝试过,但效果相同)时,我的适配器无法捕获从手机到接入点的一些身份验证 802.11 帧。我搜索了一下这个线程似乎有类似的问题,该人说他发现这是一个驱动程序问题。
我lsmod
在插入适配器时运行以查看我的ubuntu 20.04
.我得到的这部分输出很引人注目:
Module Size Used by
r8188eu 692224 0
nfnetlink_queue 24576 0
nfnetlink_log 20480 0
nfnetlink 20480 2 nfnetlink_queue,nfnetlink_log
rtl8187 53248 0
eeprom_93cx6 16384 1 rtl8187
所以我有2个用于realtek设备的驱动程序,r8188eu
但r8187
它们没有被使用,并且我似乎eeprom_93cx6
使用了一些名为的芯片组驱动程序..这是rtl8187
应该不对,对吗?如果是这样,我如何切换以使我的 USB 适配器使用例如rtl8187
?因此,我可以使用该驱动程序测试数据包捕获,看看是否遇到任何问题。或者正确的驱动程序用法或正确的方法是什么?
额外的命令,如果有帮助的话:
root@ubuntu-ThinkPad:/home/ubuntu# lsmod | grep rtl8187
rtl8187 53248 0
mac80211 1249280 2 iwlmvm,rtl8187
eeprom_93cx6 16384 1 rtl8187
cfg80211 970752 4 iwlmvm,iwlwifi,mac80211,rtl8187
更新:
或者也许我的问题错了,我的适配器已经是用户rtl8187
,但rtl8187
模块使用了eeprom_93cx6
。所以一个模块使用另一个模块。但我不知道我的物理适配器使用哪个模块?如果我能说得通的话?
显然是的。我把整件事都搞错了。模块结构就像一棵树。模块可以被另一个模块和另一个模块使用。我的适配器显然使用rtl8187
我跑过去lsusb -t
查看:
|__ Port 4: Dev 15, If 0, Class=, Driver=rtl8187, 480M
现在我的问题是,如何更改 USB 适配器已经使用的驱动程序?