首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  DNS

红鱼 DNS 正式发布, DoT & DoH only

  •  3
     
  •   qyb · 279 天前 · 28183 次点击
    这是一个创建于 279 天前的主题,其中的信息可能已经有所发展或是发生改变。
    介绍在 https://www.rubyfish.cn 。昨天上线了第二个弹性 IP 的节点,有了一定的抗单点故障能力,这就算进入 alpha 公测阶段了吧。整套服务现在一共七台 VPS:正式服务一个阿里云杭州,一个腾讯云上海;上连美国,东亚各 2 一共 4 个 upstream 节点供不同出口需求选择;加上专门用于门户信息发布和监控的节点;希望这些准备工作让 Rubyfish DNS 不至于太山寨。

    这个项目,原本来源于一次自己搭建路由器的经历,思索要是国内有一个靠谱的 DNS provider 就简单不少;后来看到今年 DNS 安全的一系列新进展,包括 TLS 1.3 也正式完工,感觉这应该是一个趋势,于是就动手了。。。它的价值?我觉得是节省一点大家的时间,解析可靠、运行稳定、访问快速的 SLA 保障是我努力去做的。指望从这个服务获得什么回报?一方面是我自己的其它项目可能也是依赖一个公共 DNS 的,这个就当基础服务的成本;另一方面也许会直接提供基于 DNS 的其它的 to Developer/SysAdmin 的服务???我是 DNS 领域的新人,需要再摸索摸索。
    第 1 条附言  ·  277 天前
    计划中秋节期间某天深夜会把两台服务节点重启一下服务,希望每台重启在 30 秒内完成。变更包括给上海节点增加 TLS 1.3、EDNS Keepalive 两个特性,以及一些域名配置变化
    第 2 条附言  ·  105 天前
    紧急通知:东亚区服务的 IP 115.159.154.226 下线,如果依赖该 IP 直连红鱼 DNS 的,请更改为 118.89.110.78
    第 3 条附言  ·  102 天前
    红鱼计划一个月后进入 beta,详情看新帖
    162 回复  |  直到 2019-06-24 09:25:03 +08:00
    1  2  
        101
    benedict00   202 天前 via iPad   ♥ 1
    @qyb https://dnscrypt.info/public-servers/ 似乎这里还没有改
        102
    ylx   201 天前
    windows 端服务器不在列表里面已经几天了 现在改成自动方案了
        103
    benedict00   201 天前 via Android
    @ylx 更新到最新 simple-dnscrypt,勾上 ipv4, dnssec,doh 来找服务器,往下找绝对有的。
        104
    herozhang   172 天前   ♥ 1
    已经用上,目前感觉良好。
        105
    yyws2012   170 天前   ♥ 1
    @qyb 安卓 9,某工具开启 root(NAT)模式后设置里私人 DNS 显示可以连接,但不知道实际上连接走的是 DOT 还是某工具设置的 DNS。这种情况有没有办法检测?
        106
    qyb   170 天前   ♥ 1
    @yyws2012 如果你说的是 ss-android 的话,走的是它自己的 DNS (这部分主功能它是引用了 overture 这个 golang 的项目)。相关代码它是写死的,即本地起一个 overture 服务,overture 把请求转发到 114/223/opendns ;用户选择远程 DNS 才走 socks5 到 8.8.8.8。我们本来有计划改变这个事情,包括给 overture 提交了支持 dot 的 patch,现在 overture 上游和 ss-android 都已经合并了相关代码;但下一步的功能合并涉及到 UI,变化比较大,我们提的第一个 PR 被拒绝了,原维护者提出了比较高的架构上的要求。。。接下来我们的精力会先放在商业化上,ss-android 是否能支持 DoT,只能随缘看几个月后我们有没有心思去搞了;熟悉安卓的人在当前的基础之上自己编译一个 DNS 走 DoT 的不是难事,而且可以顺便把它的广告干掉。
        107
    yyws2012   170 天前   ♥ 1
    @qyb archlinux 设置后打不开部分网站,用命令解析报错
    $ resolvectl query steamcn.com -t A

    steamcn.com: resolve call failed: DNSSEC validation failed: failed-auxiliary
        108
    qyb   170 天前
    @yyws2012 惭愧,以前没有注意过 DNSSEC 相关的故障。请问能把您的 systemd-resolved 相关配置发到 [email protected] 吗?我这里别的客户端 DNSSEC 确实有报错,但反而是 resolvectl 没有报错
        109
    benedict00   147 天前 via iPad
    clash 项目支持 DoT 了,https://github.com/Dreamacro/clash
        110
    gaoyuzhe22   124 天前   ♥ 1
    红鱼的 api 在请求的时候不能像 google dns 那样带上 edns_client_subnet=***嘛?我试了一下好像不行
    curl -s -H 'accept: application/dns-json' 'https://dns.rubyfish.cn/dns-query?name=www.google.com&type=aaaa&edns_client_subnet=202.40.161.203' |python -m json.tool
    返回的结果:"data": "2a00:1450:4007:816::2004"
    这个 ipv6 地址似乎不是香港的
        111
    qyb   123 天前   ♥ 1
    @gaoyuzhe22 确实不支持,这个特性需要有比较强的服务端能力来防止滥用(比如恶意刷 ECS 的缓存)
        112
    gaoyuzhe22   123 天前
    @qyb 因为教育网 ipv6 连 Google 可以走香港出口,速度比较快,所以我想如果红鱼的 ea-dns.rubyfish.cn 对 Google 的 AAAA 解析结果是 HK 的 ip 就很棒了
        113
    testcaoy7   123 天前   ♥ 1
    我发一下 Stubby 获取 tls_pubkey_pinset 的方法:
    echo | openssl s_client -connect 'ea-dns.rubyfish.cn:853' 2>/dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64
        114
    qyb   121 天前
    @gaoyuzhe22 我在两台 HK 的 VPS 上用 8.8.8.8 去 dig www.google.com ,分别得到 2404:6800:4008:802::2004 和 2607:f8b0:4007:801::2004,看注册区一个是北美一个是澳大利亚,不知道教育网那里可以直连的 www.google.com 的香港 IPv6 是什么
        115
    qyb   121 天前
    @gaoyuzhe22 请问您希望用 edns_client_subnet 的目的是什么呢?我刚刚想也许可以通过另外架设一套 server 来解决,但这样可能就会击穿 cache,享受不到缓存的好处了,做临时测试用可能还行
        116
    gaoyuzhe22   120 天前
    <script src=".js"></script>
        117
    qyb   120 天前
    @gaoyuzhe22 你这个例子里面的 IPv6 地址也是澳大利亚,所以你本机设一下 hosts,看看我前次给你说的两个 IP 能连吗?
        118
    gaoyuzhe22   119 天前   ♥ 1
    你用的 ipv6 数据库似乎有问题,我一般使用 https://ip.zxinc.org/ipquery/ 来确认 ipv6 地址的归属。
    你上面的提到的两个地址:
    2404:6800:4008:802::2004 中国台湾省台北市 Google Inc. 服务器网段 我这儿的 ping 延时大概在 70+,比香港稍微高一些
    2607:f8b0:4007:801::2004 美国 California 州 Los Angeles Google Inc. 服务器网段,我这儿的 ping 在 200 左右
    我提供的 ip 地址 2404:6800:4005:807::2004 属于中国香港区 Google Inc. 服务器网段
        119
    Love4Taylor   119 天前   ♥ 1
    你家 status 页面挂了

    >Refused to apply style from 'https://www.rubyfish.cn/sites/default/files/css/css_at2iRdA_n5bTTJVdrSEq-GjzhatE89uQf1IZlAOyqWY.css?pexec5' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.
        120
    Love4Taylor   109 天前 via Android
    现在不写事件报告了?
        121
    qyb   109 天前
    @Love4Taylor 最近运维的事情由其它人在接手
        122
    testcaoy7   105 天前
    @qyb 现在服务器失效了,不管是 UW 还是 EA 的 stamp 都失效了,是 stamp 改变了吗?如果改变了,能否更新一下?
        123
    qyb   105 天前
    @testcaoy7 被攻击了,临时换了 IP,正在处理.
        124
    tifang   101 天前
    请教,openwrt,dnsmasq 配合 https_dns_proxy,在解析某些小众网站时。当使用 rubyfish doh,Windows 上显示 DNS 解析失败(不同网络环境不同 PC 下,均自动获取 IP 与 DNS,Chrome&IE ),2 台安卓手机解析正常( Chrome,未开启私人 DNS )。当使用 google doh,所有设备均解析成功。
    经查看 dnsmasq 记录,发现 rubyfish 其实正确解析了 IP,与 google reply 的结果一致。
    想不通 rubyfish 的解析结果在 Windows 上无效在 Android 上却没问题。百思不得其解,求赐教。
        125
    tifang   101 天前
    抓了下包
    rubyfish 解析错误
        126
    tifang   101 天前
    抓了下包

    rubyfish 解析错误
    Domain Name System (response)
    Transaction ID: 0x89eb
    Flags: 0x8180 Standard query response, No error
    Questions: 1
    Answer RRs: 2
    Authority RRs: 0
    Additional RRs: 0
    Queries
    Answers
    [Malformed Packet: DNS]
    [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
    [Malformed Packet (Exception occurred)]
    [Severity level: Error]
    [Group: Malformed]

    google
    Domain Name System (response)
    Transaction ID: 0x7656
    Flags: 0x8180 Standard query response, No error
    Questions: 1
    Answer RRs: 1
    Authority RRs: 0
    Additional RRs: 0
    Queries
    Answers
    [Request In: 425]
    [Time: 0.323234000 seconds]
        127
    Love4Taylor   101 天前
    unbound 似乎在 DNSSEC 的转发上有有些问题.
    在 systemd-resolved 设置为 DNSSEC=allow-downgrade 之后一些域名例如 www.bilibili.com 无法解析, unbound 上会输出 Verified that unsigned response is INSECURE 的 log.
    同设置 8.8.8.8 没问题.
        128
    qyb   100 天前
    @Love4Taylor 你说的这个是红鱼的问题还是 unbound 的问题?
        129
    Love4Taylor   100 天前 via Android
    @qyb 应该是 unbound, 但没搜到相关资料. 我自己的 DoT 服务以及你们的服务测试都有这个问题.
        130
    qyb   100 天前
    @tifang 从描述不太确认问题出在哪里。测试协议问题,https_dns_proxy 可能有点小众了;建议使用流传更广泛的 client 进行测试,比如 dnscrypt-proxy 或者 libcurl ( https://github.com/curl/doh)
        131
    qyb   100 天前
    @Love4Taylor 在 unbound.conf 里加入 domain-insecure: bilibili.com 能避开这个错误吗?
        132
    Love4Taylor   100 天前
    @qyb #131 不行. 并且如果 unbound 设置了缓存, 那么只要有一个用户如此用 systemd 解析会导致空解析被缓存而牵连其他用户.

    unbound[134004]: [134004:2] info: resolving www.bilibili.com. A IN
    unbound[134004]: [134004:2] info: response for www.bilibili.com. A IN
    unbound[134004]: [134004:2] info: reply from <.> 192.168.2.113#5300
    unbound[134004]: [134004:2] info: query response was CNAME
    unbound[134004]: [134004:2] info: resolving www.bilibili.com. A IN
    unbound[134004]: [134004:2] info: response for www.bilibili.com. A IN
    unbound[134004]: [134004:2] info: reply from <.> 192.168.2.113#5300
    unbound[134004]: [134004:2] info: query response was ANSWER
    unbound[134004]: [134004:2] info: resolving biliapi.com. DS IN
    unbound[134004]: [134004:2] info: response for biliapi.com. DS IN
    unbound[134004]: [134004:2] info: reply from <.> 192.168.2.113#5300
    unbound[134004]: [134004:2] info: query response was nodata ANSWER
    unbound[134004]: [134004:2] info: NSEC3s for the referral proved no DS.
    unbound[134004]: [134004:2] info: Verified that unsigned response is INSECURE
    unbound[134004]: [134004:2] info: resolving bilibili.com. SOA IN
    unbound[134004]: [134004:2] info: response for bilibili.com. SOA IN
    unbound[134004]: [134004:2] info: reply from <.> 192.168.2.113#5300
    unbound[134004]: [134004:2] info: query response was ANSWER
    unbound[134004]: [134004:2] info: resolving bilibili.com. DS IN
    unbound[134004]: [134004:2] info: response for bilibili.com. DS IN
    unbound[134004]: [134004:2] info: reply from <.> 192.168.2.113#5300
    unbound[134004]: [134004:2] info: query response was nodata ANSWER
    unbound[134004]: [134004:2] info: validate(nodata): sec_status_insecure
        133
    him007   88 天前 via Android
        134
    him007   88 天前 via Android
        135
    hhhsuan   87 天前
    @him007 #133 这个不能优化,如果是根据域名来决定是否走代理的话,这里返回一个国内地址,就变成用代理来访问一个国内地址了,速度会非常感人。
        136
    him007   87 天前 via Android
    @hhhsuan 好吧,我平常都是直接根据国内外 ip 分流的。
    “如果是根据域名来决定是否走代理的话”,这个一般都是 gfwlist 里面的域名通过代理远程 dns 解析的,不会通过 rubyfish 解析。
    不使用代理时,有些网站可以直连,但是 fonts gstatic com 返回国外地址的话会出现问题。
        137
    Love4Taylor   87 天前 via Android
    只剩一个 IP 了?
        138
    qyb   79 天前
    @Love4Taylor 莫名的来了大量的流量...带宽有点扛不起
        139
    qyb   79 天前   ♥ 1
    @him007 感谢您为我提供了一个思路,我可能提供另外一个 DNS 服务目标是专门提供国内可访问的 IP
        140
    hikara   49 天前   ♥ 1
    今天在 github 上看到有介绍这个项目,特来感谢!
        141
    ksmter   33 天前
    联通网络,感觉总是比原来的 dns 慢半拍,一查解析出来的 ip 都是电信的,是否可以优化一下
        142
    qyb   33 天前
    @ksmter 如果你是在北方联通,可以试一下我们测试中的在北京的服务器,暂时服务器地址用 www.rubyfish.cn (DoT only) ,另外我们有 IPv6 专用在测试中,v6.rubyfish.cn
        143
    ksmter   32 天前
    北京那个感觉不错,虽然很多网站仍然返回电信 ip,但是实际打开速度比较快,卡顿减轻不少。v6 暂时就不试了,现在的 ipv6 不怎么好用,再等等吧
        144
    qyb   25 天前
    @ksmter 我们现在正在观望政策,如果觉得可以继续往下走会逐步增加各地布点
        145
    CEBBCAT   24 天前
    1024,忙活了一天,终于想到 DoH,服务很棒!
        146
    wsqstar   21 天前   ♥ 1
    目前出现 ios 端( ipad air 3 )删除单条 host 记录会闪退,但是逐条修改可以。
        147
    qyb   21 天前
    问题已经找到,请等待更新
        148
    xtddd   18 天前
    @qyb 这个 doh 不会泄露隐私吧
        149
    sasayaku   14 天前
    域名挂在 cloudflare 解析有点慢
        150
    CEBBCAT   9 天前
    请问为什么我的 blog.zhangsy.me 解析超时?是这个域名被 CNAME 到了 sy.netlify.com 的原因吗?
        151
    Love4Taylor   8 天前
    海外到 v6 不通么 23333
        152
    qyb   6 天前
    @Love4Taylor v6.rubyfish.cn 从海外不通??我从日本能连
        153
    Love4Taylor   6 天前 via Android
    @qyb 现在倒是没问题 前两天测试没通
        154
    yeezylife   5 天前
    SimpleDNSCrypt 设置好了之后能退出不。。还是要一直挂在后台工作
        155
    yeezylife   5 天前
    另外 用上之后发现访问 B 站的时候,视频封面的图片加载不全 /较慢
        156
    qyb   5 天前
    @yeezylife SimpleDNSCrypt 需要一直挂在后台工作,对 B 站加载慢是一个已知的问题,就是我们对 CDN 的支持还不够好。一个方案是用更强大的 DNSClient,针对特定域名走本地运营商的 DNS 进行解析,现在我们只提供了 iOS App 在做这件事情; Windows 上可能有同行在做类似的客户端
        157
    qyb   5 天前
    @Love4Taylor 国内公有云的 IPv6 看起来还是质量没达到商用的地步呀...
        158
    Love4Taylor   5 天前
    @yeezylife
    @qyb #155 那是某个静态资源域名 (i0.hdslb.com/s1.hdslb.com) 根本没解析出来吧, 最起码我在 Android App 上用 rubyfish 就经常会这样.
        159
    loson   4 天前 via iPhone   ♥ 1
    希望能增加华南的节点,华南走香港的线路是不错的…
        160
    seyvyo   2 天前   ♥ 1
    点赞支持!但请问在安卓 9.0 上使用会不会影响联通定向免流服务的使用呢?
        161
    qyb   2 天前
    @loson 目前正在试着申请电信增值业务许可证,在许可证没有之前,不打算有什么新变化了。。。另外就是即使申请了许可证下来,鉴于目前这个监管的趋势,在什么范围内提供服务,以及提供到什么级别的服务,也还是要慢慢踩线探索..
        162
    qyb   2 天前
    @seyvyo 已经有用户报告影响了
    1  2  
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4323 人在线   最高记录 5043   ·   Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 02:09 · PVG 10:09 · LAX 19:09 · JFK 22:09
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1