我可以使用 ioctl SIOCSIWSCAN 和 SIOCGIWSCAN 执行正常扫描并获取 AP 列表,但是当我将卡设置为监视模式时,我得到 errno = 不支持操作。
被动扫描是否有不同的 ioctl 调用?
我知道 wifi 卡不是问题,因为我使用 airodump-ng 得到了结果,并且检查了两张不同的卡。
最佳答案
首先,在命令行中输入:
iw phy <phy> info
并查看 new_interface 是否列在支持的命令下。您可以通过以下方式获取卡的 phy:
iw 开发
其次,我发现如果我先删除 phy 上的所有接口(interface),将卡设置为监控模式会更容易。如果有事件的接口(interface),有些卡牌就不能很好地发挥作用。
使用 ioctl 向上或向下调卡并获取卡的硬件地址。否则你应该使用netlink - 你正在nl80211.h中寻找NL80211_CMD_NEW_INTERFACE
关于c - Linux 上使用 ioctl 进行被动 wifi 扫描,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36968472/