如何捕获无线路由器发送的探测请求数据或探测响应数据

我有一个带有OpenWrt的tplink-wr703n无线路由器。

我知道当适配器处于监视模式时,我可以捕获各种数据。

我希望适配器在主模式下工作,并且还要捕获从客户端发送的探测请求数据或从我的路由器发送的探测响应数据。

我试图使用libpcap来捕获数据,但是我失败了。

你能告诉我如何得到这些数据吗?

您可以同时在一个无线电卡上设置多个模式。

使用“iw”命令,你应该能够创建一个类型监视器的辅助wifi设备接口,我想你可以读取所有帧类型。

http://wireless.kernel.org/en/users/Documentation/iw/vif/

我也试图准备一个scapy脚本来捕获探测请求。 有一个印度人做了这个漂亮的视频: https : //www.youtube.com/watch?v = Z1MbpIkzQjU

他的剧本似乎在他的环境中工作,但由于某种原因,我不能得到这个为我工作。

我会感谢您的协助。

脚本是:

#!/usr/bin/python import sys from scapy.all import * clientprobes = set() def PacketHandler(pkt): if pkt.haslayer(Dot11ProbeReq): if len(pkt.info) > 0: testcase = pkt.addr2 + '_ _ _' + pkt.info if testcase not in clientprobes: clientprobes.add(testcase) print "New Probe Found: " + pkt.addr2 + ' ' + pkt.info print "\n-----------Client Probes Table-------------\n" counter = 1 for probe in clientprobes: [client, ssid] = probe.split('---') print counter, client, ssid counter = counter + 1 print "\n--------------------------------------------\n" sniff(iface = sys.argv[1], count = int(sys.argv[2]), prn = PacketHandler)