5.5 KiB
icon |
---|
material/new-box |
!!! quote "Changes in sing-box 1.12.0"
:material-plus: [domain_resolver](#domain_resolver)
:material-delete-clock: [domain_strategy](#domain_strategy)
!!! quote "Changes in sing-box 1.11.0"
:material-plus: [network_strategy](#network_strategy)
:material-alert: [fallback_delay](#fallback_delay)
:material-alert: [network_type](#network_type)
:material-alert: [fallback_network_type](#fallback_network_type)
Structure
{
"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_resolver": "", // or {}
"network_strategy": "default",
"network_type": [],
"fallback_network_type": [],
"fallback_delay": "300ms",
// Deprecated
"domain_strategy": "prefer_ipv6"
}
!!! note ""
You can ignore the JSON Array [] tag when the content is only one item
Fields
detour
The tag of the upstream outbound.
If enabled, all other fields will be ignored.
bind_interface
The network interface to bind to.
inet4_bind_address
The IPv4 address to bind to.
inet6_bind_address
The IPv6 address to bind to.
routing_mark
!!! quote ""
Only supported on Linux.
Set netfilter routing mark.
reuse_addr
Reuse listener address.
tcp_fast_open
Enable TCP Fast Open.
tcp_multi_path
!!! warning ""
Go 1.21 required.
Enable TCP Multi Path.
udp_fragment
Enable UDP fragmentation.
connect_timeout
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".
domain_resolver
!!! warning ""
`outbound` DNS rule items are deprecated and will be removed in sing-box 1.14.0, so this item will be required for outbound/endpoints using domain name in server address since sing-box 1.14.0.
Set domain resolver to use for resolving domain names.
This option uses the same format as the route DNS rule action without the action
field.
Setting this option directly to a string is equivalent to setting server
of this options.
Outbound/Endpoints | Effected domains |
---|---|
direct |
Domain in request |
others | Domain in server address |
network_strategy
!!! question "Since sing-box 1.11.0"
!!! quote ""
Only supported in graphical clients on Android and Apple platforms with `auto_detect_interface` enabled.
Strategy for selecting network interfaces.
Available values:
default
(default): Connect to default network or networks specified innetwork_type
sequentially.hybrid
: Connect to all networks or networks specified innetwork_type
concurrently.fallback
: Connect to default network or preferred networks specified innetwork_type
concurrently, and try fallback networks when unavailable or timeout.
For fallback, when preferred interfaces fails or times out, it will enter a 15s fast fallback state (Connect to all preferred and fallback networks concurrently), and exit immediately if preferred networks recover.
Conflicts with bind_interface
, inet4_bind_address
and inet6_bind_address
.
network_type
!!! question "Since sing-box 1.11.0"
!!! quote ""
Only supported in graphical clients on Android and Apple platforms with `auto_detect_interface` enabled.
Network types to use when using default
or hybrid
network strategy or
preferred network types to use when using fallback
network strategy.
Available values: wifi
, cellular
, ethernet
, other
.
Device's default network is used by default.
fallback_network_type
!!! question "Since sing-box 1.11.0"
!!! quote ""
Only supported in graphical clients on Android and Apple platforms with `auto_detect_interface` enabled.
Fallback network types when preferred networks are unavailable or timeout when using fallback
network strategy.
All other networks expect preferred are used by default.
fallback_delay
!!! question "Since sing-box 1.11.0"
!!! quote ""
Only supported in graphical clients on Android and Apple platforms with `auto_detect_interface` enabled.
The length of time to wait before spawning a RFC 6555 Fast Fallback connection.
For domain_strategy
, 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.
For network_strategy
, is the amount of time to wait for connection to succeed before falling
back to other interfaces.
Only take effect when domain_strategy
or network_strategy
is set.
300ms
is used by default.
domain_strategy
!!! failure "Deprecated in sing-box 1.12.0"
`domain_strategy` is merged to [domain_resolver](#domain_resolver) in sing-box 1.12.0.
Available values: 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 | / |