文章目录
  1. 方案1
  2. AdGuard Home 部分
  3. Openclash 部分
  4. 方案2
  5. SmartDNS部分
  6. Openclash 部分
  7. AdGuard Home 部分
  8. 结语

因为我有进行广告屏蔽和路由扶墙的需求,但是学校里使用的是电信校园宽带需要Netkeeper拨号 所以无法直接使用现有大佬的固件,只能自己造轮子。

由于AdGuard Home和Openclash同时需要使用53端口进行dns服务,且会抢占路由本身自带的DNS服务器(dnsmasq);于是便需要手动设置使用别的端口,不然就是互相冲突 互相干扰的局面。

本设置方案所有DNS上游服务器都将使用阿里DNS( 223.5.5.5 & 223.6.6.6 )

方案1

阿里DNS -> AdGuard Home(5300) -> OpenClash(7874)转发至dnsmasq(53)

优点:性能占用极低,Openclash代理效果好;AdGuard Home 直接加速DNS查询

缺点:AdGuard Home 无法记录局域网内设备的查询信息(Openclash代理 只会显示127.0.0.1)

AdGuard Home 部分

前往 Openwrt -> 服务 -> AdGuard Home -> 手动设置,将dns项目下的port修改为5300(如上图,重启服务生效)

Openclash 部分

前往 Openwrt -> 服务 -> OpenClash -> 全局设置 -> DNS设置,本地DNS劫持 自定义上游DNS服务器 禁止Dnsmasq缓存DNS 都改为启用状态,允许IPV6类型DNS解析 网络环境及路由固件支持可开启,但可能会影响扶墙效果;在自定义上游DNS服务器中 填入服务器地址127.0.0.1端口5300(如上图,保存生效)

OpenClash会自动修改Openwrt设置,将本地dnsmasq的53端口转发至7874;可在 Openwrt -> 网络 -> DHCP/DNS 中查看到(如上图)

方案2

阿里DNS -> SmartDNS(6053) -> OpenClash(7874) -> AdGuard Home(5300)劫持dnsmasq(53)

优点:使用SmartDNS加速Openclash,AdGuard Home 可以正常记录局域网内设备的查询信息

缺点:可能会引发冲突(重启路由可解决),DNS查询速度相比方案1稍慢(可能套娃太多了吧),扶墙存在断流现象

SmartDNS部分

启用服务并在Upstream Servers中填入两个阿里DNS即可(如上图,保存生效);SmartDNS的默认使用端口便是6053无需修改,可以选择性关闭第二服务器

Openclash 部分

前往 Openwrt -> 服务 -> OpenClash -> 全局设置 -> DNS设置,本地DNS劫持 改为停用状态 自定义上游DNS服务器 和 禁止Dnsmasq缓存DNS 改为启用状态,允许IPV6类型DNS解析 网络环境及路由固件支持可开启,但可能会影响扶墙效果;在自定义上游DNS服务器中 填入服务器地址127.0.0.1端口6053(如上图,保存生效)

AdGuard Home 部分

参照方案1的AdGuard Home方法修改运行端口(可随意),在5300重定向修改为 使用53端口替换dnsmasq(可能会引发冲突) 或 重定向53端口到AdGuard Home(如上图,保存生效)

结语

我个人推荐使用方案1,AdGuard Home 能不能记录局域网内设备的查询信息 我觉得可有可无 能过滤广告就行,再说记录这个可能会侵犯他人隐私的吧。

网上所说的使用SmartDNS进行国内和国外的分流 我经过测试dnsmasq并没有辣么智能 最后ADH和Openclash变成了两个独立的服务(可能是我姿势不对),而且过于套娃 放弃

Tip:海豚湾机场是个废物,我感觉要跑路了,节点挂这么多可还行。