Releases: RPRX/v2ray-vless
VLESS XTLS ReadV
VLESS PREVIEW 2.5
https://www.v2fly.org/developer/intro/compile.html
VLESS & XTLS Changes
- v2fly@d1ed330 Remove XTLS WriteMultiBuffer method
- v2fly@ff6bb51 Fix XTLS over mKCP
- v2fly@95e7e0d AtWarning() -> AtInfo()
- v2fly@425b4b4 Add padding to abstract unix domain socket in fallbacks @lucifer9
v2ray-core v4.31.0+
Golang 1.15.2
VLESS PREVIEW 2.4
Origin 会持续监测数据流,确保输出符合 TLSv1.3(实践中发现只需替换掉 TLSv1.2 尾部的 alert),并处理可能的中间人攻击等异常情况。
Direct 模式现在则是 Origin 经验的简化版,Write 只去掉了 TLSv1.2 尾部的 alert,Read 则一律直接交给内层 TLS 处理。
VLESS & XTLS Changes
- XTLS/Go@d42c13c Add trim to Direct Mode.
- v2fly@bcc7b78 Add XTLS support to mKCP.
- v2fly@a308620 Fix an unexpected behavior.
v2ray-core v4.30.0+
Golang 1.15.2
VLESS PREVIEW 2.3
与 Origin 不同,Direct 模式并不持续监测后续的数据流,也不会进行任何干涉。该模式的推荐程度与 TLSv1.3 的普及程度成正相关。
VLESS & XTLS Changes
- XTLS/Go@b6e7539 ,XTLS 新增 Direct 模式
xtls-rprx-direct
,理论上是 XTLS 的性能极限,可以作为后续算法的参考基准。 - XTLS/Go@f8f42ed ,XTLS 的特殊功能开启时,若 10 次内未检测到 TLS data record,将自动关闭特殊功能。
- XTLS/Go@520292b ,XTLS、VLESS 其它一些调整与优化。go.mod 所有依赖升至最新版本。
v2ray-core v4.30.0+
Golang 1.15.2
VLESS PREVIEW 2.2
现在由 VLESS 回落到 V2Ray 的 Trojan 协议不存在问题了,甚至 WS 等也支持这个玩法(其实一直都支持)。
VLESS Changes
- 优化了协议回落的判断过程,不再需要
pre
变量。 xtls-rprx-origin stopped UDP/443
日志由 warning 改为 info。- 服务端允许
clients
为空时启动。
v2ray-core v4.30.0+
Golang 1.15.2
VLESS PREVIEW 2.1
https://github.com/charlieethan/vless-build/releases
VLESS Changes
- VLESS UDP over TCP struct breaking change.
- Add XTLS support to DomainSocket.
- Other commits in September.
v2ray-core v4.29.0+
Golang 1.15.2
VLESS PREVIEW 2
XTLS 只加密内层 TLS 的握手和前一两个 data record,直连、中转、嵌套 ... XTLS 适用于多种需求。
VLESS Changes
- 全面支持 XTLS,继承自 VLESS XTLS 系列,详见该系列的介绍及文档。
- 启用 XTLS 时,UDP over TCP 将会使用一种带长度的新格式。
- 优化了协议回落时 PROXY protocol v2 的编码过程。
v2ray-core v4.28.2+
Golang 1.15.2
VLESS XTLS 3
没错,VLESS & XTLS 不仅性能强悍,超越了 SS 等传统代理,还不失 TLS 代理的隐蔽性。
VLESS Changes
- XTLS/Go@6176a02 、XTLS/Go@781f2a6 。
- 设置环境变量
V2RAY_VLESS_XTLS_SHOW = true
以显示 XTLS 的输出,适用于服务端与客户端。 - 若你的流控填
"xtls-rprx-origin-udp443"
,UDP/443 将不会被拦截。该值仅适用于客户端,服务端仍填"xtls-rprx-origin"
。
v2ray-core v4.28.1+
Golang 1.15.2
VLESS XTLS 2
XTLS 本身需要是 TLSv1.3,内层 TLS 可以为 1.3 或 1.2,此时特殊功能才会生效。
VLESS Changes
- XTLS/Go@b7417c0 ,感谢 @xsm1997 的反馈。
- 使用 XTLS 时,开启 Mux 将会报错;代理 UDP 时,不会尝试开启 XTLS 的特殊功能。
- 使用 XTLS 时,自动拦截 UDP/443,防止上层应用使用 QUIC。且 QUIC 含 TCP 的功能,不适合被 over TCP。QUIC 还含 TLS 的功能。
v2ray-core v4.28.1+
Golang 1.15.2
VLESS XTLS
划时代的革命性概念与技术:XTLS
当我们使用基于 TLS 的代理浏览 HTTPS 网站、刷手机 APP 时,其实是两层 TLS:外层是代理的 TLS,内层是网站、APP 的 TLS。
XTLS 做了什么?
- 从第二个内层 TLS data record 开始,数据不二次加解密,直接转发,且从外面看还是一条连贯的普通 TLS。
- Write 和 Read 妥善处理非预期数据和中间人攻击等,对任何干扰的反应与普通 TLS 表现一致。
- 服务端无法被主动探测出差异:VLESS 在验证 UUID、该用户请求且可以用 XTLS 后才会开启它的特殊功能。
这个黑科技的效果?
- 其实 XTLS 就是无缝拼接了两条货真价实的 TLS,因此绝大多数流量无需二次加解密了(安全代理中性能最强,没有之一)。
- 对路由器、服务器等中间设备特别友好:降低了 90% 以上的加解密开销,几乎只剩流量转发。对于手机,则是减少耗电。
- 链式代理的革命:即使多个 XTLS 嵌套,绝大多数流量也始终只需加解密一次(类似 TOR 的网络应该非常需要 XTLS)。
如何通过 VLESS 使用它?
- 替换服务端与客户端的可执行文件。若下面没有,请替换
crypto/tls/conn.go
后自行编译。 - VLESS over TCP with TLS,VLESS 需要直接处理 TLS,不能开启 Mux。
- 两边都加一个与
"id"
同级的新参数“流控”:"flow":"xtls-rprx-origin"
(服务端的代表允许,客户端的代表使用)。
v2ray-core v4.28.0
Golang 1.15.2