如何读取iw允许的接口列表?

如何读取iw允许的接口列表?

我想在 Wireshark 中设置混杂的 Wi-Fi 监控。尝试像以前使用 iwconfig 那样进行操作,但是一旦我恢复界面,该系统就会将我设置回托管状态。我看到网上帖子说 iw 可以在托管连接旁边添加监控界面,这样您就可以在监控时保持互联网活跃。那就太好了,但是:

[loren@Gazp9 ~]$ iw dev wlp3s0 interface add mon0 type monitor
command failed: Operation not permitted (-1)
[loren@Gazp9 ~]$ iw phy wlp3s0 interface add mon0 type monitor
command failed: No such file or directory (-2)
[loren@Gazp9 ~]$ iw phy
Wiphy phy0
[loren@Gazp9 ~]$ iw phy phy0 interface add mon0 type monitor
command failed: Operation not permitted (-1)

(如果重要的话,那就是 Antergos 4.19.8-arch1-1-ARCH。)

所以我更深入地挖掘,包括 解密 iw list valid 接口组合的输出 这里。但我仍然不确定这是否意味着没有希望添加监视器接口。以下是我的“iw phy”命令响应的摘录:

phy0    Supported interface modes:
             * IBSS
             * managed
             * AP
             * AP/VLAN
             * monitor
             * P2P-client
             * P2P-GO
             * P2P-device

    Supported commands:
             * new_interface
    (nothing about add interface)

    software interface modes (can always be added):
             * AP/VLAN
             * monitor
    valid interface combinations:
             * #{ managed } <= 1, #{ AP, P2P-client, P2P-GO } <= 1, #{ P2P-device } <= 1,
               total <= 3, #channels <= 2

看起来我肯定可以拥有一台显示器。 [在此处建议将 sudo 添加到我的接口添加命令之后,我实际上在我的托管接口旁边成功添加了监视器接口。]

但我还是很好奇:

为什么“添加接口”没有被列为支持的命令?我见过它有效...

可以“永远”添加的“软件界面”监视器是什么?我的“接口添加”连接不就是软件吗?

也许这两个问题可以互相回答?如果是这样,什么是“非软件界面”?我可以通过键入命令神奇地将实际硬件添加到我的系统中吗?

为什么“有效的接口组合”根本不列出“监视器”?我将它与“托管”结合使用。

也许对“iw phy”的回应是由制造我的中国硬件的人创造的?

而且,为什么在 wiki 中https://wireless.wiki.kernel.org/en/users/documentation/iw 只做

sudo iw dev wlan1 站获取

sudo iw dev wlan0 设置 power_save 打开

显示 sudo 的使用?没有一个“add”命令显示它:

iw dev wlan0 接口添加fish0 类型监视器标志无

但这是求知欲。我很高兴拥有一个可以工作的显示器并继续进行真正的项目。

答案1

(因为提问者没有写自己的答案:)

将监控界面添加为root,即设置sudo并使用它。

从评论来看,这似乎有效:

sudo iw dev wlp3s0 interface add mon0 type monitor 

立即生效 -mon0存在,但 Wireshark 说还没有启动。

sudo ifconfig mon0 up 

使其可连接,我现在在 Wireshark 中看到大量 WLAN 数据包。

相关内容