openwrt WIFI 不同国家channel list设置

各个地区2.4G及5G信道一览表
美洲(FCC)

2.412 ~ 2.462 GHz:11个信道

5.15 ~ 5.35 GHz,5.725 ~ 5.825 GHz;12个信道

中国

2.412 ~ 2.472 GHz:13个信道

5.725 ~ 5.825 GHz:4个信道

ETSI

2.412 ~ 2.472 GHz:13个信道

5.15 ~ 5.35 GHz:8个信道5470 ~ 5725 MHz:11个信道

以色列

2.432 ~ 2.472 GHz:9个信道

5.15 ~ 5.35 GHz:8个信道

日本

2.412 ~ 2.472 GHz:13个信道(OFDM)

2.412 ~ 2.484 GHz:14个信道(CCK)

5.15 ~ 5.25 GHz:4个信道

韩国

2.412 ~ 2.472 GHz:13个信道

5.15 ~ 5.35 GHz,5.46 ~ 5.72 GHz,5.725~ 5.825 GHz:19个信道

北美洲(FCC除外)

2.412 ~ 2.462 GHz:11个信道

5.15 ~ 5.35 GHz,5.725~ 5.825 GHz:12个信道

日本2

2.412 ~ 2.472 GHz:13个信道

OFDM2.412 ~ 2.484 GHz:14个信道

CCK5.15 ~ 5.35 GHz:8个信道

新加坡

2.412 ~ 2.472 GHz:13个信道

5.15 ~ 5.35 GHz,5.725~ 5.825 GHz:12个信道

中国台湾

2.412 ~ 2.462 GHz:11个信道

5.25 ~ 5.35 GHz,5.725~ 5.825 GHz:7个信道

不重叠信道802.11a:12个信道 (FCC;其他法规域支持的802.11a信道数不同)FCC目前支持12个不重叠信道,根据FCC规则,有可能通过未来固件版本而支持23个信道802.11b/g:3个信道

WLAN信道列表是法律所规定的IEEE 802.11(或称为WiFi)无线网络应该使用的无线信道。

802.11工作组划分了两个独立的频段,2.4 GHz和4.9/5.8 GHz。每个频段又划分为若干信道,且每个国家自己制定政策订出如何使用这些频段。

https://blog.csdn.net/achejq/article/details/8958834
该文章末尾的List_of_WLAN_channels信息错误


最新的List_of_WLAN_channels,来自维基百科

https://en.wikipedia.org/wiki/List_of_WLAN_channels


//2.4 CountryRegion  5 CountryRegionABand
//iwpriv ra0 set CountryRegionABand=7
function init_CountryRegion(region)
{
    var region= parseInt(region);

    if(region == 0)
    {
        CHANNEL_TABLE_24G = [1,2,3,4,5,6,7,8,9,10,11]; //United States,Canada
    }
    else if(region == 1)
    {
        CHANNEL_TABLE_24G = [1,2,3,4,5,6,7,8,9,10,11,12,13]; //china australia
    }
    else if(region == 2)
    {
        CHANNEL_TABLE_24G = [10,11];
    }
    else if(region == 3)
    {
        CHANNEL_TABLE_24G = [10,11,12,13];
    }
    else if(region == 4)
    {
        CHANNEL_TABLE_24G = [14];
    }
    else if(region == 5)
    {
        CHANNEL_TABLE_24G = [1,2,3,4,5,6,7,8,9,10,11,12,13,14];
    }
    else if(region == 6)
    {
        CHANNEL_TABLE_24G = [3,4,5,6,7,8,9];
    }
    else if(region == 7)
    {
        CHANNEL_TABLE_24G = [5,6,7,8,9,10,11,12,13];
    }
    else
    {
        CHANNEL_TABLE_24G = [1,2,3,4,5,6,7,8,9,10,11]; //United States,Canada
    }

}

//2.4 CountryRegion  5 CountryRegionABand
//iwpriv ra0 set CountryRegionABand=10
function init_CountryRegionABand(region)
{
    var region= parseInt(region);

    if(region == 0)
    {
        CHANNEL_TABLE_5G  = [36,40,44,48,52,56,60,64,149,153,157,161,165];
    }
    else if(region == 1)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140]; //Europe
    }
    else if(region == 2)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,52,56,60,64];
    }
    else if(region == 3)
    {
        CHANNEL_TABLE_5G = [52,56,60,64,149,153,157,161];
    }
    else if(region == 4)
    {
        CHANNEL_TABLE_5G = [149,153,157,161,165]; //China
    }
    else if(region == 5)
    {
        CHANNEL_TABLE_5G = [149,153,157,161];
    }
    else if(region == 6)
    {
        CHANNEL_TABLE_5G = [36,40,44,48];
    }
    else if(region == 7)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165]; //U.S.A
    }
    else if(region == 8)
    {
        CHANNEL_TABLE_5G = [52,56,60,64];
    }
    else if(region == 9)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,52,56,60,64,100,104,108,112,116,132,136,140,149,153,157,161,165];
    }
    else if(region == 10)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,149,153,157,161,165];
    }
    else if(region == 11)
    {
        CHANNEL_TABLE_5G = [36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161];
    }
    else
    {
        CHANNEL_TABLE_5G = [36,40,44,48,149,153,157,161,165]; //USA
    }

}


