|
本帖最后由 bishuiwuhen 于 2020-4-1 09:42 编辑
最近折腾了一下K2P路由,发现padavan、pandorabox、openwrt cc都存在MAC地址实际生效个数存在限制问题,限制个数均为14个(测试的荒野无灯的padavan的5G设置mac地址是正常的,2.4G依然是14个限制),设置mac地址过滤(padavan叫无线访问控制)实际生效个数可以通过后文的查看命令得到,这个问题有可能是无线驱动读取.dat配置文件存在Bug。
查了一下MTK softap软件程序手册,发现可以通过命令方式添加mac地址白名单或者黑名单,可实现最大设置64个mac地址,据此,总结了设置MAC地址过滤设置的两种方法(后文附有两种方法的脚本):
方法一:通用方法(无线驱动命令)
该方法适用于所有使用MTK无线驱动的固件,如padavan(荒野无灯等)、pandorabox(Lintel)、openwrt cc(mleaf V1.7.2)等均可以通过上述代码实现无线MAC地址过滤(黑/白名单)功能,MAC地址的最大数目为64个(驱动限制)。
命令格式如下:
添加白名单命令(建议复制代码到文件中,给755权限执行,附件中有写好的脚本)
[/hide]
说明:
- AccessPolicy的值中,0为禁用,1为白名单,2位黑名单,ra0和rax0即2.4G和5G的内部接口,自己根据需求修改即可;
- 命令行输入可能有字符串长度限制,使用命令行可能无法一次添加64个;
- 运行完命令,规则即刻生效,不要重启\重载wifi等操作,重启\重载wifi会使设置的黑/白名单失效,切记!
查看已经设置的mac白/黑名单项,输入以下命令即可:
- iwpriv ra0 set ACLShowAll=1 #查看ra0对应网卡的mac过滤名单
- iwpriv rax0 set ACLShowAll=1 #查看ra0对应网卡的mac过滤名单
- dmesg #调用内核日志,查看设置mac条目
复制代码
设置成功的话,可以在内核日志中看到如下信息:
- =============== Access Control Policy ===============
- Policy is 1 : only the following entries are allowed to join this BSS
- =============== Access Control List ===============
- Entry #01: x1 x1 x1 x1 x1 x1
- Entry #02: x2 x2 x2 x2 x2 x2
复制代码
方法二、修改配置文件(存在bug)
本方法借助于驱动程序读取配置文件接口,如前所述,由于该部分存在bug,在使用中存在只能设置14个名单的问题。
mleaf的openwrt cc
可以通过手动修改*.dat配置文件的以下参数,然后手动重新载入wifi配置文件即可(载入配置文件命令参考下文)
- AccessPolicy0=1
- AccessControlList0=x1:x1:x1:x1:x1:x1;x2:x2:x2:x2:x2:x2
复制代码
AccessPolicy0的值中,0为禁用,1为白名单,2位黑名单
wifi驱动的配置文件一般在/etc/wireless、/etc/Wireless、/etc_ro/wireless等目录下,手动修改需谨慎
padavan
修改*.dat配置文件无法实现MAC地址过滤功能,需要使用nvram设置参数来实现,后文提供了设置脚本。
以将脚本放在/tmp路径为例,命令即
- /tmp/add_white_list.sh add xx:xx:xx:xx:xx:xx
复制代码
说明:
- 不同mac地址以空格分割,需要给脚本755权限;
- 执行完脚本以后需要手动去设置mac地址过滤页面点一下应用设置按钮(会自动生效并写入配置文件);
- 这种设置方法可以突破页面最多设置32条mac地址的限制,最多可添加64条,当然实际生效受之前所说的驱动bug影响,可能实际生效的只有14条;
- 此处提供脚本只提供添加功能,会覆盖之前的白名单设置,删除功能没有写完,目前并不能用,提供脚本旨在抛转引玉,想用的可以自己修改。
其他
wifi重载、重启命令
- wifi reload #重载配置文件
- wifi down #关闭wifi
- wifi up #开启wifi
复制代码
设置脚本、MTK手册及其他附件,有需求的可以下载
[/hide]
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|