2 KiB
V2Ray Transport is a set of private protocols invented by v2ray, and has contaminated the names of other protocols, such
as trojan-grpc
in clash.
Structure
{
"type": ""
}
Available transports:
- HTTP
- WebSocket
- QUIC
- gRPC
!!! warning "Difference from v2ray-core"
* No TCP transport, plain HTTP is merged into the HTTP transport.
* No mKCP transport.
* No DomainSocket transport.
!!! note
You can ignore the JSON Array [] tag when the content is only one item
HTTP
{
"type": "http",
"host": [],
"path": "",
"method": "",
"headers": {}
}
!!! warning "Difference from v2ray-core"
TLS is not enforced. If TLS is not configured, plain HTTP 1.1 is used.
host
List of host domain.
The client will choose randomly and the server will verify if not empty.
path
Path of HTTP request.
The server will verify if not empty.
method
Method of HTTP request.
The server will verify if not empty.
headers
Extra headers of HTTP request.
The server will write in response if not empty.
WebSocket
{
"type": "ws",
"path": "",
"headers": {},
"max_early_data": 0,
"early_data_header_name": ""
}
path
Path of HTTP request.
The server will verify if not empty.
headers
Extra headers of HTTP request.
max_early_data
Allowed payload size is in the request. Enabled if not zero.
early_data_header_name
Early data is sent in path instead of header by default.
To be compatible with Xray-core, set this to Sec-WebSocket-Protocol
.
It needs to be consistent with the server.
QUIC
{
"type": "quic"
}
!!! warning "Difference from v2ray-core"
No additional encryption support:
It's basically duplicate encryption. And Xray-core is not compatible with v2ray-core in here.
gRPC
!!! warning ""
gRPC is not included by default, see [Installation](/#installation).
{
"type": "grpc",
"service_name": "TunService"
}
service_name
Service name of gRPC.