Blocklist(自定义拦截)使用指南 —— hosts 源没覆盖到的广告自己补
Blocklist 是什么
Blocklist(v5/v6 之前叫 Blacklist)是 AdAway 里"无论如何都要拦"的域名列表。它的优先级高于所有 hosts 源——哪怕 hosts 源里根本没提到这个域名,Blocklist 里加了就一定拦。
Allowlist 和 Blocklist 的区别
两个都是"自定义规则",方向相反:
| Allowlist | Blocklist | |
|---|---|---|
| 效果 | 永远放行 | 永远拦截 |
| 优先级 | 高于一切(包括 Blocklist) | 高于 hosts 源但低于 Allowlist |
| 用途 | 解决误杀 | 补充漏拦 |
| 典型场景 | APP 打不开了,某个必需域名被拦 | 某个广告域名 hosts 源没覆盖到 |
优先级顺序:Allowlist > Blocklist > Hosts Sources
添加域名到 Blocklist
方法一:手动添加
- AdAway 主菜单 → 阻止列表(Blocked / Blocklist)
- 点右上角 +
- 输入主机名
- 保存
方法二:从 DNS 日志直接加
DNS 日志里长按某个主机名 → 选项菜单 → 加进 Blocklist。这是最常用的路径。
方法三:通配符批量拦
比如你发现某 APP 的广告都在 *.adsrv.example.net 下,不想一个个加:
长按 Blocklist 里的某条 → 编辑 → 改成 *.adsrv.example.net。一个通配符覆盖整个子域名族。
什么时候需要 Blocklist
场景 1:小众 APP 的广告域名 hosts 源没覆盖
主流 hosts 源(Steven Black、Energized)覆盖了前 95% 的广告域名,但小开发商、新兴的广告平台、国内小众广告网络可能不在列表里。用 DNS 日志抓出来后加 Blocklist。
场景 2:你想拦某个追踪域名但不想换激进 hosts 源
比如你只想拦 analytics.facebook.com 这一个,但 Steven Black 也会拦其他域名,Energized 更激进。用 Blocklist 加这一个就够了,保持 hosts 源干净。
场景 3:测试新域名
朋友给了你一个新发现的广告域名,想试试拦不拦得住——加进 Blocklist,应用,用 DNS 日志验证。
编辑、禁用和删除
- 长按一个条目 → 可以编辑、删除或禁用
- 禁用条目在你想临时停一下这个拦截时很方便——比如想看看这个域名到底是不是广告源,先禁用看 APP 里有没有广告出来
- 点条目本身直接切换启用/禁用
批量添加的技巧
AdAway 里没有"粘贴多行添加"的按钮,但有几个替代方案:
方案一:从 hosts 文件导入
如果你手上有一份别人整理好的 hosts 文件(比如某 APP 专用的拦截列表),先把它存成文件,然后在 Hosts Sources 里加"从文件导入"——这比一个个手动加快得多。
方案二:JSON 导入
AdAway 的规则列表支持 JSON 导入。可以导出一个空模板,手动填好条目再导回去。JSON 格式:
{
"blocklist": [
{"hostname": "tracker1.example.com", "enabled": true},
{"hostname": "*.ads.example.net", "enabled": true}
]
}
Blocklist 的管理纪律
- 每个域名都是你自己认可要拦的——不要把别人给的 blocklist 直接全加进来,看一眼再决定
- 用通配符代替大量子域名——能
*.ads.example.com就不要放 20 条单独的a.ads.example.com到t.ads.example.com - 定期精简—— hosts 源更新后可能已经覆盖了你手动加的某个域名,去重后删掉就好
- Allowlist 和 Blocklist 冲突时 Allowlist 优先——如果一个域名同时在两个列表里,结果是放行(Allowlist 优先级最高)
和 hosts 源的互补关系
AdAway 的哲学是:hosts 源提供最广的基础覆盖,Blocklist 解决 hosts 源没覆盖到的精准拦截,Allowlist 解决误杀。 三层配合。
- hosts 源 = 大网,捞大部分鱼
- Blocklist = 漏网之鱼,精准补
- Allowlist = 这是我的鱼,别捞
