前言
Immortalwrt的一大特点是可以按需进行流量处理,比如干掉无孔不入的广告。在广告过滤方面,类似adblock、adguard-home等广为人知,早些年koolproxy也有不少人用过,一大特色是可以通过导入证书方式过滤https广告,不过随着koolshare论坛关闭渐渐没了消息。homeproxy虽然不是专门的广告过滤插件,但是它可以方便订阅规则集并按需处理流量,足以胜任广告过滤这一重任。
安装
opkg update
opkg install homeproxy
规则集
首先我们需要一些现成的广告规则集,目前我用到这两个:
- https://github.com/217heidai/adblockfilters
- https://github.com/privacy-protection-tools/anti-AD
将客户端切换至自定义路由模式,注意不要勾选IPv6支持和绕过中国流量,前者会代理局域网中所有IPv6流量,后者会让国内流量不经过处理,自然广告过滤无法生效。复制srs文件地址并添加到规则集,建议设置自动更新时间,及时与上游保持一致。如果不能保证github正常访问,上述项目也提供了镜像地址。
路由规则
在客户端设置 - 路由规则中新建一个,名称随意,比如 Block ,将上面两个广告规则集关联到该路由规则,并将路由规则的操作选择为拒绝。
DNS规则
新建一个DNS规则,名称随意,比如BlockAD,同样关联上面两个广告规则集。
故障排查
在使用过程中时常会遇到网络故障,比如使用chat.deepseek.com有时会提示连接已重置,一般而言过几分钟后故障会自行消失。连接已重置显然触发了homeproxy的广告拦截动作,不过奇怪的是规则文件中貌似没有上述域名。作为测试,我选中了路由规则以及DNS规则中不丢弃数据包选项,如果还是不行就尝试只保留一个广告过滤规则。