昨天看球的时候觉得网络有点卡,用Fing扫了一下发现个陌生的设备——一个厂商标识为鸿海科技的安卓手机。登进路由器查看连接状态,这个设备的WiFi信号还不到-90dBm,估计是隔壁老王。
我记得OpenWrt的wireless配置文件里有一个macfilter的选项,是过滤MAC地址用的,就去官方的Wiki上查用法。坑爹的中文Wiki竟然用英文告诉我“Not supported for the mac80211 type yet”。我知道中文资料向来不靠谱,但是没想到官方的中文资料竟然也这么不靠谱。我又去查英文Wiki,英文Wiki把macfilter选项放到了wifi-iface的部分,而不是wifi-device,并且说明“Supported for the mac80211 since r25105”。看来中文Wiki也不是不靠谱,只是更新地慢而已,至少四年没更新了。
----言归正传----
编辑/etc/config/wireless
vi /etc/config/wireless
在wifi-iface部分添加macfilter选项和maclist列表
option 'macfilter' deny
list 'maclist' 'XX:XX:XX:XX:XX:XX'
list 'maclist' 'XX:XX:XX:XX:XX:XX'
保存退出
重启无线网络设备
ifup lan
macfilter选项提供三个模式:默认是disable,表示不启用硬件地址过滤功能;allow表示白名单模式,即只允许列出的硬件地址连入网络;deny表示黑名单模式,即禁止列出的硬件地址连入网络。黑名单模式比较适合我,我不介意别人蹭网,觉得卡了才把蹭网的人踢出去。白名单模式麻烦的地方在于,每次连入一个新设备都要添加一个硬件地址。