Skip to content

AdGuard Home 去广告 DNS

访问地址

  • Web UI:https://dns.cong.in 或 http://〈Server2-IP〉:3001
  • 账号:congyin / 〈密码·见Vaultwarden〉

部署信息

  • 运行在:myserver2 Docker 容器(adguardhome)
  • DNS 端口:53(UDP/TCP)
  • DoH 端口:443(通过 Caddy 反向代理,https://dns.cong.in/dns-query
  • DoT 端口:853(DNS over TLS,尚未启用证书)
  • Web UI 端口:3001(容器内),Caddy 代理到 dns.cong.in

关键配置说明

  • AdGuard 配置 insecure_enabled: true:允许 HTTP 明文提供 DoH,由 Caddy 负责 TLS
  • 配置文件路径(宿主机):/opt/adguard/conf/AdGuardHome.yaml
  • mobileconfig 文件路径:/opt/adguard/work/mobileconfig/adguard.mobileconfig

已加载过滤器(7个)

过滤器说明
AdGuard DNS filter通用,约 16.5 万条规则
中文广告拦截 anti-AD专攻国内广告
EasyList国际广告通用
EasyPrivacy隐私追踪保护
AdGuard 手机广告APP 内广告
中文防骚扰垃圾/骚扰过滤
AdGuard 中文过滤器中文网站专项

各设备设置方法

iPhone(WiFi + 流量全覆盖,推荐)

iOS 不支持直接填 DNS 地址生效,必须安装描述文件。

  1. iPhone 用 Safari 打开https://dns.cong.in/mobileconfig/adguard.mobileconfig
  2. 提示「已下载描述文件」→ 去「设置」→「已下载的描述文件」→「安装」
  3. 输入锁屏密码确认
  4. 验证:「设置」→「通用」→「VPN 与设备管理」中看到「AdGuard Home 去广告」为已安装状态

安装后 WiFi 和蜂窝数据都走 AdGuard,无需任何其他配置。


Android 9+(WiFi + 流量全覆盖,推荐)

Android 支持私人 DNS(DoT),无需描述文件:

设置路径(各品牌略有不同):

  • 原生 Android:「设置」→「网络和互联网」→「私人 DNS」→「私人 DNS 提供商主机名」→ 填 dns.cong.in
  • 小米/MIUI:「设置」→「更多连接方式」→「私人 DNS」→ 填 dns.cong.in
  • 华为/鸿蒙:「设置」→「无线局域网」→ 点右上角菜单 →「DNS 设置」→「私人 DNS」→ 填 dns.cong.in
  • 三星 One UI:「设置」→「连接」→「更多连接设置」→「私人 DNS」→ 填 dns.cong.in

填好后 WiFi 和流量都生效。Android 8 及以下只能用路由器方案。


路由器(家里所有设备一起覆盖,含智能家居)

路由器改 DNS 是覆盖最广的方案,家里的电视、电脑、手机、平板全部生效,但只在家里 WiFi 下有效,出门走流量不生效

  1. 浏览器打开路由器后台(通常是 192.168.1.1 或 192.168.0.1)
  2. 找「局域网设置」或「DHCP 设置」
  3. 将「首选 DNS」改为 〈Server2-IP〉
  4. 备用 DNS 可填 119.29.29.29(腾讯 DNS,防止主 DNS 故障时断网)
  5. 保存并重启路由器

OpenWrt 路由器

bash
# 修改 DHCP 下发的 DNS
uci set dhcp.@dnsmasq[0].server='〈Server2-IP〉'
uci commit dhcp
/etc/init.d/dnsmasq restart

# 或直接编辑 /etc/config/dhcp,在 dnsmasq 段加:
# option server '〈Server2-IP〉'

小米路由器(MiWiFi)

「常用设置」→「局域网设置」→「DNS」→ 手动填 〈Server2-IP〉


覆盖范围对比

方案WiFi蜂窝数据设置难度
iPhone 描述文件点击安装即可
Android 私人 DNS填一个地址
路由器 DHCP DNS✅(全设备)改路由器设置

最佳组合:手机用描述文件/私人 DNS,路由器同时改 DNS 覆盖家里其他设备。


性能说明

AdGuard Home 非常轻量,不会因为使用人数多而卡死

  • 典型资源占用:CPU < 1%,内存 < 50MB
  • 处理能力:单核即可处理 每秒 1 万+ DNS 查询
  • 一个家庭全天的 DNS 请求量约 1~5 万次,对服务器几乎没有压力
  • 就算十几个人同时用也完全没问题
  • 真正的瓶颈是网络延迟(服务器在海外,响应时间约 50~150ms),不是服务器算力

Docker 管理

bash
# 查看状态
ssh myserver2 "docker ps | grep adguard"

# 重启
ssh myserver2 "docker restart adguardhome"

# 查看实时日志(含拦截记录)
ssh myserver2 "docker logs adguardhome -f --tail 20"

# 修改配置后重启
ssh myserver2 "docker restart adguardhome"

注意

  • 不要把 AdGuard DNS 设为自己的上游(会循环)
  • 上游 DNS 已配置为 quad9(https://dns10.quad9.net/dns-query
  • 如需排查是否生效:在 AdGuard Web UI 的「查询日志」里可以看到设备的请求

个人科研与运维文档 · 内容持续修订