用 AdGuard Home 提升上网体验、降低延迟并加强隐私保护

大家好,我是万一。今天和大家聊聊如何用 AdGuard Home(以下简称 AGH)提升上网体验、降低延迟并加强隐私保护。本文把我平时视频里的要点、安装与配置流程、常见误区和实战建议都整理成一篇可复用的博客文章,适合想从零开始部署与调优的朋友。


1. 为什么要用 AdGuard Home?

  • AGH 不是「万能去广告器」,但它在 DNS 层的请求处理与隐私保护上非常强大。
  • 优点:统一管理局域网 DNS、加密 DNS 支持、缓存加速、阻断恶意/跟踪域名、可以显著降低某些场景下的域名解析延迟。
  • 局限:在网页渲染层或应用内部嵌入式、动态或加密的广告,DNS 层往往无能为力(这种广告需要浏览器/应用级的拦截)。

2. 常见误解与实验结论

很多人把 AGH 简化成“广告过滤器”,认为装了它就没有广告了。实测与结论如下:

  • DNS 层能很好拦截静态广告域名与跟踪域名,但无法覆盖嵌入式、动态生成或完全在 HTTPS/应用内处理的广告。
  • 实验流程:

    1. 在 AdBlock 官方测试页(AdBlock Tester)不使用任何过滤器测一次分数。
    2. 仅启用 AGH 的规则再测。
    3. 使用第三方规则集测。
    4. 仅使用浏览器插件(如 uBlock Origin)测。
  • 结论:AGH 在广告拦截上是“粗筛”,浏览器插件是“精确拦截”。两者可以互补,但不要指望 DNS 层做到和浏览器插件同等的精度。

附:uBlock Origin 离线安装教程

  1. 下载 uBlock Origin.crx
  2. 浏览器输入 chrome://extensions/ → 开启开发者模式
  3. .crx 拖入 Chrome 即可安装

3. 安装方式概览

  • OpenWrt 插件(适合家用路由器)
  • NAS 上 Docker/Compose 部署
  • Windows 桌面运行
  • Linux 云服务器部署

4. OpenWrt 部署与重定向模式

选项含义何时使用
AGH 独立运行测试阶段
作为 dnsmasq 上游客户端 → dnsmasq → AGH → 上游推荐,保留 DHCP/主机名解析
重定向 53 到 AGH路由器拦截所有 53 请求转 AGH想透明使用 AGH,但保留 dnsmasq
用 53 替换 dnsmasq停掉 dnsmasq,AGH 接管 53想让 AGH 全权接管 DNS

推荐:选 作为 dnsmasq 上游重定向到 AGH


5. 关键配置详解

5.1 端口

  • Web UI 默认 80 → 可改 8080
  • DNS 默认 53 → 若冲突可改 5353

5.2 上游 DNS

  • 常规 DNS:快(如 223.5.5.5)
  • 加密 DNS:隐私好(DoH/DoT/DoQ)
  • 建议:速度优先用运营商 DNS,隐私优先用加密 DNS

5.3 请求方式

  • 推荐 并行请求 (Parallel)

5.4 后备 DNS

- 可填多个,如:
223.5.5.5 2400:3200::1 h3://dns.alidns.com/dns-query

- 加密上游必填,如 `1.1.1.1` 或 `8.8.8.8`
 5.6 其他
- 无 IPv6 环境 → 勾选禁用 IPv6
- 缓存保持默认

---
 6. 测试与验证

- `nslookup` / `dig` 验证是否走 AGH
- 对比不同上游 DNS 的解析速度
- AdBlock 测试页验证广告拦截效果

---
 7. 规则与过滤器

- 建议少量、可信的隐私/跟踪规则
- 不推荐加载过多去广告规则
- 高精度广告拦截 → 配合浏览器插件

推荐规则:
https://gcore.jsdelivr.net/gh/217heidai/adblockfilters@main/rules/adblockdnslite.txt

  1. 常见问题
  • 广告没拦干净? → DNS 层无法拦截应用层广告
  • 53/80 端口冲突? → 改端口或停用占用服务
  • OpenWrt 仪表盘数据为 0? → 检查 DHCP/DNS 转发
  • Windows 开机自启? → AutoStart.bat
  • 云服务器 53 被占用? → 改端口 + 防火墙转发

9. 快速安装流程

OpenWrt

bash
wget -O adx86.run https://alist.910501.xyz/d/AdGuardHome/adx86.run && sh adx86.run

Docker Compose


yaml
version: "3.8"
services:
  adguardhome:
    image: adguard/adguardhome:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "8880:80/tcp"
      - "3330:3000/tcp"
    volumes:
      - ./work:/opt/adguardhome/work
      - ./conf:/opt/adguardhome/conf

Windows

 下载 AdGuardHome\_windows\_amd64.zip
 解压运行 exe → 浏览器访问 `IP:3000`

Linux

bash
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v

10. 推荐 DNS 配置速查

  • 请求方式:并行
  • 上游:运营商 DNS(快)或加密 DNS(隐私)
  • Bootstrap:必填
  • 后备 DNS:多填几个
  • IPv6:无环境则禁用
  • 缓存:默认即可

11. Q&A

Q:AGH 能完全替代浏览器插件吗? A:不能,DNS 层只能粗筛广告,精确拦截需插件配合。

Q:如何判断上游 DNS 快慢? A:用 ping/mtr/dig 测试延迟与丢包。

Q:视频网站片头广告拦不掉? A:这是应用层广告,DNS 层无能为力。