Transport
TransportConfig — link protocols and socket options
Transport settings wrap proxy protocols via transport: { ... } on inbounds and outbounds.
Root message: TransportConfig, in protos/proto/vx/transport/transport.proto.
TransportConfig
Link protocols (oneof)
tcp, kcp, websocket, http, grpc, httpupgrade, and splithttp are mutually exclusive; each TransportConfig may set only one.
Security layer (oneof)
tls and reality are mutually exclusive. See Security.
Extensions
transportProtocolAny escape hatch for custom transport protocols
securityProtocolAny escape hatch for custom security protocols
Each configuration should set at most one link protocol and one security field (or neither).
Example (VLESS + WebSocket + TLS)
{
"tag": "vless-ws",
"ports": [443],
"transport": {
"websocket": { "path": "/ws", "host": "example.com" },
"tls": {
"serverName": "example.com",
"certificates": [
{ "certificateFilepath": "/etc/vx/cert.pem", "keyFilepath": "/etc/vx/key.pem" }
]
}
},
"protocol": {
"@type": "type.googleapis.com/vx.proxy.vless.VlessServerConfig",
"users": [{ "id": "uuid" }]
}
}Link protocols
Multi-inbound transport matrix
On MultiProxyInboundConfig, transport protocols are selected via transportProtocols[] by ALPN/SNI/path, rather than a single TransportConfig. Security blocks in securityConfigs[] work the same way. See Inbounds.