前言

小棉袄每周都有几节网课,一不注意她就在那刷抖音,哔哩哔哩,关键是学校的作业都不完成就去玩,每次都搞到晚上十二点睡觉,早上起点起不来。
没办法,只能针对上课的电脑做下控制,我发现之前 OpenWrt 的上网时间管控是对设备通断网络,并不能特定的网址过滤。
于是我就编译测试了几款插件,发现还是有不少问题。

网址过滤

开源地址:https://github.com/Lienol/openwrt-package/tree/main/luci-app-control-weburl
weburl 这个是编译的时候管控里面的一个网址过滤,我打开后发现在关键词里输什么都不好使。
weburl
我关闭了软硬件加速,包括卸载了 TurboACC 网络加速的插件,还是无法过滤。

家长控制

开源地址:https://github.com/sirpdboy/luci-app-parentcontrol
后来看到了这个插件:parentcontrol。编译后可以看到家长控制的插件。
第一个页面是时间控制,其实和之前管控里的一样,对某一个设备,在特定的时间关闭或打开网络,这是有效的。
parentcontrol1
第二个页面是网址过滤,我测试了一下,一样没有效果。
parentcontrol2
第三个页面是协议过滤,我没这方面的需求,所以没有测了。
parentcontrol3

应用过滤

后来我搜到了一个收费的插件,当然,基本功能都是免费的,只是针对特征库要求比较多的用户有 VIP 服务:永久会员 39 元。
开源地址:https://github.com/destan19/OpenAppFilter
编译后服务里有个应用过滤插件,用户列表:
oaf
家里所有联网设备都有识别,当然不一定准确,比如我的tplink监控,就识别出了经常访问淘宝和抖音。
oaf1
过滤开关,过滤的网址,包括聊天游戏购物等等,常用的国内网站基本都有,国外的基本没有。
oaf2
用户配置,如果选择了自动配置那每台设备都会过滤,手动模式就添加需要过滤的设备。
oaf3
过滤时间设置。
oaf4
特征库,VIP 收费就收在特征库,免费的库也会更新但比较慢,网址也比较少,目前是三月份更新的,一共过滤 294 个 app。
oaf5
默认都打开,不关闭加速过滤不了。
我测试后发现可以对单独设备进行过滤一些网址,开发者提供了免费的特征库,如果想要更多更新,可以购买 VIP 服务。
如果想自定义过滤网址,请往下看:
首先在这里下载免费的特征库:
网址:https://www.openappfilter.com/#/feature
解压后有三个文件,两个 bin 文件是特征库,可以看升级说明:
oaf6
继续解压 bin 文件,可以看到一个 feature.cfg,一个 app_icons,很好理解了。
oaf7
打开 cfg 文件进行编辑,编辑完成后再打包成 bin 文件,上传:
oaf8
至于如何添加网址,开发者有说明:
https://github.com/destan19/OpenAppFilter/wiki/self%E2%80%90define-feature-file

结论

对于家庭的网络管控,如果是对特定设备进行上网时间的控制,上网时间控制 timecontrol 和家长控制 parentcontrol,都是可用的。
对特定设备进行特定的网址进行过滤,只有应用过滤 openappfilter 好使,当然也不排除还有其他的开关我没设置好,比如防火墙的配置,但作为普通使用者,应用过滤上手即用。
应用过滤 openappfilter 的问题:

  1. 过滤的网址,可能还会引起其他的网址无法访问,比如我屏蔽了几个国内视频网站,接着 Google 就无法搜索了。原因不明,我也没找到解决方法。
  2. 应用过滤这个插件会影像 Docker,如果应用过滤启动了,那么容器会报 500 错误,只能先启动容器,再开启应用过滤插件。