序言

没有人愿意时常被地痞无赖骚扰,没有人愿意被陌生人监视跟踪,但当今,这些事却在利益的驱动下以另一种形式进行着:侵入式以及恶意广告,未经用户允许的隐私数据上传,令人反感但从未停止。为了摆脱这些广告和跟踪,我们可以在浏览器中安装广告拦截插件,移动设备上却一直少有开箱即用的优质广告拦截软件。Blokada,则为此而生。

Blokada 是一款适用于安卓和 iOS 设备的全局广告、跟踪拦截软件。与同类软件 AdGuard 一样,提供了三种功能:DNS,主机过滤和代理,但不同的是,Blokada 开源自由,DNS 和广告过滤功能完全免费,不用担心「监管者」犯罪,也不用支付高额的订阅费。

图片,界面

一、原理

通过越狱、Root 的方式,修改系统文件或者加载模块来过滤广告请求固然高效,但操作难度不低,对系统的更新也可能有影响。Blokada 使用的方案是本地代理,利用系统提供的 VPN 接口,接管所有应用的网络请求,应用用户设置的规则处理这些请求,从而实现广告过滤和跟踪拦截功能。如下图所示,整个过程在本地完成,不会上传数据,不存在第三方服务商:

图片,流程

这种方法就体验来看,有好有坏。坏处是应用需要一直运行在后台,一方面,这对于一些国内定制系统来说,并不是什么容易的事。我测试下来,即使将应用加入内存清理白名单,电池设定为「无限制」,并且锁在任务界面,还是有可能被清理掉;另一方面,挂在后台也带来了额外的耗电问题。另外,由于已经占用了 VPN 接口,Blokada 一般不能和其他 VPN 服务一起使用。好处是不需要时可以随时关闭,大不了直接卸载,规则也可以随时添加,实时生效。相对于 AdGuard Home 等基于路由器的服务,运行在移动平台的 Blokada 可以适用于各种网络环境。

二、设置

软件 iOS 版可以通过苹果商店下载,安卓版虽然上架了 Google Play,但为了通过审核(解释)并非全功能版本,建议在官网或者 F-Droid下载最新版。iOS 版本开发晚于安卓版,一些功能可能有细微区别,以下内容基于安卓平台。

软件主要通过 DNS 和主机过滤两个功能去除广告和跟踪。DNS 负责将域名和 ip 地址匹配,手机的 DNS 默认由运营商定义,运营商则可能会借此投放一些广告。从软件主界面点击「DNS」,然后选择你认为合适的 DNS 服务商,最后点击启用 DNS 即可生效。有两点需要注意,其一,软件默认选中的「Default」并不是系统默认的 DNS 服务,而是「1.1.1.1」,停用软件 DNS 服务的入口在界面最上方。其二,软件提供的 DNS 列表中的大部分在国内访问体验并不好,可以试一试「AdGuard DNS」,你也可以在「添加新的 DNS」自定义一些国内口碑速度口碑都不错的公共 DNS。

图片

进入「广告过滤」-「主机列表」设定过滤规则。默认选中了「Energized Blu」,能过滤不少东西,但远远不够。建议还添加的下面这些规则列表:

  1. 如果你使用这些机型:三星,Samsung Blocker,小米,Xiaomi Blocker;
  2. 可以添加的增强规则:Goodby Ads,AdAway;
  3. 屏蔽常见的成人内容:StevenBlack Unified;
  4. 如果使用这些网站:Youtube Ad Blocker,Social hosts file(用于 Facebook)

如果你觉得默认的列表还不够的话,可以去 FilerLists 或者 GitHub 上搜索「Ad Host」看一看,里面大概还有几千多个列表可供使用。选中某个列表,复制「View」的链接添加在「新建一个 Host 列表」中即可。如果在使用过程中遇到某个想要屏蔽的请求,可以在「主机记录」中选中记录,点击「阻止」。

图片

添加规则列表越多,软件内存和电量消耗越多,5 个以内都是可以接受的,几乎感知不到额外的耗电。

三、使用

一切设定完成后,在主界面激活 Blokada,并允许创建 VPN,程序就会开始运行。在「主机记录」展示了所有允许和屏蔽的网络请求。然后你会发现,许多程序的广告的不见了,一些运行的后台的软件做的小动作一览无遗。

效果图片

在国内定制的系统中,为了保证软件的稳定运行,建议在软件的设定中开启「开机自启动」和「常驻通知栏」,并且将软件加入一些「优化」软件的白名单。最重要的是,在系统设置的 VPN 设置中,开启「始终开启的 VPN」,这样当软件被清理时,你会第一时间得到通知。

设置

当然,屏蔽也可能过火,如果遇到了某个网站无法打开,尝试关闭 DNS 服务;如果遇到某个应用加载异常,页面无法显示,可能需要程序「应用程序」设置中添加进屏蔽白名单中。

也不要期待这个软件能屏蔽所有的广告和跟踪,一些预加载的广告,和一些被设计为应用一部分的广告是无法被屏蔽的;有一些软件功能也依赖于广告,屏蔽反而会导致应用功能异常。

如果在使用中遇到其他的问题或者有任何建议,可以访问软件的官方社区或者 GitHub