Skip to content

Route

Changes in sing-box 1.14.0

find_neighbor
dhcp_lease_files

Changes in sing-box 1.12.0

default_domain_resolver
geoip
geosite

Changes in sing-box 1.8.0

rule_set
geoip
geosite

Structure

{
  "route": {
    "rules": [],
    "rule_set": [],
    "final": "",
    "auto_detect_interface": false,
    "override_android_vpn": false,
    "default_interface": "",
    "default_mark": 0,
    "find_process": false,
    "find_neighbor": false,
    "dhcp_lease_files": [],
    "default_domain_resolver": "", // or {}
    "default_network_strategy": "",
    "default_network_type": [],
    "default_fallback_network_type": [],
    "default_fallback_delay": "",

    // Removed

    "geoip": {},
    "geosite": {}
  }
}

You can ignore the JSON Array [] tag when the content is only one item

Fields

rules

List of Route Rule

rule_set

Since sing-box 1.8.0

List of rule-set

final

Default outbound tag. the first outbound will be used if empty.

auto_detect_interface

Only supported on Linux, Windows and macOS.

Bind outbound connections to the default NIC by default to prevent routing loops under tun.

Takes no effect if outbound.bind_interface is set.

override_android_vpn

Only supported on Android.

Accept Android VPN as upstream NIC when auto_detect_interface enabled.

default_interface

Only supported on Linux, Windows and macOS.

Bind outbound connections to the specified NIC by default to prevent routing loops under tun.

Takes no effect if auto_detect_interface is set.

default_mark

Only supported on Linux.

Set routing mark by default.

Takes no effect if outbound.routing_mark is set.

find_process

Only supported on Linux, Windows, and macOS.

Enable process search for logging when no process_name, process_path, package_name, user or user_id rules exist.

find_neighbor

Since sing-box 1.14.0

Only supported on Linux and macOS.

Enable neighbor resolution for logging when no source_mac_address or source_hostname rules exist.

See Neighbor Resolution for setup.

dhcp_lease_files

Since sing-box 1.14.0

Only supported on Linux and macOS.

Custom DHCP lease file paths for hostname and MAC address resolution.

Automatically detected from common DHCP servers (dnsmasq, odhcpd, ISC dhcpd, Kea) if empty.

default_domain_resolver

Since sing-box 1.12.0

See Dial Fields for details.

Can be overrides by outbound.domain_resolver.

default_network_strategy

Since sing-box 1.11.0

See Dial Fields for details.

Takes no effect if outbound.bind_interface, outbound.inet4_bind_address or outbound.inet6_bind_address is set.

Can be overrides by outbound.network_strategy.

Conflicts with default_interface.

default_network_type

Since sing-box 1.11.0

See Dial Fields for details.

default_fallback_network_type

Since sing-box 1.11.0

See Dial Fields for details.

default_fallback_delay

Since sing-box 1.11.0

See Dial Fields for details.