测试地址:cdn-cgi/trace
** DNS 污染自行处理,SmartDNS/DoH/DoT 都行。 **
(图片放不上就算了)
fl=... h=www.v2ex.com ip=... ts=... visit_scheme=https uag=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 colo=LAX sliver=010-tier1 http=http/1.1 loc=CN tls=TLSv1.3 sni=plaintext warp=off gateway=off rbi=off kex=X25519
对于 SNI 字段,RFC6066 有明确规定。 但是,部分软件和云服务对于 SNI 字段的解析存在一些“怪癖”:即使 不指定 或 存在格式错误 时,仍能够正确对 TLS 加密流量进行分流。
基于 Chromium 138 进行修改,只改动了一行代码。
仓库中有 5 种变种,可以用来测试自家的云服务是否存在一些“怪癖”。 提供了 Windows 下 32 位、64 位、ARM 版本的预编译安装包/便携包。
BTW:记得 Star 和 Fork ,失效不补。
1 mzl980425 78 天前 你在 V 站给一群能正常访问 V 站的人推广直连 V 站的工具? |
![]() | 2 moefishtang 78 天前 via Android @mzl980425 梯子挂了上不了网的时候还是有需求的,多个备用方案也好 |
5 ixinshang 78 天前 如果想添加 github docker 这类,应该怎么修改呢 |
7 arrow629 78 天前 你这个方案不如 https://github.com/SpaceTimee/Sheas-Cealer 其实 Chromium 启动时命令行参数就可以配置 SNI ,有人研究过 https://nicebowl.fun/24_8 |
8 fugu37 78 天前 V2 开了 ESNI 和 HTTP/3 ,支持任何一个都能直连 V 站 |
9 t00t00 OP @arrow629 如果自己看过以前所有的方案,就会发现以前的都是基于同子域名伪造,不仅麻烦,还不能确保证书完整性。而这个方案巧妙就巧妙在这里: 1. 通杀所有 Cloudflare 、Cloudfront 、Akamai 的 CDN 托管。(这个适用范围有多大我就不说了) 2. 握手证书是权威的,不需要自签。(也就是说握手证书和外网访问的指纹、公钥都是一致的,并没有关闭证书校验) |
10 t00t00 OP @fugu37 很明显,ESNI 在阻断列表上; HTTP/3 基于 UDP ,即使不阻断也会被 QoS 。现在通过 HTTP1.1/2 就足够了,而且证书并没有被破坏。 |
![]() | 11 dhb233 78 天前 没明白不提供 SNI 的情况下怎么做到安全校验的?如果 server 是独立 IP ,只使用固定证书,那是可以校验。如果不是这样,只是校验证书的合法性,那要么是信任部分 SNI ,要么还是会有被劫持的风险。信任部分 SNI 比较麻烦 |
12 t00t00 OP @dhb233 部分软件和云服务对于 SNI 字段的解析存在一些“怪癖”,即使 **不指定** 或 **存在格式错误** 时,仍能够正确对 TLS 加密流量进行分流(也能够返回正确证书并完成握手)。所以这个“怪癖”相当有意思。 |
![]() | 13 dhb233 78 天前 |
![]() | 18 Jesmora 78 天前 v2 不是一个境外 doh 就能解决了吗,何必搞这么麻烦 |
19 arrow629 77 天前 via Android @t00t00 但你这个方案要对 chromium 打 patch ,这成本不低啊。 而且无 sni 的情况下,服务器只能返回默认证书,不一定是自己想要的。 我不大明白你是怎么做到的,而且据我所知 cloudflare 免费版分配的 ip 是一定要有 sni 的情况下才能返回正确的证书 |
20 t00t00 OP @arrow629 就只改动一行代码,而且编译分发全部走的是 GitHub Action ,就算是后期需要随主线更新适配,成本相对来说还是比较低的。 而且,正文有两个要点 **不指定** 或 **存在格式错误** 。 但是重点在后面:**存在格式错误**。有些服务器认为错误就是错误,一遇到错误就不高兴罢工了;而有些服务器认为请求好不容易过来了,有错误给它修一下,当正常的来处理就好了。 |
![]() | 22 pagxir 77 天前 via Android 域名前置那一套? |
![]() | 24 realpg PRO 在 sni 的域名后面发送额外的点? |
25 tdb11039gg 74 天前 没懂,是不用梯子就能访问吗,试了访问不了呢 |
27 t00t00 OP @tdb11039gg DNS 污染需要自己处理,比如使用内置的 DoH 功能进行解析。可用的干净 DoH 服务器现在有挺多的。 |