为什么需要广告过滤?

浏览器装插件只能过滤网页广告,手机 App、电视、IoT 设备的广告管不了。AdGuard Home 是 DNS 级别的解决方案——在路由器层面拦截广告域名,全网所有设备自动生效。

实际效果:

  • ✅ 手机 App 开屏广告消失
  • ✅ 电视盒子广告过滤
  • ✅ 网页弹窗、追踪器拦截
  • ✅ YouTube 广告减少(配合规则)
  • ✅ 提升网页加载速度,节省带宽

技术原理

设备请求广告域名 → AdGuard Home 拦截 → 返回 0.0.0.0 → 广告加载失败
设备请求正常域名 → AdGuard Home 转发 → 返回真实 IP → 正常访问

部署步骤

第一步:创建项目目录

mkdir -p ~/docker/adguard
cd ~/docker/adguard

第二步:编写 docker-compose.yml

services:
  adguard:
    image: adguard/adguardhome:latest
    container_name: adguard
    restart: unless-stopped
    ports:
      - "53:53/tcp"      # DNS 服务
      - "53:53/udp"      # DNS 服务
      - "3000:3000"      # 管理面板
    volumes:
      - ./work:/opt/adguardhome/work    # 工作数据
      - ./conf:/opt/adguardhome/conf    # 配置文件
    environment:
      - http_proxy=      # OrbStack 代理兼容
      - https_proxy=
      - ALL_PROXY=

第三步:启动容器

docker compose up -d

第四步:初始化设置

  1. 浏览器打开 http://你的NAS-IP:3000
  2. 按向导设置管理员账号密码
  3. DNS 监听端口保持默认 53

第五步:配置上游 DNS

进入 设置 → DNS 设置 → 上游 DNS 服务器,添加: