XUDP 是工作在可靠有序双向 tunnel 之上的带地址的“多路复用 UDP 隧道”
client - xudp_client - proxy_server.xudp_server - dst_server
XUDP Stream:
RFC 9000 的包结构风格
XUDP_0 {
stream_id(16), // stream 标识
atyp(8)=0x00, // 地址类型,复用该子隧道上一次使用的地址和端口
length(16), // payload 长度
payload(..) // payload
}
XUDP_1 {
stream_id(16), // stream 标识
atyp(8)=0x01, // 地址类型 IPv4+port
addr(48), // IPv4
port(16), // port
length(16), // payload 长度
payload(..) // payload
}
XUDP_2 {
stream_id(16), // stream 标识
atyp(8)=0x02, // 地址类型 Domain+port
domain_length(8),
addr(..), // domain
port(16), // port
length(16), // payload 长度
payload(..) // payload
}
XUDP_3 {
stream_id(16), // stream 标识
atyp(8)=0x03, // 地址类型 IPv6+port
addr(128), // IPv6
port(16), // port
length(16), // payload 长度
payload(..) // payload
}
https://github.com/v2fly/v2ray-core/issues/112#issuecomment-688271288
https://github.com/XTLS/Xray-core/discussions/252
https://github.com/XTLS/Xray-core/discussions/237
https://xtls.github.io/about/news.html#_2023-4-18-v1-8-1
https://github.com/XTLS/Xray-core/tree/v26.2.6
https://github.com/SagerNet/sing-vmess/tree/v0.2.7