3.2 KiB
status |
---|
new |
Final actions
route
{
"action": "route", // default
"outbound": "",
"network_strategy": "",
"fallback_delay": "",
"udp_disable_domain_unmapping": false,
"udp_connect": false
}
route
inherits the classic rule behavior of routing connection to the specified outbound.
outbound
==Required==
Tag of target outbound.
network_strategy
!!! quote ""
Only supported in graphical clients on Android and iOS with `auto_detect_interface` enabled.
Strategy for selecting network interfaces.
Only take effect if outbound is direct without outbound.bind_interface
,
outbound.inet4_bind_address
and outbound.inet6_bind_address
set.
See Dial Fields for available values.
fallback_delay
!!! quote ""
Only supported in graphical clients on Android and iOS with `auto_detect_interface` enabled and `network_strategy` set.
See Dial Fields for details.
udp_disable_domain_unmapping
If enabled, for UDP proxy requests addressed to a domain, the original packet address will be sent in the response instead of the mapped domain.
This option is used for compatibility with clients that do not support receiving UDP packets with domain addresses, such as Surge.
udp_connect
If enabled, attempts to connect UDP connection to the destination instead of listen.
route-options
{
"action": "route-options",
"network_strategy": "",
"fallback_delay": "",
"udp_disable_domain_unmapping": false,
"udp_connect": false
}
route-options
set options for routing.
reject
{
"action": "reject",
"method": "default", // default
"no_drop": false
}
reject
reject connections
The specified method is used for reject tun connections if sniff
action has not been performed yet.
For non-tun connections and already established connections, will just be closed.
method
default
: Reply with TCP RST for TCP connections, and ICMP port unreachable for UDP packets.drop
: Drop packets.
no_drop
If not enabled, method
will be temporarily overwritten to drop
after 50 triggers in 30s.
Not available when method
is set to drop.
hijack-dns
{
"action": "hijack-dns"
}
hijack-dns
hijack DNS requests to the sing-box DNS module.
Non-final actions
sniff
{
"action": "sniff",
"sniffer": [],
"timeout": ""
}
sniff
performs protocol sniffing on connections.
For deprecated inbound.sniff
options, it is considered to sniff()
performed before routing.
sniffer
Enabled sniffers.
All sniffers enabled by default.
Available protocol values an be found on in Protocol Sniff
timeout
Timeout for sniffing.
300ms
is used by default.
resolve
{
"action": "resolve",
"strategy": "",
"server": ""
}
resolve
resolve request destination from domain to IP addresses.
strategy
DNS resolution strategy, available values are: prefer_ipv4
, prefer_ipv6
, ipv4_only
, ipv6_only
.
dns.strategy
will be used by default.
server
Specifies DNS server tag to use instead of selecting through DNS routing.