[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac

测试平台:OpenWrt+MT7621

MTK WIFI芯片手册
文档:MTK_Wi-Fi_SoftAP_Software_Programming_Guide_v1.2.pdf

1.WiFi不重启拉黑名单设置
这种不重启即可拉黑,但是重启后不生效。

以2.4G为例: ra0 2.4G / rai0 5G

#清空WiFi访问控制设定
iwpriv ra0 set ACLClearAll=1
 
#设定访问控制策略为黑名单模式
# macfilter=disable(d)  AccessPolicy为0  使访问控制策略失效
# macfilter=allow     AccessPolicy为1  白名单模式
# macfilter=deny      AccessPolicy为2  黑名单模式
iwpriv ra0 set AccessPolicy=2
 
# 设定所有被拉黑的设备的MAC地址,此处假设AA-BB-CC-DD-EE-FF和FF-EE-DD-CC-BB-AA被拉黑
# MAC地址间以分号(;)分隔。
iwpriv ra0 set ACLAddEntry="aa:bb:cc:dd:ee:ff;ff:ee:dd:cc:bb:aa"

来着:openwrtrt2860v2下的wifi不重启拉黑名单设置

2.wifi黑名单重启有效

修改/etc/confing/wirelsee 配置文件
/trunk/base/package/ramips/drivers/mt7603e/files/mt7603e.sh 2.4G
/trunk/base/package/ramips/drivers/mt76x2e/files/mt7612e.sh 5G
[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac_第1张图片

 option AccessPolicy0 '2'   //1 白名单 2 黑名单 0 使访问控制策略失效
 option AccessControlList0 '58:E2:8F:2E:A2:AD' //MAC 地址,多MAC的格式:MAC_A;MAC_B;MAC_C;MAC_D


root@OpenWrt:~# 
root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'   //1 白名单 2 黑名单 0 使访问控制策略失效
        option AccessControlList0 '58:E2:8F:2E:A2:AD' //MAC 地址,多MAC的格式:MAC_A;MAC_B;MAC_C;MAC_D

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

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'
        option AccessPolicy0 '2'
        option AccessControlList0 '58:E2:8F:2E:A2:AD'

config wifi-iface
        option device 'mt7612e'
        option ifname 'rai0'
        option network 'lan'
        option mode 'ap'
        option ssid 'FURRIONAP_CCDD04'
        option encryption 'psk-mixed+ccmp'
        option key 'FACCDD04'
        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'

有一些openwrt的wireless代码里面没打开UCI配置
/trunk/base/package/ramips/applications/uci2dat/src/uci2dat.c
[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac_第2张图片

{"AccessPolicy0", "AccessPolicy0", {0}, hooker, "0"},
{"AccessControlList0", "AccessControlList0", {0}, hooker, NULL},
{"AccessPolicy1", "AccessPolicy1", {0}, hooker, "0"},
{"AccessControlList1", "AccessControlList1", {0}, hooker, NULL},
{"AccessPolicy2", "AccessPolicy2", {0}, hooker, "0"},
{"AccessControlList2", "AccessControlList2", {0}, hooker, NULL},
{"AccessPolicy3", "AccessPolicy3", {0}, hooker, "0"},
{"AccessControlList3", "AccessControlList3", {0}, hooker, NULL},

Tips: sed 如何删除mac

sed 's/dC:F0:90:9D:FC:23//i'    不分大小写将匹配到的字符串替换为空
sed 's/DC:F0:90:9D:FC:23\+;*//ig'     至少一次mac 至少0次;


root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'
        option AccessControlList0 '58:E2:8F:2E:A2:AD;28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'
        
root@OpenWrt:~# sed  -i 's/58:E2:8F:2E:A2:AD\+;*//ig'  /etc/config/wireles

root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'
        option AccessControlList0 '28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'
        option AccessControlList0 '58:E2:8F:2E:A2:AD;28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

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

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'
root@OpenWrt:~# 
root@OpenWrt:~# 
root@OpenWrt:~# 
root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'
        option AccessControlList0 '58:E2:8F:2E:A2:AD;28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

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

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'
        option AccessPolicy0 '2'
        option AccessControlList0 '58:E2:8F:2E:A2:AD;28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

config wifi-iface
        option device 'mt7612e'
        option ifname 'rai0'
        option network 'lan'
        option mode 'ap'
        option ssid 'FURRIONAP_CCDD04'
        option encryption 'psk-mixed+ccmp'
        option key 'FACCDD04'
        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:~# sed  -i 's/58:E2:8F:2E:A2:AD\+;*//ig'  /etc/config/wireless
root@OpenWrt:~# cat /etc/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'
        option AccessPolicy0 '2'
        option AccessControlList0 '28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

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

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'
        option AccessPolicy0 '2'
        option AccessControlList0 '28:ED:6A:E9:AB:FB;58:11:22:2E:A2:AF'

config wifi-iface
        option device 'mt7612e'
        option ifname 'rai0'
        option network 'lan'
        option mode 'ap'
        option ssid 'FURRIONAP_CCDD04'
        option encryption 'psk-mixed+ccmp'
        option key 'FACCDD04'
        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:~# 

代码中记得转义字符\\

			snprintf(cmd, sizeof(cmd), "sed  -i 's/%s\\+;*//ig'  /etc/config/wireless", g_l2filter_params.l2filter_list[i].l2addr);
			my_printf(LOG_MODE_LEVEL_1, "%s(%d) cmd:%s \n",__FUNCTION__,__LINE__, cmd);
			system(cmd);
			system("sync");

realtek 平台设置wifi黑名单

[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac_第3张图片
[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac_第4张图片
[openwrt][WIFI] 1.WiFi黑名单设置 2.sed 如何删除文件里的mac_第5张图片

ifconfig wlan0 down
iwpriv wlan0 set_mib aclmode=2
iwpriv wlan0 set_mib aclnum=0
iwpriv wlan0 set_mib acladdr=0c1daf4de901
iwpriv wlan0 set_mib acladdr=0c1daf4de902
iwpriv wlan0 set_mib acladdr=0c1daf4de903
iwpriv wlan0 set_mib acladdr=0c1daf4de904
iwpriv wlan0 set_mib acladdr=0c1daf4de905
ifconfig wlan0 up

root@OpenWrt:/# cat /proc/wlan0/mib_staconfig
  Dot11StationConfigEntry...
    dot11Bssid: 34ba9a998899
    dot11DesiredSSID:(Len 16) Smart_Bro_998899
    dot11DefaultSSID:(Len 0) 
    dot11SSIDtoScan:(Len 16) Smart_Bro_998899
    dot11DesiredBssid: 000000000000
    dot11OperationalRateSet: 82848b960c1218243048606c
    dot11OperationalRateSetLen: 12
    dot11BeaconPeriod: 100
    dot11DTIMPeriod: 1
    dot11swcrypto: 0
    dot11AclMode: 2
    dot11AclNum: 1
    dot11AclAddr[0]: 0c1daf4de959
    Access control list...
         hwaddr: 0c1daf4de959(deny)
    dot11SupportedRates: 0xfff
    dot11BasicRates: 0xf
    dot11RegDomain: 3
    autoRate: 1
    fixedTxRate: 0x0
    swTkipMic: 1
    protectionDisabled: 0
    olbcDetectDisabled: 0
    nmlscDetectDisabled: 0
    legacySTADeny: 0
    fastRoaming: 0
    lowestMlcstRate: 0
    supportedStaNum: 8
root@OpenWrt:/# 

你可能感兴趣的:(openwrt,wifi)