github XTLS/Xray-core v1.1.4
Xray-core v1.1.4

latest releases: v24.11.11, v24.11.5, v24.10.31...
3 years ago

Optimize Memory Usage

Xray-core 及 v2ray-core v4.32.0+ 均默认内部读取 json 并反复解码整个 dat 文件,启动时会消耗非常多的内存,且迟迟不还给系统。#68

于是,现在 Xray-core 会先 预解析 dat 文件的 pb 结构,只 Unmarshal 需要的部分,并多次主动 GC,加载完配置主动触发 FreeOSMemory 释放内存。这大幅降低了启动时的瞬时内存占用,解决了默认 jsonem 带来的问题,预解析更是让更多的设备可以直接加载配置。45f44c4

目前 VMess 协议常与 WSS 等结合使用,此时服务端的 drain 机制是没有必要的,所以非纯 TCP/DS 时关闭了此机制以节省资源。f390047

More Configurable TLS

此版本开始,Xray 的 tlsSettings & xtlsSettings 新增了四项配置:minVersionmaxVersioncipherSuitespreferServerCipherSuites
十分感谢 @eMeab 的多个 PR,现在你可以自由配置它们以改变客户端的 TLS 指纹、提升服务端的网站评级等,详见 #56 (comment)

此外,早已弃用的 allowInsecureCiphers 已被完全移除。注意,allowInsecure 仍然保留。这些改动可能需要重新生成 pb 配置。

More Powerful XTLS

现在你可以在更多场景下使用 XTLS Splice 了:出站的 Splice 现已支持入站是 XTLS 的场景(即入站是任意 XTLS 且出站是 XTLS Splice)
关于 Linux 内核参数,我们有了新的进展:已确认大多数硬路由等带硬件 NAT 的设备不会受到明显影响,详见 v1.1.3 的最新说明

Trojan XTLS 已就绪,使用方式及规则与 VLESS XTLS 完全相同:支持 Splice、Direct 等,服务端 Trojan XTLS 兼容客户端普通 Trojan TLS
理论上,Xray-core 的 Trojan 与 VLESS 在性能上没有区别,包括 XTLS 系列,可直接参考以往 VLESS XTLS 的性能测试

Other Changes

  • Fix: HTTP dialer uses ctx instead of context.Background() @JimhHan
  • Config loader returns error instead of directly panic @JimhHan

Chores

  • Upgrade dependencies
  • Update geoip.dat, geosite.dat

Notices

  • Xray-core releases 中的 Linux 预编译版不再附带 service 文件。
  • Xray-install 内置 service 文件,暂时不含自动重启功能。

Don't miss a new Xray-core release

NewReleases is sending notifications on new releases.