Mosdns + adguardhome +passwall ,实现 dns 国内外分流、bt 下载直连和 ipv6 正常使用

73 天前
 maxus
用了一段时间,速度很快,分享一下

系统环境:
openwrt 主路由,安装 MosDNS v5.3.1 ,adguardhome 核心版本:0.107.52 ,passwall 4.69-4

逻辑:
1 ,mosdns 国内外分流、DNS 缓存、防 DNS 泄漏,由 mosdns 包揽 openwrt 所有解析
2 ,adguardhome 屏蔽网站,可跟踪全屋访问的网站,上游 dns 设置为 mosdns
3 ,passwall 翻墙,bt 直连,上游 DNS 设置为 adguardhome

Mosdns 设置:
1 ,监听端口:5335
2 ,DNS 转发,不勾选
3 ,勾选,远程 DNS 首选 IPv4 、自定义国内 DNS 、Apple 域名解析优化
4 ,其他选项随意

adguardhome 设置:
1 ,后台设置:6060 重定向:选择 用 53 端口替换 dnsmasq

2 ,打开 AdGuardHome 进入安装向导,
点击 “开始配置”
a,网页管理界面,监听接口:选择 所有接口,端口:3000
b,DNS 服务器,监听接口:选择 所有接口,端口:5388
c,其他选项随意

3,管理页面设置:
a,上游 DNS 服务器 127.0.0.1:5335 (即 mosdns ),选择负载均衡
b,其他都不选不填,拦截模式选空 ip
c,DNS 缓存配置,全部留空不选(因为 DNS 缓存由 Mosdns 负责)
d,其他选项随意

passwall 设置:
1,DNS
a,选择 过滤代理域名 IPv6
b,过滤模式:选择,通过 UDP 请求 DNS
c,远程 DNS:自定义 127.0.0.1:5388 (即 adguardhome)
d,当使用中国列表外时的默认 DNS:选择 直连 DNS

2,高级设置
a,TCP 不转发端口:填写 BT 端口/ UDP 不转发端口:填写 BT 端口
b,TCP 转发屏蔽端口:不使用
c,UDP 转发屏蔽端口:QUIC
d,TCP 转发端口:常用的
e,UDP 转发端口:DNS
f,TCP 代理方式:Tproxy
g,其他不填不选

3 ,访问控制,点击添加
a,源地址,选择 bt 客户端的 ip 地址
b,前四项选择默认
c,TCP 转发端口:填写 BT 端口/UDP 转发端口:填写 BT 端口
d,TCP 代理模式:不代理/UDP 代理模式:不代理
e,TCP 节点:默认/UDP 节点:默认

Openwrt 的 DHCP/DNS 设置
1 ,服务器设置——常规设置:DNS 转发留空,其他默认
2 ,服务器设置——高级设置:DNS 服务器端口:5388 ,,其他默认

Openwrt 防火墙——自定义规则
```
iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
[ -n "$(command -v ip6tables)" ] && ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
[ -n "$(command -v ip6tables)" ] && ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
```

ios adguardhome 管理 app https://apps.apple.com/us/app/adguard-home/id1667119601?l=zh-Hans-CN
5762 次点击
所在节点    DNS
56 条回复
kidxiang
71 天前
@864766428 求 dae 在 openwrt 部署的教程
abolast
71 天前
我这种在 dnsmasq 里面填写本地运营商 dns 的,看到你用过这么多 dns 软件,我简直两眼一抹黑。
不过,只要不搞旁路由,折腾什么都应该理解万岁
abolast
71 天前
@kidxiang 大鹅有 dead 可以用,这个带了 webGUI ,安装就是一个包的事情。不过,需要编译的时候把 eBPF 带上。面前 immortalwrt 就自带了 eBPF
zhsama
71 天前
佬,使用你上述的配置,直接无法科学了

除了 adg 的 dns 端口不同,其他完全一致,如何排查问题呢

HalloCQ
71 天前
@Kale #18 不是不能,是你不会。搞个脚本定时更新白名单或者黑名单
Kale
71 天前
@HalloCQ #25 那为什么不用 modns 啊
xycost233
71 天前
mos 怎么访问国外 dns 呢,单独配置 proxy 么
maxus
71 天前
@zhsama 国内网站正常访问吗? AdGuard 各个客户端流量可以正常显示吗
maxus
71 天前
@xycost233 mosdns 默认国内外分流解析 DNS ,有个国内域名和 ip 库,匹配的直接国内解析,不匹配的国外解析
xycost233
68 天前
@maxus #29 国外解析也是走 proxy 到谷歌 dns 对吧,类似于国内白名单?不在白名单的都走国外解析?如果代理挂了岂不是很多没有被墙的网站都访问不了了
zhsama
68 天前
@maxus #28 境内正常、adg 可以显示各个客户端的请求
Zoyo94
68 天前
#### 看了好多人问 5388 端口,证明你们不理解「重定向:」是干啥的。
#### 我一直用的就是 ADH+mosDNS+OpenClash 这种方案。
#### 配置和 up 相同只是 passwall 换成 OpenClash 。
HalloCQ
68 天前
@Kale #26 mosdns 好像不支持自动 ecs ,没发部署到公网服务器。adguardhome 支持的很好
batilo
68 天前
这样配置好乱
maxus
68 天前
@zhsama 翻墙服务器的域名,要直连,在 mosdns 设置为本地 dns 解析
maxus
68 天前
@xycost233 需要保持正常的啊
Kale
68 天前
@HalloCQ #33 搜索 Easymosdns ,支持公网。致动 ECS
HalloCQ
68 天前
@Kale 很早前用过,他使用的是 mosdns v4 版本,不支持现在的 v5 版本。mosdns 作者有说过,v4 版本的 mosdns v4 处理的并不好
HalloCQ
68 天前
@HalloCQ 很早前用过,他使用的是 mosdns v4 版本,不支持现在的 v5 版本。mosdns 作者有说过,v4 版本的 mosdns ecs 处理的并不好
agon1012
67 天前
youtube 的广告可以拦截吗?我之前配置了好多方案都不得行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1070277

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX