在尝试诊断WiFi丢失的过程中,我发现WiFi接口上的管制域设置为“世界”(00),并将其更改为我的地区(美国)应该可以解决此问题。但是,我所做的每一次尝试都被忽略了。
跑步iw reg set US
没有明显的效果:
$ iw reg get
country 00: DFS-UNSET
(2402 - 2472 @ 40), (6, 20), (N/A)
(2457 - 2482 @ 40), (6, 20), (N/A), PASSIVE-SCAN
(2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 - 5250 @ 160), (6, 20), (N/A), PASSIVE-SCAN
(5250 - 5330 @ 160), (6, 20), (0 ms), DFS, 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)
$ sudo iw reg set US
$ iw reg get
country 00: DFS-UNSET
(2402 - 2472 @ 40), (6, 20), (N/A)
(2457 - 2482 @ 40), (6, 20), (N/A), PASSIVE-SCAN
(2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 - 5250 @ 160), (6, 20), (N/A), PASSIVE-SCAN
(5250 - 5330 @ 160), (6, 20), (0 ms), DFS, 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)
在对该主题进行了广泛的搜索之后,似乎应该发生的是iw reg set
导致内核发出udev事件,该事件crda
被执行并咳出相关的法规信息。但是,据我所知udevadm
,此事件永远不会发出。以下kluge无法正常运行,可以确认此事件的缺失:
$ sudo iw reg set US; sudo COUNTRY=US crda
Failed to set regulatory domain: -7
错误消息来自crda
。内核只有在发出udev事件/请求并期望响应的情况下,才会接受WiFi法规更改。由于crda
失败,内核显然没有想到它,表明没有发出udev事件。
WiFi接口是Intel 7265D;内核驱动程序是iwlmvm
。我crda
和wireless-regdb
安装,并且/etc/default/crda
包含REGDOMAIN=US
。卸下并重新加载iwlmvm
驱动程序无效。
还有什么需要检查的建议吗?
dmesg
输出或任何日志中都找不到任何东西来暗示试图更改监管领域。唯一的消息是在第一次加载驱动程序时出现,报告:“ DFS主区域:未设置”