为什么需要广告过滤?
浏览器装插件只能过滤网页广告,手机 App、电视、IoT 设备的广告管不了。AdGuard Home 是 DNS 级别的解决方案——在路由器层面拦截广告域名,全网所有设备自动生效。
实际效果:
- ✅ 手机 App 开屏广告消失
- ✅ 电视盒子广告过滤
- ✅ 网页弹窗、追踪器拦截
- ✅ YouTube 广告减少(配合规则)
- ✅ 提升网页加载速度,节省带宽
技术原理
|
|
部署步骤
第一步:创建项目目录
|
|
第二步:编写 docker-compose.yml
|
|
第三步:启动容器
|
|
第四步:初始化设置
- 浏览器打开
http://你的NAS-IP:3000 - 按向导设置管理员账号密码
- DNS 监听端口保持默认 53
第五步:配置上游 DNS
进入 设置 → DNS 设置 → 上游 DNS 服务器,添加:
|
|
国内优先走腾讯/阿里,速度快;Cloudflare/Quad9 作为备用。
第六步:加载广告过滤规则
进入 过滤器 → DNS 黑名单,添加以下规则:
| 规则名称 | 地址 | 规则数 |
|---|---|---|
| Anti-AD | https://anti-ad.net/easylist.txt |
12万+ |
| CJX’s Annoyance List | https://cjxlist.github.io/cjxlist.txt |
5万+ |
| AdAway Default Blocklist | https://adaway.org/hosts.txt |
5万+ |
| AdRules CN | https://raw.githubusercontent.com/banbendalao/ADgk/master/ADgk.txt |
6万+ |
总计 28万+ 条过滤规则。
第七步:路由器配置
进入路由器管理后台,将 DHCP 的 DNS 服务器 指向 AdGuard Home 所在设备的 IP。
以锐捷路由器为例:
- 登录路由器后台
- 网络设置 → DHCP 设置
- 主 DNS 服务器填 NAS IP(如
192.168.110.10) - 保存并重启路由器
管理面板功能
访问 http://NAS-IP:3000 可以:
| 功能 | 说明 |
|---|---|
| 仪表盘 | 实时查看查询量、拦截率、Top 域名 |
| 查询日志 | 查看每个 DNS 请求和拦截状态 |
| 黑名单 | 自定义屏蔽域名 |
| 白名单 | 误杀域名放行 |
| 客户端 | 查看各设备的请求统计 |
| 安全设置 | 恶意软件/钓鱼网站拦截 |
进阶配置
自定义屏蔽规则
在 过滤器 → 自定义过滤规则 中添加:
|
|
开启 DNS-over-HTTPS
在 设置 → DNS 设置 → 加密 DNS 中启用:
- 监听端口 443
- 配置 SSL 证书
- 支持 DoH/DoT/DoQ
按设备差异化策略
在 设置 → 客户端设置 中可以:
- 为不同设备设置不同过滤规则
- 某些设备跳过过滤(如 IoT 设备)
- 按设备查看统计数据
坑
⚠️ OrbStack 代理问题:OrbStack 会注入 http_proxy,必须在 compose 中显式清空,否则容器内网络异常。
⚠️ 端口冲突:如果 Mac 上已有 dnsmasq 或其他 DNS 服务占用 53 端口,需要先停掉或改端口。
⚠️ 路由器 DNS 缓存:修改路由器 DNS 后,设备可能需要重启或等 DHCP 租约过期才生效。可以手动在设备上刷新:
|
|
验证是否生效
|
|