function init_24g_channel_select()
{
    var index_country_region = wifi_country_region24g;
    if( (index_country_region != " ") && (index_country_region != undefined) )
    {
        init_CountryRegion(index_country_region); 
    }
    else
    {
        init_CountryRegion(0); //USA
    }

    var select_24g = $("#sz11gChannel");

    select_24g.append('<option value="0" id="auto">Auto</option>');   

    for(var i=0; i < CHANNEL_TABLE_24G.length; i++)
    {
         var value = CHANNEL_TABLE_24G[i];
         var id = "Channel" + CHANNEL_TABLE_24G[i];
         var value_show ="Channel " + CHANNEL_TABLE_24G[i];
         select_24g.append('<option value="'+value+'" id="'+id+'">'+value_show+'</option>');   
    } 
}

function init_5g_channel_select()
{

    var index_country_region = wifi_country_region5g;
    if( (index_country_region != " ") && (index_country_region != undefined) )
    {
        init_CountryRegionABand(index_country_region);
    }
    else
    {
        init_CountryRegionABand(10); //USA
    }

    var select_5g = $("#sz11Channel5G");

    select_5g.append('<option value="0" id="auto">Auto</option>');   

    for(var i=0; i < CHANNEL_TABLE_5G.length; i++)
    {
         var value = CHANNEL_TABLE_5G[i];
         var id = "Channel" + CHANNEL_TABLE_5G[i];
         var value_show ="Channel " + CHANNEL_TABLE_5G[i];
         select_5g.append('<option value="'+value+'" id="'+id+'">'+value_show+'</option>');   
    } 
}

这里写图片描述
这里写图片描述
这里写图片描述
来自:MTK_Wi-Fi_SoftAP_Software_Programming_Guide_v1.2.pdf


在openwrt中,一般修改config/wireless即可,会有脚本sh,自动设置到.dat文件里面

./etc/wireless/mt7603e/mt7603e.dat
./etc/wireless/mt7612e/mt7612e.dat
----------------------------------------------------
root@OpenWrt:/etc# cat config/wireless 
----------------------------------------------------
config wifi-device 'mt7603e'
        option type 'mt7603e'
        option vendor 'ralink'
        option band '2.4G'
        option beacon '100'
        option wifimode '9'
        option txpower '100'
        option channel '0'
        option disabled '0'
        option hidden '0'
        option wps_enabled 'enable'
        option wps_router_pin 'pin'
        option wps_mode 'PBC'
        option bw '1'
        option region '0'

config wifi-iface
        option device 'mt7603e'
        option ifname 'ra0'
        option network 'lan'
        option mode 'ap'
        option ssid 'FURRIONAP_2660F8'
        option instance '1'
        option wmm 'enable'
        option encryption 'psk-mixed+ccmp'
        option key 'FA2660F8'

config wifi-device 'mt7612e'
        option type 'mt7612e'
        option vendor 'ralink'
        option band '5G'
        option channel '0'
        option autoch '2'
        option disabled '0'
        option txpower '100'
        option hidden '0'
        option wifimode '14'
        option bw '2'
        option wps_enabled 'enable'
        option wps_router_pin 'pin'
        option wps_mode 'PBC'
        option aregion '10'

config wifi-iface
        option device 'mt7612e'
        option ifname 'rai0'
        option network 'lan'
        option mode 'ap'
        option ssid 'FURRIONAP_5G_FFFFFF'
        option encryption 'psk-mixed+ccmp'
        option key 'FAFFFFFF'
        option instance '2'

config wifi-device 'radio0'
        option type 'mac80211'
        option channel '0'
        option hwmode '11g'
        option htmode 'HT20'

config wifi-iface
        option device 'radio0'
        option network 'wan0'
        option mode 'sta'
        option ssid 'wifi'
        option encryption 'psk2'
        option key 'wifiwifi'
        option ifname 'wlan0'
root@OpenWrt:/etc# grep -rn "region"  ./etc/config/wireless 
16:     option region '0' //2.4G
43:     option aregion '10'  //5G
root@OpenWrt:/etc# 

配置文件在:
mt7603e 2.4G
mt7612e 5G

CountryRegion 0  //USA 2.4G
CountryRegionABand 10//USA 5G
root@OpenWrt:/# grep -rn "CountryRegion"  ./etc/wireless/
./etc/wireless/mt7603e/mt7603e.dat:4:CountryRegion=0
./etc/wireless/mt7603e/mt7603e.dat:5:CountryRegionABand=7
./etc/wireless/mt7612e/mt7612e.dat:4:CountryRegion=1
./etc/wireless/mt7612e/mt7612e.dat:5:CountryRegionABand=10

    //get 2.4g CountryRegion
    memset( src_country_region24g_1, 0x0, sizeof(src_country_region24g_1));
    get_system_output("uci get wireless.mt7603e.region", src_country_region24g_1, sizeof(src_country_region24g_1));


    //get 5g CountryRegionABand
    memset(src_country_region5g_2, 0x0, sizeof(src_country_region5g_2));
    get_system_output("uci get wireless.mt7612e.aregion", src_country_region5g_2, sizeof(src_country_region5g_2));

猜你喜欢

转载自blog.csdn.net/linbounconstraint/article/details/80899321