v1.8.16
XTLS/Xray-corev1.8.16Jun 21, 2024by RPRX
AI Summary
Introduces the new SplitHTTP transport. It uses long-lived HTTP GET for download and multiple POSTs for upload, designed to work on CDNs that don't support WebSocket/gRPC and to be more efficient than Meek.
Key Highlights
- New SplitHTTP transport implementation
- Works with CDNs not supporting WebSocket/gRPC
- Supports HTTP/3 (QUIC) in future
- HTTPUpgrade custom headers support
New Features
- SplitHTTP transport
- HTTPUpgrade custom headers
- Sniffing domainsExcluded regex support
- WireGuard inbound crash fix
- UDP memory leak fix
Full Release Notes
## SplitHTTP Transport #3412 #3462 #716 @mmmray @RPRX @Fangliding 实现进一步的流量混淆有两种刚好相反的方式:**多路复用** 与 **拆分连接**,~~虽然现在 SH H2 只是逻辑拆分而没有实际拆分~~ SplitHTTP 使用 HTTP GET 长连接传输下行流量,使用多个 HTTP POST 请求传输上行流量,**可以通过不支持 WebSocket、gRPC 的 CDN**,实现与 Meek 相同的目标,但 SplitHTTP 是从零开始设计的全新传输方式,并非基于 Meek 修改而来,**且 SplitHTTP 比 Meek 更简单、效率更高**,详见文档 [英文(原生文档)](https://xtls.github.io/en/config/transports/splithttp.html) [中文(内容略有不同)](https://xtls.github.io/config/transports/splithttp.html) 此外,SplitHTTP 没有 WebSocket 的 ALPN 问题,这是一大优势,未来还会支持 HTTP/3(QUIC) ## Features - `HTTPUpgrade` 使用自定义 `headers` 可以保持大小写 #3427 #3430 @mmmray @Fangliding - 嗅探选项 `domainsExcluded` 可以使用正则表达式 #3449 @Fangliding ## Fixes - 修复 `Wireguard` 入站的一个崩溃 #3391 @yuhan6665 - 修复一处 UDP 内存泄露 #3401 @isluckys - `HTTPUpgrade` 缓存可以正确释放 #3428 @mmmray ## Chores - 更新 WebSocket、HTTPUpgrade 测试代码 #3414 https://github.com/XTLS/Xray-core/commit/be29cc39d7b63f4a77ca97881ff62b61bc1b9cb6 @Fangliding - Remove unnecessary `if` in httpupgrade #3413 @AsenHu - CI: not create zip file when not releasing #3424 @AsenHu - 修改 grep 参数 #3399 @Grvzard - 升级所有依赖 @yuhan6665