我已连接到我的 WiFi 网络,我想捕获和分析其他客户端与网关交换的数据包。我不想修改这些数据包的内容,也不需要读取每个数据包的内容。
其实wlan配置如下:
- 路由器
192.168.1.1 - 我用来嗅探流量的笔记本电脑
192.168.1.9 - 我的智能手机
192.168.1.2
所以我希望能够看到我的智能手机和路由器之间的(部分)流量。
为了实现这个目标,我将无线接口设置为混杂模式,sudo ip link wlo1 promiscuous on并检查它是否启用netstat -i:
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
enp8s0 1500 0 28962 0 1 0 22923 0 0 0 BMU
lo 65536 0 7294 0 0 0 7294 0 0 0 LRU
wlo1 1500 0 29469 0 0 0 12236 0 0 0 BMPRU
标志列P上的表示混杂模式,所以我假设它已启用。由于混杂模式已打开,我应该会看到我的 NIC 可以捕获的所有流量。然后我打开wireshark,开始在wlo1接口上捕获流量,但我没有看到任何来自源的数据包192.168.1.2,我正在用智能手机上网(所以,我正在生成流量)。
我究竟做错了什么?
编辑:我发现了问题。
该接口仍处于托管模式。我试图手动添加一个新界面。iw phy phy0 info告诉我的网卡支持监控模式,但如果我尝试添加一个新接口,sudo iw phy phy0 interface add mon0 type monitor我会得到以下信息:
blackbrain@blackbrain-host:~$ iw dev
phy#0
Interface mon0
ifindex 5
wdev 0x3
addr 34:68:95:03:48:17
type managed
Interface wlo1
ifindex 3
wdev 0x1
addr 34:68:95:03:48:17
type managed
channel 7 (2442 MHz), width: 20 MHz, center1: 2442 MHz
两个接口都处于托管模式。
任何的想法?