Skip to content

Clash Core configuration reference ​

Use this reference whenever you need to inspect mihomo YAML. A first configuration does not need to begin with 185 fields: start with the best-practice template, then return to the exact field when a specific need appears.

Keep the configuration understandable

A trusted configuration that contains only what you need is easier to verify and less likely to produce surprising behavior after an update.

EasyTier on macOS ​

EasyTier adds a virtual-network outbound to the macOS SDK. The protocol directory now lists 24 proxy and network outbound types. iOS, iPadOS, and tvOS retain 23 implementations; EasyTier nodes on those platforms are REJECT placeholders that refuse connections. See the protocol list and Apple platform differences.

Browse by topic ​

The sections below follow the upstream mihomo configuration reference. Each page describes usage and platform limitations in Clash Core.

Additional notes: Apple platforms · Security

Field support status ​

  • Supported: available subject to the conditions in the field description.
  • Managed / limited: affected by client settings, platform capabilities, or compatibility handling.
  • Advanced: for advanced uses such as local services or custom trust certificates.
  • Unsupported: removed or ineffective inside Apple Packet Tunnel.
  • Not applicable: belongs to Android, Linux, or another environment.

Some TUN settings vary by version. TUN guide and version notes.

185 fields shown

FieldTypeiOSmacOStvOSPlatform notes
dns.cache-algorithmStringSupportedSupportedSupportedSets the DNS cache algorithm or size; use a valid algorithm name and value.
dns.cache-max-sizeIntegerSupportedSupportedSupportedSets the DNS cache algorithm or size; use a valid algorithm name and value.
dns.default-nameserverListManaged / limitedManaged / limitedManaged / limitedSets DNS servers. system/dhcp sources use pre-connection system DNS addresses; unavailable entries are filtered or repaired.
dns.direct-nameserverListManaged / limitedManaged / limitedManaged / limitedSets direct or fallback resolvers; system/dhcp entries are replaced or filtered. Fallback is used according to its conditions.
dns.direct-nameserver-follow-policyBooleanSupportedSupportedSupportedControls whether direct DNS follows resolver policies.
dns.enableBooleanManaged / limitedManaged / limitedManaged / limitedDNS stays enabled while Clash is connected; false does not disable it.
dns.enhanced-modeStringSupportedSupportedSupportedSelects the DNS enhancement mode; Fake IP settings apply when that mode is used.
dns.fake-ip-filterListSupportedSupportedSupportedControls which destinations use or bypass Fake IP; requires Fake IP mode.
dns.fake-ip-filter-modeStringSupportedSupportedSupportedControls which destinations use or bypass Fake IP; requires Fake IP mode.
dns.fake-ip-rangeStringSupportedSupportedSupportedSets a valid IPv4 Fake IP range; it may also supply the default tunnel IPv4 address.
dns.fake-ip-range6StringManaged / limitedManaged / limitedManaged / limitedSets the IPv6 Fake IP range; effective IPv6 settings must also enable it.
dns.fake-ip-ttlIntegerSupportedSupportedSupportedSets the response TTL for Fake IP mode.
dns.fallbackListManaged / limitedManaged / limitedManaged / limitedSets direct or fallback resolvers; system/dhcp entries are replaced or filtered. Fallback is used according to its conditions.
dns.fallback-filter.domainListSupportedSupportedSupportedSets fallback conditions; GeoIP/GeoSite conditions require their data resources.
dns.fallback-filter.geoipBooleanSupportedSupportedSupportedSets fallback conditions; GeoIP/GeoSite conditions require their data resources.
dns.fallback-filter.geoip-codeStringSupportedSupportedSupportedSets fallback conditions; GeoIP/GeoSite conditions require their data resources.
dns.fallback-filter.geositeListSupportedSupportedSupportedSets fallback conditions; GeoIP/GeoSite conditions require their data resources.
dns.fallback-filter.ipcidrListSupportedSupportedSupportedSets fallback conditions; GeoIP/GeoSite conditions require their data resources.
dns.fallback-lazy-queryBooleanSupportedSupportedSupportedControls fallback DNS query scheduling; separate from lazy node health checks.
dns.ipv6BooleanManaged / limitedManaged / limitedManaged / limitedAffected by the app’s IP Stack settings; DNS IPv6 also requires global IPv6. Tunnel IPv6 capture is a separate setting.
dns.ipv6-timeoutIntegerSupportedSupportedSupportedControls IPv6 waiting in relevant DNS queries, not the overall VPN connection timeout.
dns.listenStringAdvancedAdvancedAdvancedCreates a TCP/UDP DNS listener. Proxy authentication, allow-lan, and controller secret do not provide shared access protection for it.
dns.listen-routing-markIntegerUnsupportedUnsupportedUnsupportedNo effect; this routing mark is not used on Apple platforms.
dns.nameserverListManaged / limitedManaged / limitedManaged / limitedSets DNS servers. system/dhcp sources use pre-connection system DNS addresses; unavailable entries are filtered or repaired.
dns.nameserver-policyMappingManaged / limitedManaged / limitedManaged / limitedSelects resolvers by domain. Addresses are also filtered; if none remain, that policy may return name-not-found.
dns.prefer-h3BooleanSupportedSupportedSupportedPrefers HTTP/3 for DNS connections that support it.
dns.proxy-server-nameserverListManaged / limitedManaged / limitedManaged / limitedSets DNS servers. system/dhcp sources use pre-connection system DNS addresses; unavailable entries are filtered or repaired.
dns.proxy-server-nameserver-policyMappingManaged / limitedManaged / limitedManaged / limitedSelects resolvers by domain. Addresses are also filtered; if none remain, that policy may return name-not-found.
dns.respect-rulesBooleanSupportedSupportedSupportedRoutes relevant DNS requests by rules; proxy-server-nameserver does not recursively apply this setting.
dns.use-hostsBooleanSupportedSupportedSupportedUses mappings from top-level hosts for DNS queries.
dns.use-system-hostsBooleanSupportedSupportedSupportedUses system hosts readable by Clash; does not enable editing system hosts on iOS/tvOS.
experimental.dialer-ip4p-convertBooleanAdvancedAdvancedAdvancedEnables IP4P address conversion when needed.
experimental.fingerprintsListUnsupportedUnsupportedUnsupportedThe legacy field is accepted but has no fingerprint effect.
experimental.quic-go-disable-ecnBooleanAdvancedAdvancedAdvancedDisables the relevant quic-go feature. Setting false does not clear a flag already set in the current process; neither hot reload nor reconnect guarantees immediate restoration. Separate from TUN GSO.
experimental.quic-go-disable-gsoBooleanAdvancedAdvancedAdvancedDisables the relevant quic-go feature. Setting false does not clear a flag already set in the current process; neither hot reload nor reconnect guarantees immediate restoration. Separate from TUN GSO.
clash-for-android.append-system-dnsBooleanNot applicableNot applicableNot applicableAndroid-specific; not used on Apple platforms.
clash-for-android.ui-subtitle-patternStringNot applicableNot applicableNot applicableAndroid-specific; not used on Apple platforms.
disable-keep-aliveBooleanSupportedSupportedSupportedControls connection keep-alive behavior; verify changes with new connections.
etag-supportBooleanSupportedSupportedSupportedControls ETag use for relevant HTTP resource requests.
external-controllerStringAdvancedAdvancedAdvancedCreates an HTTP/HTTPS controller. Prefer loopback binding and a secret; some desktop control APIs are unavailable.
external-controller-cors.allow-originsListAdvancedAdvancedAdvancedControls browser cross-origin access; does not replace authentication.
external-controller-cors.allow-private-networkBooleanAdvancedAdvancedAdvancedControls browser cross-origin access; does not replace authentication.
external-controller-pipeStringNot applicableNot applicableNot applicableWindows named-pipe setting; not used on Apple platforms.
external-controller-routing-markIntegerNot applicableNot applicableNot applicableLinux routing mark; not used on Apple platforms.
external-controller-tlsStringAdvancedAdvancedAdvancedCreates an HTTP/HTTPS controller. Prefer loopback binding and a secret; some desktop control APIs are unavailable.
external-controller-unixStringUnsupportedUnsupportedUnsupportedThe user-supplied Unix controller path is not used on any of the three platforms.
external-doh-serverStringAdvancedAdvancedAdvancedSets a DoH path on the controller; controller secret does not protect this path.
external-uiStringAdvancedAdvancedAdvancedSets the dashboard directory, name, or download URL. The name must be a local relative path; static pages are outside secret authentication, while APIs authenticate separately.
external-ui-nameStringAdvancedAdvancedAdvancedSets the dashboard directory, name, or download URL. The name must be a local relative path; static pages are outside secret authentication, while APIs authenticate separately.
external-ui-urlStringAdvancedAdvancedAdvancedSets the dashboard directory, name, or download URL. The name must be a local relative path; static pages are outside secret authentication, while APIs authenticate separately.
find-process-modeStringUnsupportedSupportedUnsupportedmacOS can query process name, path, and UID per connection; always off on iOS/tvOS. Some connections may lack process information.
geo-auto-updateBooleanManaged / limitedManaged / limitedManaged / limitedAlways off at runtime; Clash manages resource preparation.
geo-update-intervalIntegerUnsupportedUnsupportedUnsupportedAutomatic updates are off; this interval does not enable scheduled updates.
geodata-loaderStringManaged / limitedSupportedManaged / limitediOS/tvOS use memconservative; macOS keeps the selection. Precompiled resources bypass source-data loading.
geodata-modeBooleanManaged / limitedManaged / limitedManaged / limitedSelects the GeoIP data mode and requires matching resources; does not bypass platform precompilation requirements.
geosite-matcherStringManaged / limitedManaged / limitedManaged / limitedPrecompiled GeoSite uses a fixed matcher. iOS/tvOS use precompiled resources; macOS may apply this choice when falling back to source data.
geox-url.asnStringManaged / limitedManaged / limitedManaged / limitedDoes not trigger automatic downloads in the tunnel; prepare data through Clash resource management.
geox-url.geoipStringManaged / limitedManaged / limitedManaged / limitedDoes not trigger automatic downloads in the tunnel; prepare data through Clash resource management.
geox-url.geositeStringManaged / limitedManaged / limitedManaged / limitedDoes not trigger automatic downloads in the tunnel; prepare data through Clash resource management.
geox-url.mmdbStringManaged / limitedManaged / limitedManaged / limitedDoes not trigger automatic downloads in the tunnel; prepare data through Clash resource management.
global-client-fingerprintStringUnsupportedUnsupportedUnsupportedNo longer sets a global fingerprint; use client-fingerprint on a supported outbound protocol.
global-uaStringSupportedSupportedSupportedSets the default User-Agent for relevant HTTP requests.
hostsMappingSupportedSupportedSupportedSets static domain-to-address mappings.
ipv6BooleanManaged / limitedManaged / limitedManaged / limitedAffected by the app’s IP Stack settings; DNS IPv6 also requires global IPv6. Tunnel IPv6 capture is a separate setting.
keep-alive-idleIntegerSupportedSupportedSupportedControls connection keep-alive behavior; verify changes with new connections.
keep-alive-intervalIntegerSupportedSupportedSupportedControls connection keep-alive behavior; verify changes with new connections.
log-levelStringSupportedSupportedSupportedSets logging level. debug also enables controller debugging endpoints; restore a normal level after troubleshooting.
modeStringSupportedSupportedSupportedSelects rule, global, or direct outbound mode.
secretStringAdvancedAdvancedAdvancedProtects authenticated controller APIs; an empty value requires no password. Does not protect static UI, External DoH, or independent services.
tcp-concurrentBooleanSupportedSupportedSupportedControls concurrent TCP dialing; verify changes with new connections.
unified-delayBooleanManaged / limitedManaged / limitedManaged / limitedDefaults to true when omitted; an explicit false is preserved.
allow-lanBooleanManaged / limitedManaged / limitedManaged / limitedYAML true is kept only when the app permits LAN sharing; this does not control DNS or controller access globally.
authenticationListAdvancedAdvancedAdvancedSets credentials for applicable local proxy listeners, not DNS or controller credentials.
bind-addressStringAdvancedAdvancedAdvancedSets binding or source restrictions for applicable local proxy listeners, not all other services.
inbound-mptcpBooleanAdvancedAdvancedAdvancedRequests the feature for inbound connections; actual use depends on the system and connection negotiation.
inbound-tfoBooleanAdvancedAdvancedAdvancedRequests the feature for inbound connections; actual use depends on the system and connection negotiation.
interface-nameStringUnsupportedUnsupportedUnsupportedThe requested interface is not used; Clash manages the physical outbound interface.
iptables.bypassListNot applicableNot applicableNot applicableLinux iptables setting; no effect on Apple platforms.
iptables.dns-redirectBooleanNot applicableNot applicableNot applicableLinux iptables setting; no effect on Apple platforms.
iptables.enableBooleanNot applicableNot applicableNot applicableLinux iptables setting; no effect on Apple platforms.
iptables.inbound-interfaceStringNot applicableNot applicableNot applicableLinux iptables setting; no effect on Apple platforms.
lan-allowed-ipsListAdvancedAdvancedAdvancedSets binding or source restrictions for applicable local proxy listeners, not all other services.
lan-disallowed-ipsListAdvancedAdvancedAdvancedSets binding or source restrictions for applicable local proxy listeners, not all other services.
listenersListAdvancedAdvancedAdvancedConfigures custom listeners or forwarding; use protocol-specific binding and authentication. Availability also depends on system constraints.
mixed-portIntegerAdvancedAdvancedAdvancedSets a local proxy port; access depends on binding, sharing permission, and listener authentication.
portIntegerAdvancedAdvancedAdvancedSets a local proxy port; access depends on binding, sharing permission, and listener authentication.
redir-portIntegerUnsupportedUnsupportedUnsupportedNo effect; this top-level listening port is not created.
routing-markIntegerUnsupportedUnsupportedUnsupportedNo effect; this routing mark is not used on Apple platforms.
skip-auth-prefixesListAdvancedAdvancedAdvancedSkips authentication for the specified source ranges on applicable proxy listeners.
socks-portIntegerAdvancedAdvancedAdvancedSets a local proxy port; access depends on binding, sharing permission, and listener authentication.
ss-configStringAdvancedAdvancedAdvancedConfigures custom listeners or forwarding; use protocol-specific binding and authentication. Availability also depends on system constraints.
tproxy-portIntegerUnsupportedUnsupportedUnsupportedNo effect; this top-level listening port is not created.
tuic-server.alpnListAdvancedAdvancedAdvancedSets TUIC server TLS; certificates/keys may be valid content or readable files. These are not outbound-node settings.
tuic-server.authentication-timeoutIntegerAdvancedAdvancedAdvancedSets the relevant TUIC server timeout in milliseconds; zero uses default handling.
tuic-server.certificateStringAdvancedAdvancedAdvancedSets TUIC server TLS; certificates/keys may be valid content or readable files. These are not outbound-node settings.
tuic-server.congestion-controllerStringAdvancedAdvancedAdvancedSets TUIC server parameters; effective values depend on defaults, bounds, and negotiation.
tuic-server.cwndIntegerAdvancedAdvancedAdvancedSets TUIC server parameters; effective values depend on defaults, bounds, and negotiation.
tuic-server.enableBooleanAdvancedAdvancedAdvancedEnables the TUIC server or sets its UDP address, subject to system port and permission constraints.
tuic-server.listenStringAdvancedAdvancedAdvancedEnables the TUIC server or sets its UDP address, subject to system port and permission constraints.
tuic-server.max-idle-timeIntegerAdvancedAdvancedAdvancedSets the relevant TUIC server timeout in milliseconds; zero uses default handling.
tuic-server.max-udp-relay-packet-sizeIntegerAdvancedAdvancedAdvancedSets TUIC server parameters; effective values depend on defaults, bounds, and negotiation.
tuic-server.private-keyStringAdvancedAdvancedAdvancedSets TUIC server TLS; certificates/keys may be valid content or readable files. These are not outbound-node settings.
tuic-server.tokenListAdvancedAdvancedAdvancedSets TUIC server credentials separately from top-level authentication.
tuic-server.usersMappingAdvancedAdvancedAdvancedSets TUIC server credentials separately from top-level authentication.
vmess-configStringAdvancedAdvancedAdvancedConfigures custom listeners or forwarding; use protocol-specific binding and authentication. Availability also depends on system constraints.
ntp.dialer-proxyStringManaged / limitedManaged / limitedManaged / limitedConfigures time synchronization for protocol time offsets; does not change the device clock.
ntp.enableBooleanManaged / limitedManaged / limitedManaged / limitedConfigures time synchronization for protocol time offsets; does not change the device clock.
ntp.intervalIntegerManaged / limitedManaged / limitedManaged / limitedTime synchronization interval in minutes.
ntp.portIntegerManaged / limitedManaged / limitedManaged / limitedConfigures time synchronization for protocol time offsets; does not change the device clock.
ntp.serverStringManaged / limitedManaged / limitedManaged / limitedConfigures time synchronization for protocol time offsets; does not change the device clock.
ntp.write-to-systemBooleanUnsupportedUnsupportedUnsupportedAlways false; does not change the device clock.
profile.store-fake-ipBooleanSupportedSupportedManaged / limitedControls Fake IP cache persistence; defaults to true, false disables it. Requires persistent storage; tvOS cache loss may discard previous mappings.
profile.store-selectedBooleanSupportedSupportedManaged / limitedControls core policy-selection persistence; defaults to true, false disables it. Does not save Profiles; tvOS cache loss may discard previous selections.
proxiesListSupportedSupportedSupportedDefines outbounds; consult each protocol for its parameters. Interface names and routing marks are subject to Apple-platform handling.
proxy-groupsListSupportedSupportedSupportedSupports select, url-test, fallback, and load-balance. Fallback chooses healthy entries in order; checks depend on lazy settings and system runtime conditions.
proxy-providersMappingManaged / limitedManaged / limitedManaged / limitedInline content loads directly; remote resources may be prepared by the app or loaded by the core after startup. Precompiled rule updates may take effect at the next activation.
rule-providersMappingManaged / limitedManaged / limitedManaged / limitedInline content loads directly; remote resources may be prepared by the app or loaded by the core after startup. Precompiled rule updates may take effect at the next activation.
rulesListManaged / limitedManaged / limitedManaged / limitedRoutes traffic by rules. macOS supports process/UID matching; iOS/tvOS cannot reliably identify apps, process patterns may match empty identities, and UID rules have separate removal handling.
tls.certificateStringAdvancedAdvancedAdvancedConfigures external TLS controller certificates, client authentication, or ECH; used when that service is enabled.
tls.client-auth-certStringAdvancedAdvancedAdvancedConfigures external TLS controller certificates, client authentication, or ECH; used when that service is enabled.
tls.client-auth-typeStringAdvancedAdvancedAdvancedConfigures external TLS controller certificates, client authentication, or ECH; used when that service is enabled.
tls.custom-certifactesListAdvancedAdvancedAdvancedAdds certificate content to outbound trust, not a file path. Add only trusted certificates and keep this field’s spelling.
tls.ech-keyStringAdvancedAdvancedAdvancedConfigures external TLS controller certificates, client authentication, or ECH; used when that service is enabled.
tls.private-keyStringAdvancedAdvancedAdvancedConfigures external TLS controller certificates, client authentication, or ECH; used when that service is enabled.
sniffer.enableBooleanSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.force-dns-mappingBooleanSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.force-domainListSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.override-destinationBooleanSupportedSupportedSupportedSets default destination overriding; an explicit per-protocol value in sniff takes precedence.
sniffer.parse-pure-ipBooleanSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.port-whitelistListManaged / limitedManaged / limitedManaged / limitedLegacy syntax, used only when sniff is empty; prefer sniff in new configurations.
sniffer.skip-domainListSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.skip-dst-addressListSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.skip-src-addressListSupportedSupportedSupportedControls sniffing and inclusion/exclusion conditions; use depends on protocol, port, and domain conditions. Does not decrypt all encrypted traffic.
sniffer.sniffMappingSupportedSupportedSupportedConfigures ports and destination overriding per protocol; takes precedence over legacy sniffing/port-whitelist.
sniffer.sniffingListManaged / limitedManaged / limitedManaged / limitedLegacy syntax, used only when sniff is empty; prefer sniff in new configurations.
sub-rulesMappingManaged / limitedManaged / limitedManaged / limitedRoutes traffic by rules. macOS supports process/UID matching; iOS/tvOS cannot reliably identify apps, process patterns may match empty identities, and UID rules have separate removal handling.
tun.auto-detect-interfaceBooleanManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.auto-redirectBooleanNot applicableNot applicableNot applicableSee TUN field guide
tun.auto-redirect-input-markIntegerNot applicableNot applicableNot applicableSee TUN field guide
tun.auto-redirect-iproute2-fallback-rule-indexIntegerNot applicableNot applicableNot applicableSee TUN field guide
tun.auto-redirect-output-markIntegerNot applicableNot applicableNot applicableSee TUN field guide
tun.auto-routeBooleanManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.deviceStringManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.disable-icmp-forwardingBooleanManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.dns-hijackListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.enableBooleanManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.endpoint-independent-natBooleanUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-dst-portListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-dst-port-rangeListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-interfaceListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-mac-addressListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-packageListNot applicableNot applicableNot applicableSee TUN field guide
tun.exclude-src-portListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-src-port-rangeListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-uidListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.exclude-uid-rangeListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.file-descriptorIntegerManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.gsoBooleanUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.gso-max-sizeIntegerUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.icmp-timeoutIntegerManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.include-android-userListNot applicableNot applicableNot applicableSee TUN field guide
tun.include-interfaceListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.include-mac-addressListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.include-packageListNot applicableNot applicableNot applicableSee TUN field guide
tun.include-uidListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.include-uid-rangeListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.inet4-route-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.inet4-route-exclude-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.inet6-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.inet6-route-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.inet6-route-exclude-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.iproute2-rule-indexIntegerNot applicableNot applicableNot applicableSee TUN field guide
tun.iproute2-table-indexIntegerNot applicableNot applicableNot applicableSee TUN field guide
tun.loopback-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.mtuIntegerManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.recvmsgxBooleanUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.route-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.route-address-setListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.route-exclude-addressListManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.route-exclude-address-setListUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.sendmsgxBooleanUnsupportedUnsupportedUnsupportedSee TUN field guide
tun.stackStringManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.strict-routeBooleanManaged / limitedManaged / limitedManaged / limitedSee TUN field guide
tun.udp-timeoutIntegerSupportedSupportedSupportedSee TUN field guide
tunnelsListAdvancedAdvancedAdvancedConfigures custom listeners or forwarding; use protocol-specific binding and authentication. Availability also depends on system constraints.

Version notes ​

This index contains 185 entries. For nested protocol parameters under entries such as proxies and listeners, consult the relevant guide. Some behavior changes between versions; use the features available in your installed version.

Documentation reference version

The 185-entry field matrix was reviewed on 2026-09-14 against Clash Core 5bca0bcb73cd6dcb2d276be31f3a149211388c6d.

The outbound type list and EasyTier guide were checked on 2026-09-24 against snapshot 7ea70d1, revision 7ea70d15bf8b67257928efe45c12f16d4ffc9f61. This protocol update does not re-audit every field in the matrix. Store app versions may include a different SDK; use the features available in your installed version.