-
Notifications
You must be signed in to change notification settings - Fork 4.5k
TLS ECH client: Use chrome-fingerprint and add padding; Add "h2c" and echSockopt
; Fix some issues
#4949
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
707e328
to
06580c3
Compare
echSockopt
, add h2c
echSockopt
, add h2c
, fix fromMitM
echSockopt
, add h2c
, fix fromMitM
echSockopt
, add h2c
, fix fromMitM
, add padding header
@patterniha |
if I fix it, there is no need to do anything else. /// for DOH:
/// i add header-padding and chrome-fingerprint to ech-DOH, but it still doesn't have body-padding. |
各种乱七八糟的padding喜欢加可以加 不过这个doh并没有那么高的query流量 大多数情况下查一个非常接近一个普通查询 没普通dns问题严重 |
@patterniha DoH 时 body-padding 要加的,不然一看返回 body 长度就知道这是在查 ECH |
@Fangliding 盲猜 ECH 查询比普通 A/AAAA 查询的响应长 50+ 字节,你用 WireShark 看下 |
I haven't read the code related to body-padding yet, |
padding的是请求 和返回的响应是什么没关系 还有HTTPS响应反而短一点点 |
@Fangliding DoH 的 body-padding 开了时,“it MUST pad the corresponding response”,我们讨论过 #4516 (comment) |
是这样的吗,我想着它随便发个公钥不比发几个 IPv4/v6 长吗, |
下面不是还有吗 padding到定长字节 响应长了的话padding的部分会自动缩减 所以跟响应长度没啥关系 哪怕响应是真长了点也还是返回那么多body |
@Fangliding 我的意思就是响应没 body-padding 的话,学 GFW 在外面用 WireShark 看应该能看出区别 |
都是468 这肯定不会出问题 人家的dns又不是ray里土制的A/AAAA特化 所有记录都是这个行为 |
|
@patterniha rebase 然后加上 body-padding,我晚点看一下 |
0063c04
to
cecd52e
Compare
cecd52e
to
b282921
Compare
new changes:
|
9f94030
to
2ede1c0
Compare
ready |
echSockopt
, add h2c
, fix fromMitM
, add padding headerechSockopt
, add h2c
, add padding, fix some issues
echSockopt
, add h2c
, add padding, fix some issuesechSockopt
, add h2c
, add padding, fix some issues
|
echSockopt
, add h2c
, add padding, fix some issuesechSockopt
and "h2c"; Use chrome-fingerprint and add padding; Fix some issues
echSockopt
and "h2c"; Use chrome-fingerprint and add padding; Fix some issuesechSockopt
; Use chrome-fingerprint and add padding; Fix some issues
echSockopt
; Use chrome-fingerprint and add padding; Fix some issuesechSockopt
and "h2c"; Use chrome-fingerprint and add padding; Fix some issues
echSockopt
and "h2c"; Use chrome-fingerprint and add padding; Fix some issuesechSockopt
; Fix some issues
|
currently we can't use: dialer, built-in-dns, socket-keepalive, happyeyeballs, ... for ech.
in fact, we couldn't set
sockopt
for ech, so i addechSockopt
.the format is exactly
streamSettings-sockopt
.add
h2c
for ech, so withsockopt-dialerProxy
that added in 1, we can use ech for ech-DOH, domain-fronting, and in general we can use our custom-tls.now ech-DOH use chrome-fingerprint
fromMitM
serverName should be set before callingApplyECH
add
X-Padding
header to ech-DOH///