{
"detour": "upstream-out",
"bind_interface": "en0",
"inet4_bind_address": "0.0.0.0",
"inet6_bind_address": "::",
"routing_mark": 1234,
"reuse_addr": false,
"connect_timeout": "5s",
"tcp_fast_open": false,
"tcp_multi_path": false,
"udp_fragment": false,
"domain_strategy": "prefer_ipv6",
"fallback_delay": "300ms"
}
Field | Available Context |
---|---|
bind_interface /*bind_address /routing_mark /reuse_addr / tcp_fast_open / tcp_multi_path / udp_fragment /connect_timeout |
detour not set |
The tag of the upstream outbound.
The network interface to bind to.
The IPv4 address to bind to.
The IPv6 address to bind to.
!!! error ""
Only supported on Linux.
Set netfilter routing mark.
Reuse listener address.
Enable TCP Fast Open.
!!! warning ""
Go 1.21 required.
Enable TCP Multi Path.
Enable UDP fragmentation.
Connect timeout, in golang's Duration format.
A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms", "-1.5h" or "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
One of prefer_ipv4
prefer_ipv6
ipv4_only
ipv6_only
.
If set, the requested domain name will be resolved to IP before connect.
Outbound | Effected domains | Fallback Value |
---|---|---|
direct |
Domain in request | Take inbound.domain_strategy if not set |
others | Domain in server address | / |
The length of time to wait before spawning a RFC 6555 Fast Fallback connection. That is, is the amount of time to wait for connection to succeed before assuming that IPv4/IPv6 is misconfigured and falling back to other type of addresses. If zero, a default delay of 300ms is used.
Only take effect when domain_strategy
is set.