坐标 SNI 阻断大省,前几天发现同一个服务器上的域名先后被 SNI 阻断了,然后分别测试了移动数据、宽带和电信数据、宽带对于域名 SNI 阻断的情况,因为这几天测试移动的时候有点找不到规律(笑),所以可能还需要再测试几天。目前先说下电信数据、宽带对于域名 SNI 阻断的情况,个人测试的情况是目前数据对于域名的阻断是严于宽带对域名的阻断的,而且会阻断解析到同一个 IP 上的所有域名(至少我个人解析到同一 IP 的域名先后全部被阻断了)。然后接下来分别测试了一下绕过 SNI 阻断的办法:
1. 套 CDN ,用的是 Cloudflare 的 CDN ,有一定的效果,但是目前还是时不时的会被阻断。
2. HTTP/3+DOH+DNS 解析添加 HTTPS 类型的解析,直接走 QUIC 协议,目前还没有被阻断。
3. 直接在域名后面加上根域名 . 然后访问,比如需要访问的域名是 example.com ,直接访问 example.com. 这个地址可以绕过阻断,就是目前什么原理这个还不清楚。
1
JensenQian 67 天前
你都能来 这里了
直接加进代理就完事了 国内直连,国外代理 完事 |
2
iflyime OP @JensenQian 主要是还是想探讨了解一下如何应对单纯的 SNI 阻断这个问题,听说 ECH 也可以绕过 SNI 阻断,但是目前好像没在 Chrome 上找到可以开启的地方!?
|
3
admin13579 67 天前 via Android
目前用的应对方法是域前置,把发送的 sni 伪造成一个白名单里的合法域名,或者直接发送空 sni 。不过这种不适用很多套了 CDN 的网站
Quic 也可以,因为墙目前技术上还做不到嗅探 quic 的 sni ,ech 直接把 sni 加密了当然也可以,但未来有像 esni 一样被一刀切的风险 另外如果是自建 https 服务且仅自己一人使用的话(意味着客户端和服务端控制权都在自己手上),那还有一个方法是在双端的防火墙上都写一条简单的命令:丢弃所有接收到的 rst 包。这样虽然还是会触发阻断,但因为阻断用的 RST 包都被你丢了,所以可以顶着阻断强行继续连接 |
4
spartacussoft 67 天前
原理方法: https://rentry.co/Your_State_is_Not_Mine_zh_CN
实现就五花八门了,效果也参差不齐; /spartacus-soft/spartacus 实现整体效果较好; |
5
SpiritYa 67 天前
之前刚好打了一个支持 ech 的 nginx docker 镜像,文档中也有关于 Chrome 如何使用 ech 的步骤,可以参考一下: https://www.v2ex.com/t/1058196
|
6
frencis107 67 天前
找反诈中心提交域名核实后就能解,福建的联系泉州反诈中心
|
7
iflyime OP @admin13579 你说的这些也都了解过,但是我所希望的更多是在非本地客户端操作或者以最小的代价/最简便的操作从而绕过阻断。
|
8
iflyime OP @SpiritYa 现在套 Cloudflare 的 CDN 之后开启 HTTP/3 会自动启用 ECH ,以及现在 Chrome 和 Firefox 好像是默认开启的 ECH ,但是需要配置 DOH ,同时需要关闭系统的代理服务。
|
9
iflyime OP @frencis107 你说的好像也是一种办法,但是我好像没有找到地方提交,以及这个不需要域名备案吗,Emmm……
|
10
miaomiao888 67 天前
@spartacussoft 所有同类工具都是 free ,只有到了你这。。。
另外以中国的法律来说,这种工具拿去牟利判刑的时候性质可就不一样了。 |
11
frencis107 67 天前 1
|
13
ddczl 66 天前
我当前用国内直连,国外代理
|
16
baobao1270 58 天前
@iflyime
@admin13579 ECH 确实可以通过「设置白名单域名」绕过阻断 但是要 CDN 支持 Cloudflare 定死 ECH SNI 必须为 cloudflare-ech[.]com 不可以为空也不可以修改,所以无解 |