AdGuard Home 配合 Clash 配置指南,DNS净化与代理组网实战

AdGuard Home 配合 Clash 可实现广告拦截与跨境访问双重需求,前者负责本地DNS净化,后者处理代理流量转发,本文详解部署流程、代理组类型选择及TUN模式配置。

AdGuard Home 与 Clash 协同原理

AdGuard Home 作为本地 DNS 服务器,可拦截广告域名并自定义解析规则;Clash 作为代理客户端,负责将流量转发至跨境节点,二者协同工作需要理解数据流向:设备发起 DNS 请求 → AdGuard Home 过滤广告域名 → 正常域名解析后转发至 Clash → Clash 根据规则匹配代理出口。

这种架构优势在于 DNS 层面广告拦截与代理层面流量转发分离,避免广告拦截规则与代理规则冲突。

安装与基础配置步骤

AdGuard Home 部署

AdGuard Home 支持 Docker、OpenWrt 路由器及独立服务器部署,以 Docker 为例:

docker run -d --name adguardhome \
  -v /opt/adguardhome/work:/opt/adguardhome/work \
  -v /opt/adguardhome/conf:/opt/adguardhome/conf \
  -p 53:53/tcp -p 53:53/udp \
  -p 3000:3000/tcp \
  --restart=always adguard/adguardhome

部署完成后访问 3000 端口完成初始化,将设备 DNS 服务器指向 AdGuard Home IP。

Clash 客户端配置

根据设备类型选择对应客户端:Windows 推荐 Clash Verge Rev,Mac 使用 ClashX,Android 选 FlClash,OpenWrt 路由器安装 OpenClash 插件。

获取节点订阅链接后,在 Clash 配置中填写订阅地址并启用自动更新。

Clash 核心概念详解

代理组类型选择

类型 原理 适用场景
select 手动选择节点 需要指定出口时使用
url-test 自动测速选择延迟最低节点 日常跨境访问
fallback 优先使用第一个可用节点 追求稳定性

日常使用建议 url-test 自动测速,重要会议场景切换至 select 手动指定专线节点。

TUN 模式与系统代理区别

  • 系统代理:仅处理 HTTP/HTTPS 流量,依赖应用主动设置代理,部分应用不支持
  • TUN 模式:在网络层接管所有流量(包括 UDP、游戏数据包),实现全局代理

跨境游戏或 UDP 需求场景必须启用 TUN 模式,普通网页访问系统代理即可。

分流规则优先级

Clash 规则按顺序匹配,优先级从高到低:

  1. DOMAIN(精确域名)
  2. DOMAIN-SUFFIX(域名后缀)
  3. DOMAIN-KEYWORD(域名关键词)
  4. IP-CIDR(IP 段)
  5. GEOIP(国家/地区)

国内域名使用 DIRECT 直连,海外域名走代理,广告域名使用 REJECT 丢弃。

YAML 配置示例

dns:
  enable: true
  listen: 0.0.0.0:5353
  enhanced-mode: fake-ip
  nameserver:
    - 223.5.5.5
    - 119.29.29.29
proxies:
  - name: "日本节点"
    type: ss
    server: jp.example.com
    port: 8388
    cipher: aes-256-gcm
    password: your-password
proxy-groups:
  - name: "自动选择"
    type: url-test
    proxies:
      - 日本节点
      - 香港节点
    url: http://www.gstatic.com/generate_204
    interval: 300
rules:
  - DOMAIN-SUFFIX,google.com,自动选择
  - DOMAIN-KEYWORD,ad,REJECT
  - GEOIP,CN,DIRECT
  - MATCH,自动选择

常见问题 FAQ

现象:开启 TUN 模式后无法连接内网设备
原因:TUN 模式接管全部流量,内网 IP 段被错误代理
解决方法:在规则中添加 IP-CIDR,192.168.0.0/16,DIRECT 放行内网段

现象:广告拦截生效但代理速度慢
原因:AdGuard Home 与 Clash DNS 配置冲突
解决方法:Clash 的 enhanced-mode 设为 fake-ip,AdGuard Home 仅做广告过滤不转发 DNS

现象:节点订阅更新后配置丢失
原因:手动修改了订阅转换后的配置
解决方法:使用 SubConverter 工具自定义转换规则,保留个人配置

节点选择建议

不同使用场景对节点要求不同:4K 视频需要高带宽专线,游戏需要低延迟节点,日常办公需要稳定连接,选择节点时关注延迟、带宽及稳定性指标,避免使用频繁掉线的低价服务。

通过 AdGuard Home 配合 Clash 实现广告拦截与跨境访问一体化配置,可显著提升网络体验,定期更新订阅和规则库,保持配置有效性。

您可以还会对下面的文章感兴趣: