Xray-core v24.9.30
XMUX (multiplex controller) for SplitHTTP
这是 Xray-core 改变版本号规则后的首个 stable 版本,正如 v1.8.24 所预告的,该版本的重要更新主要有:
- SplitHTTP 传输层的 XMUX:https://xtls.github.io/config/transports/splithttp.html
- HTTP 传输层的 H3:https://xtls.github.io/config/transports/http.html
- TCP 传输层更名为 RAW:https://xtls.github.io/config/transports/raw.html
- Freedom 出站的 UDP noises:https://xtls.github.io/config/outbounds/freedom.html
以及 SplitHTTP 仅兼容 v1.8.24(移除了 ok
),移除 QUIC、DomainSocket 传输层,移除对远古配置的兼容代码。
若想引入 Xray-core 作为 lib,参考 2dust/AndroidLibXrayLite#58
下个版本我们会为 XMUX 预设非无限的默认值,把 SplitHTTP 和 HTTP 合并为 XHTTP 传输层(相当于 SplitHTTP 支持了 REALITY,HTTP 也有了默认的 header padding 和 XMUX),XHTTP 允许通过 path 配置参数以方便 GUI 客户端与分享。
What's Changed
- SplitHTTP: Remove
ok
compatibility logic by @mmmray in #3753 - Transport: Remove QUIC by @mmmray in #3754
- Transport: Remove DomainSocket by @mmmray in #3757
- Config: Remove global
transport
by @mmmray @Fangliding in #3751 - Config: Remove legacy
inbound/outbound/detours
by @mmmray in #3769 - Config: Remove some legacy fields from V2Ray 3.x era by @KobeArthurScofield in #3776
- Fix: Return error when Fingerprint does not support TLS 1.3 by @Fangliding in #3774
- Fix: RPC call causes xray panic problem using wrong account type by @bestwishCT in #3744
- Config: Remove legacy config fields again by @KobeArthurScofield in #3782
- Log: Add MaskAddress option to hide IP addresses by @Fangliding in #3783
- Remove remnants of global
transport
by @KobeArthurScofield in #3792 - DNS: do not use cache when returned DNS result has errors by @Fangliding in #3784
- Log: Improve feature deprecation/removal logs by @KobeArthurScofield in #3793
- Routing: Add regexp syntax support to UserMatcher by @vnxme in #3799
- Allow to inject custom validator in VLESS controller by @torikki-tou in #3453
- Sniff: Routing “attrs” support non http inbound by @Fangliding in #3808
- Log: show the matching rule tag by @Fangliding in #3809
- QUIC sniffer: handle multiple initial packets by @Fangliding @Vigilans in #3802
- Fix int overflow on x32 processors causing panic using burstObservatory by @tekig in #3810
- DNS outbound: Add blockTypes by @Fangliding in #3812
- Errors: Add PrintRemovedFeatureError & PrintDeprecatedFeatureWarning by @KobeArthurScofield in #3804
- SplitHTTP: Read and validate HTTP/1.1 responses by @4nd3r5on in #3797
- SplitHTTP client: Add xmux (multiplex controller) for H3 & H2 by @ll11l1lIllIl1lll @mmmray in #3613
- UDP noises: Add base64 and multi-packet support by @dragonbreath2000 @Fangliding @mmmray in #3794
- SplitHTTP client: Fix xmux config deserialization by @mmmray in #3827
- Config: Remove more legacy fields by @KobeArthurScofield in #3817
- Browser Dialer: Change from ES5 to ES6+ for performance by @PoneyClairDeLune in #3832
- Xmux: Value of 0 is treated the same as no value by @mmmray in #3835
- SplitHTTP server: Add global CORS headers for browser dialer by @PoneyClairDeLune in #3830
- Remove legacy code by @KobeArthurScofield in #3838
- Transport: Add HTTP3 to HTTP by @yuhan6665 in #3819
- Transport: Add RAW as an alias of TCP by @RPRX in #3852
- SplitHTTP Config: Add capability to parse int in string format by @Fangliding in #3855
以及更新 README,升级一些依赖,使用 Go 1.23.1 进行编译。
New Contributors
- @bestwishCT made their first contribution in #3744
- @vnxme made their first contribution in #3799
- @torikki-tou made their first contribution in #3453
- @tekig made their first contribution in #3810
- @4nd3r5on made their first contribution in #3797
Full Changelog: v1.8.24...v24.9.30