旁路由方案二:AdGuardHome + OpenClash 完整配置指南
概述
本方案在主路由之外部署旁路由(iStoreOS),由 AdGuardHome 做 DNS 入口广告过滤,OpenClash(Mihomo 内核)做分流代理,实现全屋设备无感知的上网代理与去广告。
网络拓扑
设备角色
| 设备 | IP 地址 | 角色 |
|---|---|---|
| 主路由 | 192.168.6.1 | DHCP 服务器、流量转发 |
| 旁路由 (iStoreOS) | 192.168.6.11 | 网关、代理(OpenClash) |
| AdGuardHome | 192.168.6.12 | DNS 广告过滤 |
DNS 链路
客户端 → AdGuardHome (192.168.6.12) → OpenClash DNS (192.168.6.11:7874) → 国内 DNS / 境外 DNS
流量链路
客户端 → 主路由 (192.168.6.1) → 旁路由 OpenClash (192.168.6.11) → 直连 / 代理 → 互联网
关键配置要点
主路由 (192.168.6.1)
- DHCP 网关指向旁路由:
192.168.6.11 - DHCP DNS 指向 AdGuardHome:
192.168.6.12 - DHCP 服务保持开启(主路由负责分配 IP)
旁路由 iStoreOS (192.168.6.11)
网络接口:
- 自身 DNS 设为
127.0.0.1(走本机 OpenClash) - DHCP 服务必须关闭(主路由负责)
- IPv6 建议关闭(避免泄漏)
dnsmasq:
- DNS 重定向关闭(不劫持 53 端口)
- 忽略解析文件(resolv)勾选(防止 WAN 口覆盖 DNS)
防火墙:
- 转发/入站/出站全部 ACCEPT
- IP 动态伪装(Masquerade)开启(确保回程流量正确)
OpenClash 配置
运行模式:Fake-IP(增强)+ 规则模式 + 大陆绕过
DNS(核心):
- 本地 DNS 劫持:关闭(AdGuardHome 入口,不需要劫持)
- 自定义上游 DNS:启用
- nameserver:
223.5.5.5、119.29.29.29(国内解析) - fallback:
tls://1.1.1.1:853、tls://8.8.8.8:853(境外防污染) - fallback-filter:geoip=true, geoip-code=CN
AdGuardHome (192.168.6.12)
上游 DNS(核心):只填 192.168.6.11:7874(OpenClash DNS 端口)
三个必须关闭:
- 并行请求:关闭(只有一个上游)
- DNS 缓存:设为 0(Fake-IP 模式不能缓存,否则假 IP 过期后连接失败)
- DNSSEC:关闭(Fake-IP 返回的假地址无法通过 DNSSEC 验证)
开关总览
| 设备 | 配置项 | 状态 |
|---|---|---|
| 主路由 | DHCP 服务 | 开启 |
| 主路由 | DHCP 网关 → 192.168.6.11 | 设置 |
| 主路由 | DHCP DNS → 192.168.6.12 | 设置 |
| 旁路由 | DHCP 服务 | 关闭 |
| 旁路由 | 自身 DNS → 127.0.0.1 | 设置 |
| 旁路由 | DNS 重定向 | 关闭 |
| 旁路由 | 防火墙转发 | ACCEPT |
| 旁路由 | IP 动态伪装 | 开启 |
| OpenClash | 本地 DNS 劫持 | 关闭 |
| OpenClash | 自定义上游 DNS | 开启 |
| AdGuardHome | 上游 DNS → 192.168.6.11:7874 | 设置 |
| AdGuardHome | 并行请求 | 关闭 |
| AdGuardHome | DNS 缓存 | 关闭 (0) |
| AdGuardHome | DNSSEC | 关闭 |
验证方法
- 清除 AdGuardHome 缓存 + 本地
ipconfig /flushdns nslookup www.taobao.com:Server 应为 192.168.6.12,返回 Fake-IP 地址段 (198.18.x.x)- 访问国内网站验证速度,访问境外网站验证代理
- 排查命令:
netstat -tlnp | grep 7874(确认 OpenClash DNS 端口)
常见问题
⚠️ 完全无法上网
检查主路由 DHCP 网关是否正确指向旁路由,以及旁路由防火墙转发是否为 ACCEPT、IP 动态伪装是否开启。
📝 能上网但 AdGuardHome 无过滤记录
客户端可能使用手动 DNS 或浏览器开启了 DoH。关闭浏览器的”安全 DNS / DNS over HTTPS”功能。
📝 国内网站慢
确认 OpenClash nameserver 只有国内 DNS,不要混入境外 DNS。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 lbq开发日志!