VXVX Docs

Outbounds

OutboundHandlerConfig reference

Outbounds are configured in ServerConfig.outbounds.

Schema definition: protos/proto/vx/outbound/outbound.proto.

Each handler has a unique tag referenced by router rules (outboundTag) or chain targets.

OutboundHandlerConfig

tag
string

Handler name for routing

transport

Client transport (TLS, WebSocket, etc.)

address
string

Remote host or IP

port
uint32

Remote port

ports

Multiple port ranges

protocol
Any

Proxy client configuration (Freedom, Blackhole, VMess, etc.)

enableMux
bool

Enable connection multiplexing

muxConfig

maxConnection, maxConcurrency

uot
bool

UDP over TCP

domainStrategy
DomainStrategy

When address is a domain, resolve and select an IP using one of these strategies:

  • PreferIPv4 (default): Query both A and AAAA records; prefer IPv4, fall back to IPv6 if no IPv4 is available.
  • PreferIPv6: Query both A and AAAA records; prefer IPv6, fall back to IPv4 if no IPv6 is available.
  • IPv4Only: Query A records only; use IPv4 only.
  • IPv6Only: Query AAAA records only; use IPv6 only.
  • Speed: Query A and AAAA in parallel and use whichever address family returns first; if the connection fails and the other family is available, try that one next.

If the network interface does not support IPv6, PreferIPv4, PreferIPv6, and Speed automatically downgrade to IPv4Only.

random

Use all ports in ports simultaneously

one

Rotate a single port (interval or minInterval / maxInterval)

Examples

Direct (freedom) outbound

A minimal server needs this to forward traffic without an upstream proxy:

{
  "tag": "direct",
  "protocol": {
    "@type": "type.googleapis.com/vx.proxy.freedom.FreedomConfig"
  }
}

Block outbound

{
  "tag": "block",
  "protocol": {
    "@type": "type.googleapis.com/vx.proxy.blackhole.BlackholeConfig"
  }
}

Proxy client configurations are in Proxy protocols (*ClientConfig messages). Use with Transport and Security as needed.

Comments