V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sidkang
V2EX  ›  宽带症候群

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

  •  
  •   sidkang · 2021-06-09 14:09:22 +08:00 · 830 次点击
    这是一个创建于 1298 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近尝试在局域网建立 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 上提供
    第 1 条附言  ·  2021-06-10 02:37:46 +08:00
    最后的方案是,Surge Mac -> Adguard Home -> mosdns -> DNS 服务器这样的方案

    Adguard Home 负责去广告,mosdns 负责 DNS 解析,境外部分通过 Surge 隧道解析
    12 条回复    2021-06-21 16:53:02 +08:00
    titanium98118
        1
    titanium98118  
       2021-06-09 14:23:01 +08:00   ❤️ 1
    可以,如果是透明代理:
    iptables -t nat -A OUTPUT -p tcp -d 208.67.222.222/32 --dport 443 -j REDIRECT --to-ports 1080
    如果是 tunnel,那加路由表
    smileawei
        2
    smileawei  
       2021-06-09 14:36:00 +08:00   ❤️ 1
    dnsmasq + gfwlist

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

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

    大致的解析流程(假设该域名是一个无名国外网站):
    1. 域名既不在国内直连白名单(比如 bilibili )又不在常用国外域名名单里(比如 google stackoverflow )
    2. 通过默认国内 dns 解析(比如 dnspod,alidns ),拿到的 ip 如果是非大陆 ip,那么会将域名发送到远程代理服务器解析,国内 dns 解析出来的结果仅仅用于判定是否把域名发往远端解析。
    taobibi
        8
    taobibi  
       2021-06-09 15:01:47 +08:00   ❤️ 1
    五楼的 dnscrypt-proxy 是个好选择,而且 openwrt 有现成的插件、
    sidkang
        9
    sidkang  
    OP
       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
        10
    smileawei  
       2021-06-09 16:36:29 +08:00
    另外,如果你远端服务器是自己可以控制的话,建议用 wireguard 。UDP 的速度,谁用谁知道。
    billytom
        11
    billytom  
       2021-06-09 17:24:43 +08:00
    DOT+Smartdns 是正解,你那个需求不需要用到 Adguardhome,对岸的查询中转服务器可用 ADguardhome 来做
    diskerjtr
        12
    diskerjtr  
       2021-06-21 16:53:02 +08:00
    你这需求一个 Adguard Home 就能解决了啊。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2878 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:06 · PVG 17:06 · LAX 01:06 · JFK 04:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.