|
|
|
@ -12,6 +12,7 @@ import "v2ray.com/core/common/log/config.proto";
|
|
|
|
|
import "v2ray.com/core/transport/internet/config.proto";
|
|
|
|
|
import "v2ray.com/core/transport/config.proto";
|
|
|
|
|
|
|
|
|
|
// Configuration serialization format.
|
|
|
|
|
enum ConfigFormat {
|
|
|
|
|
Protobuf = 0;
|
|
|
|
|
JSON = 1;
|
|
|
|
@ -40,34 +41,54 @@ message AllocationStrategy {
|
|
|
|
|
Type type = 1;
|
|
|
|
|
|
|
|
|
|
// Number of handlers (ports) running in parallel.
|
|
|
|
|
// Default value is 3 if unset.
|
|
|
|
|
AllocationStrategyConcurrency concurrency = 2;
|
|
|
|
|
|
|
|
|
|
// Number of minutes before a handler is regenerated.
|
|
|
|
|
// Default value is 5 if unset.
|
|
|
|
|
AllocationStrategyRefresh refresh = 3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Config for an inbound connection handler.
|
|
|
|
|
message InboundConnectionConfig {
|
|
|
|
|
// Protocol specific settings. Must be one of the supported protocols.
|
|
|
|
|
v2ray.core.common.loader.TypedSettings settings = 1;
|
|
|
|
|
|
|
|
|
|
// Range of port number to run on. Both inclusive.
|
|
|
|
|
v2ray.core.common.net.PortRange port_range = 2;
|
|
|
|
|
|
|
|
|
|
// IP address to listen on. 0.0.0.0 if unset.
|
|
|
|
|
v2ray.core.common.net.IPOrDomain listen_on = 3;
|
|
|
|
|
|
|
|
|
|
// Tag of this handler.
|
|
|
|
|
string tag = 4;
|
|
|
|
|
|
|
|
|
|
AllocationStrategy allocation_strategy = 5;
|
|
|
|
|
|
|
|
|
|
v2ray.core.transport.internet.StreamConfig stream_settings = 6;
|
|
|
|
|
|
|
|
|
|
bool allow_passive_connection = 7;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Config for an outbound connection handler.
|
|
|
|
|
message OutboundConnectionConfig {
|
|
|
|
|
v2ray.core.common.loader.TypedSettings settings = 1;
|
|
|
|
|
|
|
|
|
|
// IP address to send data through. 0.0.0.0 if unset.
|
|
|
|
|
v2ray.core.common.net.IPOrDomain send_through = 2;
|
|
|
|
|
v2ray.core.transport.internet.StreamConfig stream_settings = 3;
|
|
|
|
|
string tag = 4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
message Config {
|
|
|
|
|
// Inbound handler configurations. Must have at least one item.
|
|
|
|
|
repeated InboundConnectionConfig inbound = 1;
|
|
|
|
|
|
|
|
|
|
// Outbound handler configurations. Must have at least one item. The first item is used as default for routing.
|
|
|
|
|
repeated OutboundConnectionConfig outbound = 2;
|
|
|
|
|
v2ray.core.common.log.Config log = 3;
|
|
|
|
|
|
|
|
|
|
// App configuration. Must be one in the app directory.
|
|
|
|
|
repeated v2ray.core.common.loader.TypedSettings app = 4;
|
|
|
|
|
v2ray.core.transport.Config transport = 5;
|
|
|
|
|
}
|