如何在 Ubuntu 中更改 Atheros 无线 NIC 区域(监管域)?

Big*_*ack 5 wireless kernel atheros

OpenWrt中有一个CONFIG_ATH_USER_REGD变量允许用户覆盖无线网卡的默认设置。不幸的是,greping Arch 内核配置似乎没有这个功能,而且由于 OpenWrt 有相当多的黑客和补丁,我不知道这是他们添加的东西还是在 compat-wireless 中提供的东西。

Ubuntu 或 BackTrack-Linux 是否存在此设置?

更新 我认为 CRDA 不会对此有任何好处。

[10661.269580] cfg80211: Restoring regulatory settings while preserving user preference for: BO
[10661.269589] cfg80211: Calling CRDA to update world regulatory domain
[10661.276975] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain
[10661.276982] cfg80211: World regulatory domain updated:
[10661.276986] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[10661.276992] cfg80211:     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[10661.276998] cfg80211:     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[10661.277003] cfg80211:     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[10661.277008] cfg80211:     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[10661.277014] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[10661.277036] cfg80211: Calling CRDA for country: BO
[10661.285251] cfg80211: Ignoring regulatory request Set by user since the driver requires its own regulatory domain to be set first
[10661.285258] cfg80211: Regulatory domain changed to country: BO
[10661.285262] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[10661.285268] cfg80211:     (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 3000 mBm)
[10661.285273] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (N/A, 3000 mBm)
Run Code Online (Sandbox Code Playgroud)

进一步阅读http://wireless.kernel.org/en/users/Drivers/ath

Atheros 设备共享相同的监管实施。所有器件的 EEPROM 中均已编程了监管域代码。编程的监管域代码可以分为三种:

自定义世界监管域编程 ISO-3166-1-数字国家代码(有一些豁免)监管对组编号

num*_*er5 3

我昨天也遇到了和你一样的问题。经过一番实验,我找到了解决方案:

sudo apt-get install crda
sudo vi /etc/default/crda
Run Code Online (Sandbox Code Playgroud)

然后将该行更改REGDOMAIN=为您的国家/地区代码,例如。

REGDOMAIN=AU
Run Code Online (Sandbox Code Playgroud)

并重新启动。

顺便说一句,我的系统是 Ubuntu 12.04,具有 3.2.x 内核和 AR9485 无线。