mac80211_hwsim模拟无线电台超100报错,是否存在数量限制?
mac80211_hwsim 模拟无线电台数量限制问题解答
是的,mac80211_hwsim模块对模拟无线电台的数量存在默认上限100,这就是你执行sudo modprobe mac80211_hwsim radios=n且n>100时返回"Invalid argument"错误的原因。
内核文档里提到的“可模拟任意数量IEEE 802.11无线电台”,是指理论上可通过调整内核配置扩展数量,并非无限制直接使用。模块的默认上限由内核代码中的HWSIM_MAX_RADIOS宏定义控制,多数发行版的内核默认将其设为100。
如果需要模拟超过100个电台,有两种可行方案:
- 重新编译内核:修改
drivers/net/wireless/mac80211_hwsim.c文件中的HWSIM_MAX_RADIOS宏值为你需要的数值,之后重新编译并安装内核。 - 尝试动态调整参数(部分新内核支持):加载模块时同时指定
max_radios参数,比如:
注意:这种方式不是所有内核版本都支持,需要确认你的内核是否引入了动态调整该参数的相关补丁。sudo modprobe mac80211_hwsim max_radios=200 radios=200
内容的提问来源于stack exchange,提问作者alberto sansegundo
相关产品推荐
相关产品推荐

