fix: xhttp 传输移除 XTLS Vision flow(与 HTTP/2 多路复用不兼容)#2
Merged
Conversation
Root cause: flow: xtls-rprx-vision 工作在 TLS Record 层, xhttp 使用 HTTP/2 流多路复用管理自身帧结构,两者冲突。 TLS/Reality 握手成功,但数据传输出错。 Changes: - deploy.sh: xhttp 模板移除 flow 字段(tcp 保留) - deploy.sh: show_config xhttp URI 移除 &flow=,"流控"行仅 tcp 显示 - export.sh: xhttp URI 移除 &flow=,Clash config 从 xhttp 中 del(.flow) - tests: 3 个 xhttp 测试 + metadata export 追加 flow-absent 断言 - .env.example: 默认启用 EASYNET_REALITY_TRANSPORT=xhttp
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
问题
xhttp 模式(已在上一个 PR #1 中移除了 fragment 冲突)仍然能连接但不能上网。
根因
flow: "xtls-rprx-vision"是 XTLS Vision 流控,工作在 TLS Record 层来模仿浏览器流量。xhttp 传输使用 HTTP/2 风格多路复用流管理自己的帧结构。两者同时存在时:
flow字段在代码中无条件写入,未区分 tcp/xhttp。修改
deploy.sh
"flow": "xtls-rprx-vision"(tcp 模板保留)&flow=xtls-rprx-visionexport.sh
&flow=xtls-rprx-visionjq 'del(.flow)'移除 flow 字段测试
flow // empty→ 为空断言flow=+ Clash 不含.flow断言.env.example
EASYNET_REALITY_TRANSPORT=xhttp验证