测试了一下 DoH/DoT 的可用性,讨论一下今后加密 DNS 的解决方案

2021-03-08 16:03:59 +08:00
 Hackerchai

下午测试了一下 DoH/DoT 的可用性,很惨烈

主流服务几乎没有幸存,只有类似 NextDNS 这种 IP 地理分布广的服务商,部分 ip 没有被屏蔽而已 P1

屏蔽的方式采用的是 sni 检测路由黑洞 ,有些域名直接就被 RST 了,而其他的则是无限的等待。不过这些加密 DNS 的域名并没有被污染

P2 我自己的自建服务器也被屏蔽了 DoTDoH 正常。随后我做了测试 P3 ,发现很多屏蔽 DoT 的服务器 DoH 正常。小众的 DNS 正常。这也印证了一个猜测,DoH 因为共用 HTTPS 协议的 443 端口,不能一刀切,所以需要 sni 黑名单 + ip 黑名单 。而 DoT 可以直接屏蔽来自境外的 853 端口

综合来看,加密 DNS 马上就会在国内死掉。可能的解决方案有:

  1. 使用自建 DNS ,用 DoH 协议,人数少偷偷用
  2. 使用 Use DoH/DoT with Proxy 的方案,但是需要各个代理工具的支持(Surge 支持,而 Clash 不支持)。我试验过 SurgeUse DoH with Proxy ,能用,但是国内网站的 cdn 体验就直接爆炸了

P1:

P2:

P3:

7070 次点击
所在节点    宽带症候群
54 条回复
Hackerchai
2021-03-08 17:41:11 +08:00
@HalloCQ 是的,我的图上也是这样
Hackerchai
2021-03-08 17:41:19 +08:00
@geekvcn 跑在路由器么
Hackerchai
2021-03-08 17:42:34 +08:00
@Zhouisme 做分流啊,国内域名就直接 53udp 吧,国外走 doh
geekvcn
2021-03-08 17:44:01 +08:00
@Hackerchai 随便跑在哪里,基本啥设备都支持
geekvcn
2021-03-08 17:44:33 +08:00
@swulling 移动还是需要 DoH 的
matolv
2021-03-08 17:57:30 +08:00
国内 dns 都有污染,隐私也是和国策相违背。用 dot/doh 唯一作用是防劫持或者广告,用处基本不大,udp 53 也没问题。仅移动强中强用户会有点奇效。
国外 dns 自然是给远程服务器使用的,访问国外的流量经过一次中转才进入国内,而 aws,gcp 甚至 ali,无论哪个机房到公共 dns 的速度都极快。重要的是分流而非使用哪个 dns,参考知名工具 v2ray 如何实现一站式分流
benjix
2021-03-08 18:01:13 +08:00
@Hackerchai 在境外,用的免费的韩国的 Oracle cloud
benjix
2021-03-08 18:01:44 +08:00
Jirajine
2021-03-08 18:16:47 +08:00
@AoTmmy 用来 bootstrap 啊,很多鸡场节点是用的域名,直连的 doh/dot 用于解析这些域名防止污染以及不留下记录。
连上以后就可以走代理解析了。
Hackerchai
2021-03-08 18:27:39 +08:00
@matolv 好一个“隐私也是和和国策相违”,跪太久了?
LnTrx
2021-03-08 18:58:47 +08:00
距离在 https://www.v2ex.com/t/742709 探讨两者差异才过了一个月不到
Hackerchai
2021-03-08 19:10:55 +08:00
@LnTrx 魔幻日常,这个东西在中国消失只是时间问题
Kobayashi
2021-03-08 19:59:09 +08:00
只不过是 DoT, DoH 方案被墙而已,在 DoT, DoH 没出现之前流行的方案还有很多存活着

- 丢伪包方案,和 GFW 硬扛:ChinaDNS 时延判断法; semigodking/cdns 根据伪包没有 EDNS option 丢包; puxxustc/sans,预请求 SOA 做判断丢伪包
- 非标端口 UDP:opendns 的 443, 5353,Quad9 的 9953
- dnscrypt,DoT, DoH 出现之前的加密方案: 公共 DNS 里 opendns, quad9 有部署
- (以上方案都支持直连)
- Proxy 转发 DNS 请求

曾经失效过的方案

- 黑名单:最早 ChinaDNS 引入,这种方案已经被证实不靠谱,但抵不住有些傻 x 还在用,如 smartdns
- 压缩指针:“损坏”DNS 包,变相绕过识别

这些知识都是本坛 DNS 节点学来的,有兴趣可以深入挖掘一下。

另外分流方案:

- 老牌:unbound/dnsmasq + chinadns (或 chinadns 变种)
- unbound/dnsmasq + dnsmasq-china-list (纯域名名单的话列表太大,好几万,不喜欢这套方案)
- 一体式(自己把域名分流、IP 分流、DoT, DoH, dnscrypt, proxy 、域名屏蔽、缓存 的活全干了):overture (一度流行跨平台,不过配置文件个数支持有限)。coredns 每次需要编译没怎么搞(不知道有没有 IP 分流插件)。

现在只推荐 mosdns (非 moschina-dns ),属于一体式方案。没有 overture 配置文件个数的限制(比如 domain 列表文件只能有一个 primary,一个 alterntive,不能再多)。也不像 coredns 每次需要重新编译。
Bunnyranch
2021-03-08 20:45:07 +08:00
@swulling
@Hackerchai
@matolv
不是说 UDP 容易被中间人截取么 用 UDP 不会被国产软件截取我的请求吗,我现在用的 dnspod 的 DOH..有点想用电信的 UDP 算了..
Love4Taylor
2021-03-08 20:47:24 +08:00
fake-ip 不可避
matolv
2021-03-08 22:25:00 +08:00
@Bunnyranch 非本地劫持一般以 http 劫持居多,dns 劫持居少,除了长城以外的大规模劫持都是要被请喝茶的。你的问题其实在于什么本地软件会截取你的请求,那只有 360,qq 管家能做到,你不用就是了。一般软件何德何能又又何必要如此去做呢?

像楼上说的 fake-ip 或者 fake-dns 是 v2ray 最新版刚引入的功能,也许对于某些特殊需求的人有用,与其被他人劫持不如此自己劫持自己,但也不是万能,现在很多软件需要你的 ip 才给你授权,比如 netflix
systemcall
2021-03-08 23:16:59 +08:00
一个月前还可以用 cloudflare 的 doh 和 dot 的。现在什么都没了
Hackerchai
2021-03-08 23:17:12 +08:00
@Bunnyranch udp 明文,你的运用运营商 /宽带提供商劫持用来投放广告之类的,用 doh/dot 就不会出现劫持
Hackerchai
2021-03-08 23:17:40 +08:00
@systemcall 自建吧
hutng
2021-03-09 00:32:18 +08:00
即使用了 dot/doh,不开 esni 运营商还是能看到访问网站的记录,话说中国联通的 app 还自带这个功能,可以查询自己访问了哪些网站😖
更大的用途还是过 qiang 吧,国内网络环境真是越来越差了,openwrt 直连源 update 一下,要几分钟,网速都是 500B/s 。。。哎

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

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

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

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

© 2021 V2EX