临时搭了一个 dns-over-https 测试 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qyb
V2EX    DNS

临时搭了一个 dns-over-https 测试

  •  1
     
  •   qyb 2018-07-24 00:18:43 +08:00 18562 次点击
    这是一个创建于 2686 天前的主题,其中的信息可能已经有所发展或是发生改变。
    服务现在在 vultr 东京机房,从北京联通宽带大概 200ms 延时。firefox 61 以上版本可在 about:config 里尝鲜配置了( network.trr.mode=2;network.trr.uri=https://dns.rubyfish.cn/dns-query )

    目前如果 DNS 能正确解析,访问中文维基或 medium.com 是没问题的

    下一步的计划是把 dns-over-tls 也跑起来,用手头的 Android P 测试通过

    然后再搬回国内正式提供服务吧~~
    第 1 条附言    2018-08-10 12:11:17 +08:00
    dns.rubyfish.cn 挪到阿里云的某杭州节点了... 从北京 ping 过去 30ms 左右;还没有开启 EDCS ; https://bitbucket.org/qyb/offwall/src/master/poisoning.domain 里的域名丢给 1.1.1.1 解析,目前有 70 左右个维护中的域名;其它的域名丢给 223.5.5.5 ; DOT/DOH 都支持;正在申请网站备案。。。
    第 2 条附言    2018-08-29 15:12:50 +08:00
    再次更新一下信息:
    1. 对 AppStore 下载应用所使用 CDN 域名启动了 EDNS-Subnet-Client 的支持;测试结果还行
    2. 以前海外解析直接使用 cloudflared 做上游,现在在海外又建了一个 cache 中转服务器增加连接稳定性
    3. 对下一步的规划如下
    3.a 服务公测:国内网站备案、在华东提供 2 个固定 IP、提供帮助文档、提供 server status 页面(估计 3 个月到半年)
    3.b 服务 beta:至少再增加一个服务区域,提供对小白更友好的产品方案,探索基于 DNS 的商业模式(估计半年到 1 年... 如果度不过这个阶段就挂了,或者我足够有热情来一个人维护它...)
    3.c 正式上线:商业和产品对路,提供 SLA 保障
    39 条回复    2019-02-03 00:01:53 +08:00
    wzw
        1
    wzw  
       2018-07-24 08:02:41 +08:00 via iPhone
    为啥要自己搭建?
    taobibi
        2
    taobibi  
       2018-07-24 08:14:57 +08:00
    搬回国内就没用了吧,服务器出口就直接 DNS 污染了
    tetsai
        3
    tetsai  
       2018-07-24 09:20:50 +08:00
    @taobibi 他应该走代理的
    qyb
        4
    qyb  
    OP
       2018-07-24 09:44:41 +08:00
    @wzw 打算包装一些方便普通人使用的服务, DNS 是基础
    leavic
        5
    leavic  
       2018-07-24 09:45:28 +08:00
    是有什么现成的工具可以安装吗?还是自己写的?
    qyb
        6
    qyb  
    OP
       2018-07-24 09:48:29 +08:00
    qyb
        7
    qyb  
    OP
       2018-07-24 20:12:45 +08:00
    dns-over-tls 现在也可用,用 Android P 和 https://getdnsapi.net/query/ 测试通过;修正一下主贴里 firefox 的配置 network.trr.mode 最好是配成 3 (以确保总是能得到正确的 IP,也请暂时原谅一下当前孱弱的性能体验)。计划下个月搬到国内
    bclerdx
        8
    bclerdx  
       2018-07-24 21:08:01 +08:00 via Android
    @qyb google chrome 怎么配置?
    qyb
        9
    qyb  
    OP
       2018-07-24 23:01:36 +08:00
    @bclerdx chrome 当前还不支持 dns-over-https or dns-over-tls
    bclerdx
        10
    bclerdx  
       2018-07-24 23:17:30 +08:00
    @qyb 悲剧了.........
    qyb
        11
    qyb  
    OP
       2018-07-25 09:15:54 +08:00
    @bclerdx 这是一个趋势。。。再等等说不定就有了
    bclerdx
        12
    bclerdx  
       2018-07-25 22:54:44 +08:00
    @qyb 真没准儿哪个版本就支持了呢。
    lzvezr
        13
    lzvezr  
       2018-07-26 22:23:50 +08:00 via Android
    用 unbound 弄了一个 DNS over TLS,Android P 上用着还行
    用 Nginx 也可以,getdns 测试没问题,不过 Android P 用不了
    qyb
        14
    qyb  
    OP
       2018-07-27 01:01:32 +08:00
    @lzvezr 我是用的 haproxy + unbound 测试的;个人习惯把所有公网接口都做一层反向代理。不理解为啥你 Nginx 反向代理不支持 Android P
    002jnm
        15
    002jnm  
       2018-07-28 16:32:20 +08:00
    lzvezr
        16
    lzvezr  
       2018-07-29 08:35:03 +08:00 via Android
    用 unbound 搭建 DNS over TLS 使用过程中遇到了点问题,forward-zone 不支持通配符,也就意味着 dnsmasq-china-list 转换为 unbound 规则时,三级,四级域名不能被正确的分配到国内 DNS 进行解析,有什么好的解决方案吗?
    我现在想的是后面放一个 overture,可是这样 edns-client-subnet 特性就没有了
    mason961125
        17
    mason961125  
       2018-07-29 08:48:01 +08:00 via iPhone
    emmm 其实 Cloudflare 的 DoH 延迟很低的,大概也就 100 左右。
    qyb
        18
    qyb  
    OP
       2018-07-29 20:35:29 +08:00
    @002jnm 是,上级 DNS 还不支持,我想想办法...
    qyb
        19
    qyb  
    OP
       2018-07-29 20:41:19 +08:00
    @lzvezr 我当前的想法是反 dnsmasq-china-list 其道而行之,真正 DNS 被投毒的域名是很少的... 我维护了一个自己日常使用中发现有问题的域名: https://bitbucket.org/qyb/offwall/src/master/poisoning.domain
    lzvezr
        20
    lzvezr  
       2018-07-29 23:32:16 +08:00
    @qyb 看了一眼 overture 源码,EDNSClientSubnet.Policy 设置为非 auto 就可以了,这样 DNS 数据就原样传给上游
    我现在是 unbound 最外,开启 edns-client-subnet,后面紧跟 overture,境内 DNS 用 119.29.29.29 ,境外 DNS 因为 overture 不支持 DNS over TLS,所以通过 Nginx 反代 1.1.1.1:853 喂给 overture

    现在新问题是,119.29.29.29 居然屏蔽了腾讯云,可以 ping,但是 dig 就超时,wqnmlgb
    qyb
        21
    qyb  
    OP
       2018-07-30 10:36:40 +08:00
    @lzvezr 除了 119.29.29.29 ,其它几个公共 DNS 还有支持 EDCS 的吗?
    lzvezr
        22
    lzvezr  
       2018-07-30 10:55:02 +08:00 via Android
    @qyb 223.5.5.5(阿里的)也支持,不过我用腾讯云请求的时候会自动忽略 subnet,家用宽带就没影响,估计是为了打击对手?手头没有阿里云,不知道可不可用
    lzvezr
        23
    lzvezr  
       2018-07-30 22:19:48 +08:00
    @qyb 终于我放弃 subnet 了,经过测试这个功能十分不稳定,因为 unbound 缓存的问题
    subnet 的 client ip 不同的话理论上应该独立缓存,可是测试一天下来,在 ttl 内,缓存的 dns 并***不总是***会因为 client ip 改变而改变,而且还会拖慢解析速度
    425685343
        24
    425685343  
       2018-07-31 13:49:24 +08:00
    其实自己搭建没啥大用,因为本地转换成 DNS 还是明文的,该受的污染一样受,要安全还是直接 cloudflare 把
    cwek
        25
    cwek  
       2018-08-05 11:12:36 +08:00
    @425685343 如果本地搭建 DOT 作为前端,后端用其他方法按地区分流和清理干净记录,就啥事都没有。
    虽然重点照顾那几个,直接路由黑洞,拿到干净记录用途不大。(笑)
    qyb
        26
    qyb  
    OP
       2018-08-10 12:19:35 +08:00
    dns.rubyfish.cn 已经挪到国内... 发现原来服务在东京的时候,解析到 medium / zh.wikipedia.org 的 IP 是通的,但服务进了国内解析出来的 IP 就无法工作了 ... 目前觉得它最大的用处就是搭配 firefox + 代理分流使用,免去了再维护 DNS 分流服务
    qyb
        27
    qyb  
    OP
       2018-08-16 16:58:01 +08:00
    @lzvezr 现在我也正在测试 subnet 了... 我自己感觉这个功能还能用啊,不知道你的 case 是什么
    lzvezr
        28
    lzvezr  
       2018-08-17 10:32:27 +08:00 via Android
    @qyb 可能阿里云可以用 223.5.5.5 吧,腾讯云用不了 119.29.29.29 ,当然也用不了 223.5.5.5
    qyb
        29
    qyb  
    OP
       2018-08-17 17:16:11 +08:00
    @lzvezr 我针对 qq.comtaobao.comweibo.com 做 subnet 测试;如果你有多地的机器,帮忙看看返回结果是否靠谱??另外我没有用 223.5.5.5,直接让 unbound 去查询权威服务器
    qyb
        30
    qyb  
    OP
       2018-08-20 00:22:05 +08:00
    @002jnm 现在 EDNS 查询结果看起来和 doh.nslookup.me 解析的差不多
    qyb
        31
    qyb  
    OP
       2018-08-29 15:14:22 +08:00
    再次更新一下信息:
    1. 对 AppStore 下载应用所使用 CDN 域名启动了 EDNS-Subnet-Client 的支持;测试结果还行
    2. 以前海外解析直接使用 cloudflared 做上游,现在在海外又建了一个 cache 中转服务器增加连接稳定性
    3. 对下一步的规划如下
    3.a 服务公测:国内网站备案、在华东提供 2 个固定 IP、提供帮助文档、提供 server status 页面(估计 3 个月到半年)
    3.b 服务 beta:至少再增加一个服务区域,提供对小白更友好的产品方案,探索基于 DNS 的商业模式(估计半年到 1 年... 如果度不过这个阶段就挂了,或者我足够有热情来一个人维护它...)
    3.c 正式上线:商业和产品对路,提供 SLA 保障
    techon
        32
    techon  
       2018-09-01 04:40:33 +08:00
    国内的网络环境,DNS 是重灾区。。。
    exkernel
        33
    exkernel  
       2018-09-03 20:02:41 +08:00
    国内备案还敢提供无污染的 DNS 么?
    qyb
        34
    qyb  
    OP
       2018-09-04 14:18:05 +08:00
    @exkernel 已经完成备案了,正在设计网站中...
    exkernel
        35
    exkernel  
       2018-09-07 11:34:09 +08:00   1
    推荐客户端 https://github.com/jedisct1/dnscrypt-proxy

    ```
    [static]
    [static.'dns.rubyfish.cn']
    stamp = 'sdns://AgcAAAAAAAAAAAAPZG5zLnJ1YnlmaXNoLmNuCi9kbnMtcXVlcnk'
    ```
    qyb
        36
    qyb  
    OP
       2018-09-07 16:19:28 +08:00
    @exkernel 多谢多谢。再更新一下当前的进展:海外的 upstream 已经有了两个延迟还可以的节点保障可用性,一个香港,一个日本;对外的信息介绍网站已经可以访问 https://www.rubyfish.cn ,但全部内容准备完估计还得一周左右时间。我期望这个月能正式把 Alpha 版本公布出来
    ahu
        37
    ahu  
       2018-10-19 10:34:29 +08:00
    @qyb 貌似不支持 tls://115.159.154.226 这样的访问方式?
    reguser12005
        38
    reguser12005  
       2019-02-02 12:53:56 +08:00
    @exkernel 请教一下, sdns://xxxxx 这个是啥? 放狗搜不到啊.
    exkernel
        39
    exkernel  
       2019-02-03 00:01:53 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1062 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 18:05 PVG 02:05 LAX 10:05 JFK 13:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86