局域网 DNS 服务器如何使用科学线路解析国外 ip?(或是否有必要?)

2021-06-09 14:09:22 +08:00
 sidkang
最近尝试在局域网建立 Pi-Hole 、Adguard Home 这样的局域网 DNS 解析服务,遇到了一些疑问,国内 ip 部分可以直联进行解析,那国外 ip 的部分是如何解决呢?
最近看到 GFW 对 DoH 、DoT 的解析也开始进行拦截,使用隧道应该是在所难免了,不过如何让 DNS 对境外的解析通过代理呢(直接设置 lxc 或 vm 的网关和 dns 到 surge 地址么,感觉怪怪的,试下来也没成功= =),有点纳闷,缺少一些关键字进行搜索查询= =

或者 DNS 服务器是否有其实际意义呢,在已经使用 surge 充当旁路由角色的前提下,毕竟境外 DNS 请求已经会通过科学线路远端解析了。

求解惑,谢谢各位。

目前局域网设备:一台 3865U 充当软路由+交换机、一台 nuc 黑果+surge 充当局域网网关+日常使用,一台 5800x PVE Host 主机,三台都是 24x7,DNS 服务应该会在 nuc 或者 pve 上提供
683 次点击
所在节点    宽带症候群
12 条回复
titanium98118
2021-06-09 14:23:01 +08:00
可以,如果是透明代理:
iptables -t nat -A OUTPUT -p tcp -d 208.67.222.222/32 --dport 443 -j REDIRECT --to-ports 1080
如果是 tunnel,那加路由表
smileawei
2021-06-09 14:36:00 +08:00
dnsmasq + gfwlist

gfwlist 的域名指给 8.8.8.8
而且用 nuc 黑果+surge 做透明网关太奇怪了。你都有软路由了。openwrt 上可以装很多东西。
sidkang
2021-06-09 14:40:52 +08:00
@titanium98118 感谢回复,我来查询一下相关名词,简单看下来似乎 surge 不太算透明网关,重点待会看看路由表的设置去
sidkang
2021-06-09 14:44:45 +08:00
@smileawei 感谢回复,我查一下这个组合~~

openwrt 的话目前在实践最小功能原则,之所以这样用是因为想实现一个便宜的千兆路由+2.5G 交换机的想法(在之前),可能之后会切换成简单的硬路由+2.5G 交换机这样的组合,所以应该不会再往上加功能,回头调整起来也比较麻烦
Greenm
2021-06-09 14:51:29 +08:00
我尝试了多个方案之后选择了 dnscrypt-proxy,但跟你不一定合适
ronman
2021-06-09 14:58:07 +08:00
lostberryzz
2021-06-09 14:59:07 +08:00
感觉没有必要弄一个单独的 DNS 解析服务,通常情况下解析出来的 IP 要能连接上才有意义,一般和 clash surge 之类的分流软件同时出现,而这些软件能够很好的支持你所期望的行为。

大致的解析流程(假设该域名是一个无名国外网站):
1. 域名既不在国内直连白名单(比如 bilibili )又不在常用国外域名名单里(比如 google stackoverflow )
2. 通过默认国内 dns 解析(比如 dnspod,alidns ),拿到的 ip 如果是非大陆 ip,那么会将域名发送到远程代理服务器解析,国内 dns 解析出来的结果仅仅用于判定是否把域名发往远端解析。
taobibi
2021-06-09 15:01:47 +08:00
五楼的 dnscrypt-proxy 是个好选择,而且 openwrt 有现成的插件、
sidkang
2021-06-09 15:16:47 +08:00
@lostberryzz @ronman @Greenm 感谢回复,我查了查 dnscrypt-proxy 确实是一个选择,软件本身也支持使用,纯粹就 dns 查询而言,使用 surge 以后其实再增加 dns 的意义不是特别大,毕竟 surge 本身已经支持通过隧道查询出口端解析 dns 的功能,也支持 DoH.

不过我之所以想要再建立一个 pi-hole 这样的 dns 服务其实主要是为了另外两个功能:1 、较为方便的解决 anti-ad 的问题,不够用的部分再通过 surge+ip 规则解决; 2 、能够方便的查看 dns 的解析情况,知道局域网客户端的访问详情,增加 block 或更细致的规则解决问题。

写着写着感觉好像有点创造需求的样子,anti-ad 实际靠 sureg 解决也不一定就很影响性能;第二个功能也比较玄乎,一两个月看一回的感觉,😄
smileawei
2021-06-09 16:36:29 +08:00
另外,如果你远端服务器是自己可以控制的话,建议用 wireguard 。UDP 的速度,谁用谁知道。
billytom
2021-06-09 17:24:43 +08:00
DOT+Smartdns 是正解,你那个需求不需要用到 Adguardhome,对岸的查询中转服务器可用 ADguardhome 来做
diskerjtr
2021-06-21 16:53:02 +08:00
你这需求一个 Adguard Home 就能解决了啊。。

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

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

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

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

© 2021 V2EX