| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- syntax = "proto3";
- package xray.transport.internet;
- option csharp_namespace = "Xray.Transport.Internet";
- option go_package = "github.com/xtls/xray-core/transport/internet";
- option java_package = "com.xray.transport.internet";
- option java_multiple_files = true;
- import "common/serial/typed_message.proto";
- import "common/net/address.proto";
- enum DomainStrategy {
- AS_IS = 0;
- USE_IP = 1;
- USE_IP4 = 2;
- USE_IP6 = 3;
- USE_IP46 = 4;
- USE_IP64 = 5;
- FORCE_IP = 6;
- FORCE_IP4 = 7;
- FORCE_IP6 = 8;
- FORCE_IP46 = 9;
- FORCE_IP64 = 10;
- }
- message TransportConfig {
- // Type of network that this settings supports.
- string protocol_name = 3;
- // Specific settings. Must be of the transports.
- xray.common.serial.TypedMessage settings = 2;
- }
- message StreamConfig {
- xray.common.net.IPOrDomain address = 8;
- uint32 port = 9;
- // Effective network.
- string protocol_name = 5;
- repeated TransportConfig transport_settings = 2;
- // Type of security. Must be a message name of the settings proto.
- string security_type = 3;
- // Settings for transport security. For now the only choice is TLS.
- repeated xray.common.serial.TypedMessage security_settings = 4;
- SocketConfig socket_settings = 6;
- }
- message ProxyConfig {
- string tag = 1;
- bool transportLayerProxy = 2;
- }
- message CustomSockopt {
- string level = 1;
- string opt = 2;
- string value = 3;
- string type = 4;
- }
- // SocketConfig is options to be applied on network sockets.
- message SocketConfig {
- // Mark of the connection. If non-zero, the value will be set to SO_MARK.
- int32 mark = 1;
- // TFO is the state of TFO settings.
- int32 tfo = 2;
- enum TProxyMode {
- // TProxy is off.
- Off = 0;
- // TProxy mode.
- TProxy = 1;
- // Redirect mode.
- Redirect = 2;
- }
- // TProxy is for enabling TProxy socket option.
- TProxyMode tproxy = 3;
- // ReceiveOriginalDestAddress is for enabling IP_RECVORIGDSTADDR socket
- // option. This option is for UDP only.
- bool receive_original_dest_address = 4;
- bytes bind_address = 5;
- uint32 bind_port = 6;
- bool accept_proxy_protocol = 7;
- DomainStrategy domain_strategy = 8;
- string dialer_proxy = 9;
- int32 tcp_keep_alive_interval = 10;
- int32 tcp_keep_alive_idle = 11;
-
- string tcp_congestion = 12;
-
- string interface = 13;
- bool v6only = 14;
- int32 tcp_window_clamp = 15;
- int32 tcp_user_timeout = 16;
- int32 tcp_max_seg = 17;
- bool tcp_no_delay = 18;
- bool tcp_mptcp = 19;
- repeated CustomSockopt customSockopt = 20;
- }
|