执行“iw reg set BO”时没有任何变化

执行“iw reg set BO”时没有任何变化

我知道这类问题已经存在,但这是 2016 年的问题,对我来说不起作用。我正在使用安装在我的笔记本电脑上的最新 Kali 版本。

所以我想“iw reg set BO”这样我就可以增加 txpower。但我明白了:

global country 00: DFS-UNSET (2402 - 2472 @ 40), (6, 20), (N/A) (2457 - 2482 @ 20), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN (2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN (5170 - 5250 @ 80), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN (5250 - 5330 @ 80), (6, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN (5490 - 5730 @ 160), (6, 20), (0 ms), DFS, PASSIVE-SCAN (5735 - 5835 @ 80), (6, 20), (N/A), PASSIVE-SCAN (57240 - 63720 @ 2160), (N/A, 0), (N/A)phy#1 country 99: DFS-UNSET (2402 - 2472 @ 40), (N/A, 20), (N/A) (2457 - 2482 @ 40), (N/A, 20), (N/A), PASSIVE-SCAN (5140 - 5860 @ 40), (N/A, 30), (N/A), PASSIVE-SCAN

所以它什么也没做。

答案1

首先,该iw命令是一个新的基于 nl80211 的无线设备 CLI 配置实用程序。它取代了iwconfig和等旧工具iwlist。然而,只有当您的 WiFi 适配器支持时,更改监管域才有意义。

让我们来分析一下发生了什么:

您的 WiFi 适配器:并非所有适配器都能很好地使用更改其监管域的命令。检查您的特定型号的制造商规格,以确保它能够做到这一点。

CRDA 和您的系统:您系统中的中央监管域代理 (CRDA) 可能会根据系统或 WiFi 卡中嵌入的国家/地区代码覆盖您的命令。

您可以尝试以下一些故障排除技巧:

sudo dpkg-reconfigure crda重新配置 crda:通过运行并将您的国家/地区设置为 BO 来重新配置 crda 软件包。

检查 dmesg 日志:该命令dmesg | grep cfg80211将向您显示输出日志,您可以在其中检查您的命令是否被接受或覆盖。

重新启动系统:运行后简单地重新启动iw reg set BO可能有助于更改生效。

答案2

在评论中,您显示了两条重要的dmesg日志消息:

[    3.827270] cfg80211: Loading compiled-in X.509 certificates for regulatory database 
[    3.829504] cfg80211: loaded regulatory.db is malformed or signature is missing/invalid 

Debian(以及与之相关的发行版,如 Ubuntu 和 Kali)已经放弃了旧crda系统,转而/lib/firmware/regulatory.db使用与加载固件文件基本相同的机制来直接加载无线监管规则。

但是监管数据必须经过身份验证,并且有两个可能的来源:如果您使用的是发行版内核,它可能会使用发行版本身签名的监管数据文件,以避免内核中的任何第三方签名密钥尽可能多。但如果您使用自定义内核,它将使用默认的上游监管签名密钥。

因此,至少在 Debian 中,有两个版本的监管数据可用:一个用于分发内核,另一个用于您可能自己构建的自定义内核。该错误消息表明您可能使用了错误的数据版本,或者如果您手动更新了数据,则可能错过了与其关联的签名文件。

如果您更新了当前的/lib/firmware/regulatory.db,您还应该更新相应的/lib/firmware/regulatory.db.p7s签名文件以匹配。

如果您使用的是自定义内核,请运行update-alternatives --config regulatory.db并查看其内容。

我使用 Debian 和我自己的自定义配置内核,因此输出对我来说如下所示:

update-alternatives --config regulatory.db
There are 2 choices for the alternative regulatory.db (providing /lib/firmware/regulatory.db).

  Selection    Path                                  Priority   Status
------------------------------------------------------------
  0            /lib/firmware/regulatory.db-debian     100       auto mode
  1            /lib/firmware/regulatory.db-debian     100       manual mode
* 2            /lib/firmware/regulatory.db-upstream   50        manual mode

Press <enter> to keep the current choice[*], or type selection number:

就您的情况而言,当前选择的版本显然不适合您,因此您可能想尝试其他版本的监管数据库。

相关内容