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

大家自建的 DNS 是自己递归查询还是做分流转发到上游

  •  
  •   kincaid ·
    PRO
    · 2025 年 8 月 16 日 · 4864 次点击
    这是一个创建于 164 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚在别的板块吃完瓜,扯点闲的

    昨天看一个大佬发长文讲 DNS 的 SRTT 机制,但对于家用场景来看,自己递归的响应时间还是太长了,尤其是前几次甚至 dns 查询耗时能飞到 1000+ms ,所以想问问大家是转发还是自己递归

    个人是用 bind9 搭建的,每天从 https://www.internic.net/domain/root.zone 同步根区域数据,然后由 bind9 进行迭代查询,后面感觉受不了又在前面套了个 adguard 做乐观缓存

    想看看各位大佬都是怎么玩的,是自己递归还是转发到 119 一类的,用的 bind9 还是说 unbound 之类的,感觉效果怎么样
    36 条回复    2025-08-19 10:33:32 +08:00
    hectora
        1
    hectora  
       2025 年 8 月 16 日
    大佬发长文讲 DNS 的 SRTT 机制,这个有链接吗
    kincaid
        2
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    mangmaimu
        3
    mangmaimu  
       2025 年 8 月 16 日 via iPhone
    用运营商 dns ,有问题直接代理软件分流,国外域名直接 fakeip 用 vps 查询 dns
    KagurazakaNyaa
        4
    KagurazakaNyaa  
       2025 年 8 月 16 日   ❤️ 1
    转发到上游,试试 dnsdist ,挺好用的 https://www.dnsdist.org/index.html 配置文件语法是 lua
    kincaid
        5
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    @mangmaimu 我现在也是客户端上跑的代理软件,自建 dns 只是运营商有时候 dns 劫持搞的烦人
    kincaid
        6
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    laminux29
        7
    laminux29  
       2025 年 8 月 16 日
    大部分普通人与中小公司,自建 DNS 只有 2 个目的,第一是把内网设备对公网域名的请求拦截并转换为内网 IP ,第二是转发 DNS 请求给上级运营商。

    bind9 太难用了,不如用 dnsmasq ,配置简单,满足日常功能。
    mangmaimu
        8
    mangmaimu  
       2025 年 8 月 16 日 via iPhone
    @kincaid 我现在污染的十个手指头都数的过来,主要 surge 网络界面查问题很方便,singbox 之类的就难说了,自己弄地区优化全没了,不如运营商还快
    kincaid
        9
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    @mangmaimu 哈哈哈,我 bind9 搭在了内网,要不也有个坑,bind9 的社区版不支持 ecs ,没法玩
    COW
        10
    COW  
       2025 年 8 月 16 日
    clash dns 分流,国内域名走国内 DNS 服务器,国际域名 fallback 国际 DNS 服务器,内网访问时走 bind9 服务器,bind9 开启 fallback only 转发到 DNS 代理工具,由上游处理。
    COW
        11
    COW  
       2025 年 8 月 16 日
    adguard 用处主要在广告过滤,缓存作用有限
    ranaanna
        12
    ranaanna  
       2025 年 8 月 16 日
    完全没有这个必要的吧。再怎么玩“自己递归”也是一个非权威递归 dns ,性能和安全可能都比不上一把一把的公共递归 dns ,isp 提供的递归 dns 也不是完全不能用

    敝人是用两个 windows server 做域控兼内部 dns ,上游到两个 dnsmasq 做分流兼 ad-blocker (其中一个还兼 dhcp server ),国外和国内分别分流到两个 dnscrypt-proxy ,分别到 cloudflare 的 ODoH 和 google 的 DoH, 以及阿里和腾讯的 DoH
    holoto
        13
    holoto  
       2025 年 8 月 16 日
    最好的方案是 adg 搭配 2 个 doh edns 设置 ip 归属地上流。adg 设置好 yaml 文件 规则分流给这个 2 个 dns 上流
    2397613259qqq
        14
    2397613259qqq  
       2025 年 8 月 16 日
    用运营商 dns ,或者公共递归 dns
    kincaid
        15
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    @ranaanna 目前发现唯一一个好处就是不会被污染,会直接返回为空
    kincaid
        16
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    @holoto 确实,也是个不错的方案,我当时甚至想过一个反人类的操作,把常用域名的权威服务器直接配到 adguard
    julyclyde
        17
    julyclyde  
       2025 年 8 月 16 日
    root zone 不需要经常同步吧
    那玩意应该已经几十年没改了
    kincaid
        18
    kincaid  
    OP
    PRO
       2025 年 8 月 16 日
    @julyclyde 我基本每天,还有 arpa 也会同步
    peasant
        19
    peasant  
       2025 年 8 月 16 日
    如果递归服务器放在国内,没有特殊优化过的国际链路的话,慢到惨不忍睹,如果递归服务器放在日本、香港、新加坡,只用来查询 NS 在国外的域名,延迟还是可以的。

    我在香港的递归服务器查询 58 万次平均响应延迟 72ms ,国内大部分高频访问的域名我都分流去阿里 DNS 了。

    目前我尝试过的递归软件对 ECS 支持最好的就是 PowerDNS Recursor 了。
    maybeonly
        20
    maybeonly  
       2025 年 8 月 16 日
    最前面是 dnsmasq ,做分流:
    白名单送运营商 dns
    黑名单送 8888 或者 1111
    不知道的送递归
    然后递归是 bind ,根据 ip 路由表自动分流

    想不泄漏 dns 又能墙内外分流的话,我是不知道其他办法了
    ferock
        21
    ferock  
    PRO
       2025 年 8 月 16 日 via iPhone
    adg home 搭建
    cr3bit
        22
    cr3bit  
       2025 年 8 月 16 日
    @laminux29 同名内网现在有个问题是 ios 会强制走加密还是自己的 dns ,然后服务套 cdn 之类就会从绕道外面
    chinni
        23
    chinni  
       2025 年 8 月 16 日
    直接用 udpme 转发到 8888 ,结束
    czwstc
        24
    czwstc  
       2025 年 8 月 16 日   ❤️ 1
    slowman
        25
    slowman  
       2025 年 8 月 17 日
    混合方案才是最好的
    比如有的小众域名 NS 指来指去最后是个非洲小国, 你要是自己组了跨国内网 GEOIP 路由到非洲出口解析当然最快了
    NS 单点在 hk 的更是如此, 国内大厂 DNS 可能绕美国,但你自己可以翻过去

    海外不少域名都托管给 cloudflare, 递归过去可能还不如直接转发给 1.1.1.1

    所以没有银弹,明白妥协了什么就好
    nivalxer
        26
    nivalxer  
       2025 年 8 月 17 日
    目前用的 paopaodns ,是递归 DNS ,同时作者加了预热、缓存、境内外分流代理等特性,能够满足首次启动情况下响应速度不会太慢的问题
    前面套了一层 AdguardHome ,部分特殊的解析,例如电信的 WifiCalling 域名等,就在这上面做,启用乐观缓存
    用了应该快 1 年,只有在特殊情况下清理过缓存( redis )重启过,大部分时间没遇到问题,AdguardHome 上统计响应 24 小时平均响应时间 2ms 、上游处理时间 6ms (预热的功劳吧)
    julyclyde
        27
    julyclyde  
       2025 年 8 月 17 日
    @kincaid 你每天更新,见到 root zone 变化了吗?

    按说这玩意,都不是技术更新而是行政更新的
    kincaid
        28
    kincaid  
    OP
    PRO
       2025 年 8 月 17 日
    @julyclyde 其实每天都在变得 https://www.internic.net/domain/root.zone ,只不过不影响什么
    sanquan
        29
    sanquan  
       2025 年 8 月 17 日 via iPhone
    @mangmaimu 正解
    julyclyde
        30
    julyclyde  
       2025 年 8 月 17 日
    @kincaid 啊?每天?只改了序列号吧?
    Leeeeex
        31
    Leeeeex  
    PRO
       2025 年 8 月 17 日
    我用的付费的 dns ,想尝试的可以走我的 aff https://dash.xns.one/invite/7fa999e3-4dd0-46eb-ab39-c483eede9815
    qujiqujl
        32
    qujiqujl  
       2025 年 8 月 17 日
    <img src="https://tu.quji.org/images/2025/08/17/image.png" alt="image.png" border="0">
    我用的是自建的,递归的上游也是自建的在日本
    kincaid
        33
    kincaid  
    OP
    PRO
       2025 年 8 月 17 日
    @julyclyde 其实仔细看看全是 dnssec 相关的
    LOVOQ
        34
    LOVOQ  
       2025 年 8 月 18 日
    身为懒人用 p**sw4ll 整合的 dnsmasq 转发到 chinadns-ng ,虽然看说明不太靠谱(“智能:同时转发给直连和远程 DNS ,如果直连 DNS 解析结果是大陆 IP ,则使用直连结果,否则使用远程结果。
    使用智能模式,直连 DNS 返回空响应时:不接受:等待并使用远程 DNS 的响应。”)但实际应用效果还不赖。至今没被污染。
    Serino
        35
    Serino  
       2025 年 8 月 18 日
    本地 DNS 吗?不递归,因为没必要。

    如果是开放出来的 DNS 另说。

    现在的科学上网软件,比如 ClashMihomo ,域名命中需要代理的规则之后,是直接发送域名给代理服务器,让代理服务器自己解决 DNS 。本地的 DNS 只是起到一个"区分"的作用。

    个人建议是弄 2~3 个 AdGuardHome 的 docker ,用 nameserver-policy/direct-nameserver 给 Mihomo 分流。
    2 个 AGH 的话,国内一个,国外一个。
    3 个的话,国内分运营商 DNS 和加密 DNS 。大部分国内服务 (geolocation-cn 或者 geosite:cn ,都用运营商 DNS ,或者自己手动设置一些 geosite 国内的分组的用运营商 DNS ,这样基本不会有类似微信图片加载不出来的问题)
    yangfan1999
        36
    yangfan1999  
       2025 年 8 月 19 日
    就 adguard home + mosdns ,前者可以用来统计 DNS 访问情况,查询解析记录。后者可以给 DNS 分流,不同域名使用不用 DNS 服务商进行解析。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3233 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 12:30 · PVG 20:30 · LAX 04:30 · JFK 07:30
    ♥ Do have faith in what you're doing.