config.proto 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. syntax = "proto3";
  2. package v2ray.core.app.proxyman;
  3. option csharp_namespace = "V2Ray.Core.App.Proxyman";
  4. option go_package = "proxyman";
  5. option java_package = "com.v2ray.core.app.proxyman";
  6. option java_multiple_files = true;
  7. import "v2ray.com/core/common/net/address.proto";
  8. import "v2ray.com/core/common/net/port.proto";
  9. import "v2ray.com/core/transport/internet/config.proto";
  10. message InboundConfig {
  11. }
  12. message AllocationStrategy {
  13. enum Type {
  14. // Always allocate all connection handlers.
  15. Always = 0;
  16. // Randomly allocate specific range of handlers.
  17. Random = 1;
  18. // External. Not supported yet.
  19. External = 2;
  20. }
  21. Type type = 1;
  22. message AllocationStrategyConcurrency {
  23. uint32 value = 1;
  24. }
  25. // Number of handlers (ports) running in parallel.
  26. // Default value is 3 if unset.
  27. AllocationStrategyConcurrency concurrency = 2;
  28. message AllocationStrategyRefresh {
  29. uint32 value = 1;
  30. }
  31. // Number of minutes before a handler is regenerated.
  32. // Default value is 5 if unset.
  33. AllocationStrategyRefresh refresh = 3;
  34. }
  35. enum KnownProtocols {
  36. HTTP = 0;
  37. TLS = 1;
  38. }
  39. message ReceiverConfig {
  40. v2ray.core.common.net.PortRange port_range = 1;
  41. v2ray.core.common.net.IPOrDomain listen = 2;
  42. AllocationStrategy allocation_strategy = 3;
  43. v2ray.core.transport.internet.StreamConfig stream_settings = 4;
  44. bool receive_original_destination = 5;
  45. reserved 6;
  46. repeated KnownProtocols domain_override = 7;
  47. }
  48. message OutboundConfig {
  49. }
  50. message SenderConfig {
  51. // Send traffic through the given IP. Only IP is allowed.
  52. v2ray.core.common.net.IPOrDomain via = 1;
  53. v2ray.core.transport.internet.StreamConfig stream_settings = 2;
  54. v2ray.core.transport.internet.ProxyConfig proxy_settings = 3;
  55. MultiplexingConfig multiplex_settings = 4;
  56. }
  57. message MultiplexingConfig {
  58. // Whether or not Mux is enabled.
  59. bool enabled = 1;
  60. // Max number of concurrent connections that one Mux connection can handle.
  61. uint32 concurrency = 2;
  62. }