====Wifi6 在ConnnectCore下的实现====
注意,如果没有设置区域或国家,默认在 country code=00 下,当 country code=00 时,系统使用的是默认全局监管域(由 cfg80211 提供),通常是非常严格的限制,以确保兼容所有地区的法规。
在这种情况下,5 GHz 和 6 GHz 的非DFS信道(如 channel 36、149)都有 no IR 限制,无法用于AP模式。唯一可用的非DFS WiFi 6 信道是 2.4 GHz 的 channel 1-11(例如 channel 6),但带宽限于40 MHz,速度较低。
因此,在没有设置国家区域时,即使ConnectCore硬件支持WiFi 6(ieee80211ax=1),但 country=00 的严格限制将使得5 GHz 高频宽的信道无法正常工作。
系统启动后,可以用iw reg命令来设置国家区域,但了避免每次重启都需要手动运行 iw reg set CN,需要将监管域持久化到系统中。
方法1、可在设备树中设置并编译更新
wireless {
regulatory-domain = "CN";
};
方法2、使用 crda 或 wireless-regdb
编辑 /etc/default/crda :REGDOMAIN=CN
方法3、systemd 或rc.local之类的,在脚本中设置
#!/bin/sh
iw reg set CN
exit 0
中国监管域下的非DFS WiFi 6 信道
设置 country_code=CN 后,可用的非DFS 5 GHz 信道:
5150-5350 MHz(UNII-1 和 UNII-2A,channel 36-64)
包括 channel 36(5180 MHz)、channel 40(5200 MHz)、channel 44(5220 MHz)等。
带宽:支持80 MHz。
功率:最大23 dBm,室内使用。
5725-5850 MHz(UNII-3,channel 149-165)
包括 channel 149(5745 MHz)、channel 153(5765 MHz)、channel 157(5785 MHz)等。
带宽:支持80 MHz。
功率:最大30 dBm,室内外使用。
推荐用
channel 149:80 MHz 中心频率索引 155。
channel 36:80 MHz 中心频率索引 42。
用systemd的办法:
nano /etc/systemd/system/set-regdomain.service
[Unit]
Description=Set regulatory domain to CN
After=network.target
[Service]
Type=oneshot
ExecStart=/bin/bash -c "/usr/sbin/iw reg reload && /usr/sbin/iw reg set CN"
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
另外,一个可用的udhcpd.service
[Unit]
Description=DHCP Server
After=network-online.target hostapd@uap0.service
Wants=network-online.target
[Service]
ExecStart=/usr/sbin/udhcpd -f /etc/udhcpd.conf
Restart=on-failure
RestartSec=5s
StartLimitInterval=0
[Install]
WantedBy=multi-user.target
dhcpd.conf
# udhcpd configuration for uap0
interface uap0
start 192.168.46.100
end 192.168.46.200
max_leases 10
opt router 192.168.46.30
opt lease 86400