v24.9.30
XTLS/Xray-corev24.9.30Sep 30, 2024by RPRX
AI Summary
This is the first stable version following the date-based versioning change. It introduces XMUX for SplitHTTP, adds HTTP/3 support to the HTTP transport layer, renames TCP to RAW, and removes legacy transport layers like QUIC and DomainSocket.
Key Highlights
- XMUX (multiplex controller) for SplitHTTP
- HTTP transport layer now supports H3
- TCP transport renamed to RAW
- Removal of legacy QUIC and DomainSocket transports
- Removal of legacy config fields (global transport, old inbound/outbound)
Breaking Changes
- Remove QUIC transport layer
- Remove DomainSocket transport layer
- Remove global `transport` config
- Remove legacy `inbound/outbound/detours` config
- Remove legacy V2Ray 3.x era config fields
- SplitHTTP now requires v1.8.24 compatibility (removed `ok` field)
New Features
- XMUX for SplitHTTP
- HTTP H3 support
- RAW transport (alias for TCP)
- UDP noises for Freedom outbound
- MaskAddress option to hide IP addresses in logs
- Regexp syntax support in UserMatcher
- Custom validator injection in VLESS controller
- DNS blockTypes support
Full Release Notes
## XMUX (multiplex controller) for SplitHTTP 这是 Xray-core 改变版本号规则后的首个 stable 版本,正如 [v1.8.24](https://github.com/XTLS/Xray-core/releases/tag/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,参考 https://github.com/2dust/AndroidLibXrayLite/pull/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 https://github.com/XTLS/Xray-core/pull/3753 * Transport: Remove QUIC by @mmmray in https://github.com/XTLS/Xray-core/pull/3754 * Transport: Remove DomainSocket by @mmmray in https://github.com/XTLS/Xray-core/pull/3757 * Config: Remove global `transport` by @mmmray @Fangliding in https://github.com/XTLS/Xray-core/pull/3751 * Config: Remove legacy `inbound/outbound/detours` by @mmmray in https://github.com/XTLS/Xray-core/pull/3769 * Config: Remove some legacy fields from V2Ray 3.x era by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3776 * Fix: Return error when Fingerprint does not support TLS 1.3 by @Fangliding in https://github.com/XTLS/Xray-core/pull/3774 * Fix: RPC call causes xray panic problem using wrong account type by @bestwishCT in https://github.com/XTLS/Xray-core/pull/3744 * Config: Remove legacy config fields again by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3782 * Log: Add MaskAddress option to hide IP addresses by @Fangliding in https://github.com/XTLS/Xray-core/pull/3783 * Remove remnants of global `transport` by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3792 * DNS: do not use cache when returned DNS result has errors by @Fangliding in https://github.com/XTLS/Xray-core/pull/3784 * Log: Improve feature deprecation/removal logs by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3793 * Routing: Add regexp syntax support to UserMatcher by @vnxme in https://github.com/XTLS/Xray-core/pull/3799 * Allow to inject custom validator in VLESS controller by @torikki-tou in https://github.com/XTLS/Xray-core/pull/3453 * Sniff: Routing “attrs” support non http inbound by @Fangliding in https://github.com/XTLS/Xray-core/pull/3808 * Log: show the matching rule tag by @Fangliding in https://github.com/XTLS/Xray-core/pull/3809 * QUIC sniffer: handle multiple initial packets by @Fangliding @Vigilans in https://github.com/XTLS/Xray-core/pull/3802 * Fix int overflow on x32 processors causing panic using burstObservatory by @tekig in https://github.com/XTLS/Xray-core/pull/3810 * DNS outbound: Add blockTypes by @Fangliding in https://github.com/XTLS/Xray-core/pull/3812 * Errors: Add PrintRemovedFeatureError & PrintDeprecatedFeatureWarning by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3804 * SplitHTTP: Read and validate HTTP/1.1 responses by @4nd3r5on in https://github.com/XTLS/Xray-core/pull/3797 * SplitHTTP client: Add xmux (multiplex controller) for H3 & H2 by @ll11l1lIllIl1lll @mmmray in https://github.com/XTLS/Xray-core/pull/3613 * UDP noises: Add base64 and multi-packet support by @dragonbreath2000 @Fangliding @mmmray in https://github.com/XTLS/Xray-core/pull/3794 * SplitHTTP client: Fix xmux config deserialization by @mmmray in https://github.com/XTLS/Xray-core/pull/3827 * Config: Remove more legacy fields by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3817 * Browser Dialer: Change from ES5 to ES6+ for performance by @PoneyClairDeLune in https://github.com/XTLS/Xray-core/pull/3832 * Xmux: Value of 0 is treated the same as no value by @mmmray in https://github.com/XTLS/Xray-core/pull/3835 * SplitHTTP server: Add global CORS headers for browser dialer by @PoneyClairDeLune in https://github.com/XTLS/Xray-core/pull/3830 * Remove legacy code by @KobeArthurScofield in https://github.com/XTLS/Xray-core/pull/3838 * Transport: Add HTTP3 to HTTP by @yuhan6665 in https://github.com/XTLS/Xray-core/pull/3819 * Transport: Add RAW as an alias of TCP by @RPRX in https://github.com/XTLS/Xray-core/pull/3852 * SplitHTTP Config: Add capability to parse int in string format by @Fangliding in https://github.com/XTLS/Xray-core/pull/3855 以及更新 README,升级一些依赖,使用 Go 1.23.1 进行编译。 ## New Contributors * @bestwishCT made their first contribution in https://github.com/XTLS/Xray-core/pull/3744 * @vnxme made their first contribution in https://github.com/XTLS/Xray-core/pull/3799 * @torikki-tou made their first contribution in https://github.com/XTLS/Xray-core/pull/3453 * @tekig made their first contribution in https://github.com/XTLS/Xray-core/pull/3810 * @4nd3r5on made their first contribution in https://github.com/XTLS/Xray-core/pull/3797 **Full Changelog**: https://github.com/XTLS/Xray-core/compare/v1.8.24...v24.9.30