我正在编写一个发送原始802.11x数据包的Python程序。我想在整个程序中多次更改监视器界面的通道。我正在使用Scapy库。有没有办法可以在不运行像iwconfig
这样的shell命令的情况下执行此操作?
如果有多种方法是最好的?
答案 0 :(得分:2)
我假设您希望在基于提及iwconfig的Linux系统上执行此操作。
查看Linux Kernel Wireless documentation唯一完整的(如未开发中)与无线接口交互的方式,通过两个命令行实用程序iwconfig
进行更改模式和通道和新的iw
。命令行实用程序iw
为replacing iwconfig
,有许多更改。
iwlib
库是您需要与之交互的内容,无论是通过iw
还是像python-iwlib
这样的Python模块。
Python iwlib
模块尚未完成,目前尚未提供您所需的功能。它只能告诉您无线接口的当前配置。
您可能考虑使用的唯一其他实用程序是airmon-ng
。该实用程序与前面提到的命令行工具接口,要求您调用shell命令。
抱歉无法为您提供完整的解决方案。也许你有改进python-iwlib
模块的周期,因为如果你不使用shell命令,这似乎是你最好的选择。
答案 1 :(得分:2)
一年半来不及(可能是我项目的无耻插件)但我遇到了和你一样的问题。我厌倦了搜索/等待本机解决方案,并决定编写自己的代码 - 源代码在github上 https://github.com/wraith-wireless/PyRIC/查看pyw.py中的函数chset。我目前使用的是1.1版,你可以通过pip安装。