跳转至

策略组、路由、规则集与 DNS 完整字段索引

由配置源码生成

本页由 scripts/config-reference.pycore-config 的公开 Serde 结构生成,覆盖 YAML/JSON 实际接受的字段、重命名、别名、默认规则和 枚举写法。修改配置模型后必须重新生成;CI 会拒绝缺字段或过期页面。

选择策略、逐步路由、兼容规则集、DNS 服务和 Fake IP。

全手册当前覆盖 828 个字段55 个枚举类型。 行为说明和跨字段约束请同时阅读同分类下的人工手册页面。

GroupSpec

GroupSpec 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
choose ChooseStrategy 可选;默认 smart manual
smart
fast
stable
spread
random
weighted
chain
GroupSpecchoose 参数。解析类型为 ChooseStrategy;组合约束由 wuther-core check 校验。 源码
proxies 字符串 列表 可选;默认 空 members 明确列出的节点或下级策略组。与 Mihomo proxies 同语义。 源码
include-all 布尔值 可选;默认 false include_all
includeAll
同时纳入全部静态节点和全部 provider。等价于同时启用 include-all-proxiesinclude-all-providers源码
include-all-proxies 布尔值 可选;默认 false include_all_proxies
includeAllProxies
自动纳入所有静态节点。 源码
include-all-providers 布尔值 可选;默认 false include_all_providers
includeAllProviders
自动纳入所有 provider,运行时随订阅刷新展开。 源码
include-groups 字符串 列表 可选;默认 空 include_groups
includeGroups
按 glob 批量引用其它策略组。仅 manual 分流策略组可用。 源码
exclude-groups 字符串 列表 可选;默认 空 exclude_groups
excludeGroups
从显式和批量组引用中按 glob 排除策略组。 源码
include-nodes 字符串 列表 可选;默认 空 include_nodes
includeNodes
按 glob 纳入静态节点。 源码
exclude-nodes 字符串 列表 可选;默认 空 exclude_nodes
excludeNodes
按 glob 排除静态节点。 源码
include-providers 字符串 列表 可选;默认 空 include_providers
includeProviders
按 glob 纳入 provider。 源码
exclude-providers 字符串 列表 可选;默认 空 exclude_providers
excludeProviders
按 glob 排除 provider。 源码
min-members 非负整数 可选;默认 0 min_members
minMembers
组至少需要的可用候选数。provider 未加载或过滤后不足时使用 empty-fallback源码
max-members 非负整数 可选;默认 0 max_members
maxMembers
过滤后最多保留的候选数。0 表示不限制。 源码
default-selected 字符串 可选;默认 String::new() default_selected
defaultSelected
未指定 API pin 时的默认成员。 源码
empty-fallback 字符串 可选;默认 BLOCK empty_fallback
emptyFallback
组没有足够候选时使用的具体 outbound。可写 DIRECT、BLOCK 或静态节点,不允许引用另一个组。 源码
lazy 布尔值 可选;默认 true 闲置时停止健康检查。false 表示持续保持组探活计划。 源码
weights 名称 → 非负整数 映射 可选;默认 空 weighted 策略的 glob 权重表。未匹配成员权重为 1。 源码
prefer 字符串 列表 可选;默认 空 节点名称软偏好。Fast 在 tolerance 内优先,Stable 提升检查层级, Smart 加入评分。 源码
avoid 字符串 列表 可选;默认 空 自动策略的降级候选;正常候选全部不可用时才兜底。 源码
check 字符串(可选) 可选;默认 不设置 组级 HTTP/HTTPS 健康检查 URL。 源码
expected-status 字符串 可选;默认 String::new() expected_status
expectedStatus
健康检查期望状态码,兼容 Mihomo 的 expected-status 表达式。 源码
interval 时长 可选;默认 1m 自动探活间隔。组在 idle-timeout 内没有被使用时会自动停表。 源码
idle-timeout 时长 可选;默认 10m idle_timeout 未被选路使用多久后停止周期探活。 源码
tolerance 非负整数 可选;默认 50 Fast/Smart 切换迟滞,单位毫秒。 源码
unified-delay 布尔值(可选) 可选;默认 不设置 unified_delay
unifiedDelay
是否使用去除连接建立噪声的统一延迟。 源码
strategy 字符串 可选;默认 consistent-hashing Spread 的分配算法:consistent-hashing / round-robin / sticky-sessions。 源码
filter 字符串 可选;默认 String::new() 组内节点名包含过滤,多条表达式用反引号分隔。 源码
exclude-filter 字符串 可选;默认 String::new() exclude_filter
excludeFilter
组内节点名排除过滤。 源码
exclude-type 字符串 可选;默认 String::new() exclude_type
excludeType
组内协议类型排除过滤,使用 \| 分隔。 源码
max-failed-times 非负整数 可选;默认 5 max_failed_times
maxFailedTimes
连续拨号失败后触发一次按需健康检查的阈值。 源码
test-timeout 时长 可选;默认 5s test_timeout
testTimeout
连续拨号失败统计窗口。 源码
disable-udp 布尔值 可选;默认 false disable_udp
disableUdp
GroupSpecdisable-udp 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
sticky 字符串(可选) 可选;默认 不设置 Smart 粘性作用域覆盖:off、site 或 session;省略时继承全局配置。 源码
path 字符串 列表 可选;默认 空 预留的 chain 多跳节点顺序。当前 choose: chain 在编译期拒绝, 不会把该列表误当成文件路径或静默执行第一跳。 源码
hidden 布尔值 可选;默认 false 是否在支持该字段的 Clash dashboard 中隐藏策略组。 源码
icon 字符串 可选;默认 String::new() 图标 URL、路径、data:image Base64 URI、base64:<payload> 或原始 Base64 图像。Base64 写法在编译阶段统一为 data URI。 源码

Route

Route 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
preset 字符串 可选;默认 cn_smart Routepreset 参数。解析类型为 字符串;组合约束由 wuther-core check 校验。 源码
steps RouteStepEntry 列表 可选;默认空 Line(String)
Object(RouteStepObject)
Routesteps 参数。解析类型为 RouteStepEntry 列表;组合约束由 wuther-core check 校验。 源码
sub-rules 名称 → RouteStepEntry 映射 列表 可选;默认空 sub_rules Line(String)
Object(RouteStepObject)
Mihomo sub-rules compatible named rule branches. A top-level SUB-RULE,(<condition>),<name> jumps into one of these ordered lists. 源码
sets 名称 → RuleSetSpec 映射 可选;默认空 外部规则集:mihomo / sing-box / 自定义 payload。 在 steps 中通过 set:<name> -> <action> 引用。 源码
rule_set SingboxRuleSetSpec 列表 可选;默认空 rule-set sing-box route.rule_set 兼容入口。编译阶段按 tag 展开并合并进 [Self::sets];运行时只保留统一后的 sets源码

RouteStepObject

路由规则对象。所有匹配字段均可选;至少需要一项匹配源(match 或具名字段), outbound 必填。多个匹配源同时存在时按 AND 组合(核心引擎以 RouteMatcher::And 表示,可短路求值)。具名字段值若为列表,按 OR 组合(RouteMatcher::Or)。 deny_unknown_fields 故意启用:拼写错误(如 port-num:)会立刻报错而非被 当成"无匹配源"静默通过;命中即配置错误。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
domain MatcherValue(可选) 可选;默认不设置 Single(String)
List(Vec<String>)
严格相等的域名。 源码
suffix MatcherValue(可选) 可选;默认不设置 domain-suffix
domain_suffix
Single(String)
List(Vec<String>)
域名后缀。canonical: suffix;mihomo 友好别名 domain-suffix / domain_suffix源码
keyword MatcherValue(可选) 可选;默认不设置 domain-keyword
domain_keyword
Single(String)
List(Vec<String>)
子串关键字。canonical: keyword;mihomo 友好别名 domain-keyword源码
regex MatcherValue(可选) 可选;默认不设置 domain-regex
domain_regex
Single(String)
List(Vec<String>)
Mihomo DOMAIN-REGEX,大小写不敏感并支持 look-around / backreference。 源码
ip MatcherValue(可选) 可选;默认不设置 cidr
ip-cidr
ip_cidr
Single(String)
List(Vec<String>)
IP CIDR。canonical: ip;别名 cidr / ip-cidr源码
source-ip MatcherValue(可选) 可选;默认不设置 source_ip
src-ip
src_ip
src-ip-cidr
src_ip_cidr
Single(String)
List(Vec<String>)
源 IP CIDR。canonical: source-ip;兼容 Mihomo src-ip-cidr源码
port MatcherValue(可选) 可选;默认不设置 dst-port
dst_port
Single(String)
List(Vec<String>)
目的端口(单个 53 或区间 1000-2000)。canonical: port;别名 dst-port源码
source-port MatcherValue(可选) 可选;默认不设置 source_port
src-port
src_port
Single(String)
List(Vec<String>)
源端口(单个或闭区间)。canonical: source-port;兼容 Mihomo src-port源码
process MatcherValue(可选) 可选;默认不设置 process-name
process_name
Single(String)
List(Vec<String>)
进程名。canonical: process;别名 process-name源码
process-path MatcherValue(可选) 可选;默认不设置 process_path Single(String)
List(Vec<String>)
完整进程路径,大小写不敏感精确匹配。 源码
set MatcherValue(可选) 可选;默认不设置 rule-set
rule_set
Single(String)
List(Vec<String>)
外部规则集名(route.sets.<name>)。canonical: set;别名 rule-set源码
network 字符串(可选) 可选;默认不设置 网络协议(tcp / udp)。 源码
proto 字符串(可选) 可选;默认不设置 L7 协议指纹(tls / quic / stun / http / webrtc...)。 源码
no-resolve 布尔值 可选;默认 false no_resolve Do not resolve a domain solely to evaluate IP-based matchers. 源码
no-log 布尔值 可选;默认 false no_log Suppress the routine rule-hit log. 源码
no-track 布尔值 可选;默认 false no_track Keep matching flows out of the active connection table. 源码
outbound 字符串 必填 proxy
target
action
出站 / 分组名 / direct / block源码

RuleSetSpec

route.sets.<name> 配置:与 core_ruleset::RulesetSpec 一一对应, 这里只做 YAML 反序列化所需的最小字段;运行时由 core-ruleset 编译。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
url 字符串(可选) 可选;默认不设置 远程来源;与 path 同时出现时,path 是该远程规则集的显式缓存。 源码
path 字符串(可选) 可选;默认不设置 url 为空时是本地来源;url 存在时是远程缓存位置。 源码
payload 字符串 列表 可选;默认空 RuleSetSpecpayload 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
format 字符串(可选) 可选;默认不设置 RuleSetSpecformat 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
every 时长 可选;默认 1d 周期性任务的执行间隔;时长字段接受 humantime 写法。 源码
via 字符串 可选;默认 direct RuleSetSpecvia 参数。解析类型为 字符串;组合约束由 wuther-core check 校验。 源码

SingboxRuleSetSpec

sing-box route.rule_set[] 原始配置。 这里保留上游字段名与互斥关系;runtime_plan 编译阶段会严格校验后转换成 [RuleSetSpec]。因此 sing-box 的 source-kind type 不会与 WutherCore 表示 behavior 的 RuleSetSpec::type 混淆。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
type 字符串(可选) 可选;默认不设置 inline / local / remote;inline 可省略。 源码
tag SingboxRuleSetTags 必填 One(String)
Many(Vec<String>)
用于显示、日志和其它配置项引用的稳定名称。 源码
format 字符串(可选) 可选;默认不设置 SingboxRuleSetSpecformat 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
path 字符串(可选) 可选;默认不设置 文件或 URL 路径;相对路径按运行进程的工作目录解析。 源码
url 字符串(可选) 可选;默认不设置 SingboxRuleSetSpecurl 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
rules serde_yaml::Value 列表(可选) 可选;默认不设置 SingboxRuleSetSpecrules 参数。解析类型为 serde_yaml::Value 列表(可选);组合约束由 wuther-core check 校验。 源码
update_interval Compat时长(可选) 可选;默认不设置 Seconds(u64)
Human(#[serde(with = "humantime_serde")] Duration)
周期性任务的执行间隔;时长字段接受 humantime 写法。 源码
download_detour 字符串(可选) 可选;默认不设置 SingboxRuleSetSpecdownload_detour 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
http_client serde_yaml::Value(可选) 可选;默认不设置 兼容任务所需的 http_client.download_detour。使用 Value 是为了让 归一化层能对 string/object 与不支持的嵌套字段给出精确错误。 源码

MihomoRuleProviderSpec

Mihomo 顶层 rule-providers.<name> 原始配置。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
type 字符串 必填 http / file / inline源码
url 字符串(可选) 可选;默认不设置 MihomoRuleProviderSpecurl 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
path 字符串(可选) 可选;默认不设置 文件或 URL 路径;相对路径按运行进程的工作目录解析。 源码
payload 字符串 列表(可选) 可选;默认不设置 MihomoRuleProviderSpecpayload 参数。解析类型为 字符串 列表(可选);组合约束由 wuther-core check 校验。 源码
behavior 字符串 必填 MihomoRuleProviderSpecbehavior 参数。解析类型为 字符串;组合约束由 wuther-core check 校验。 源码
format 字符串(可选) 可选;默认不设置 MihomoRuleProviderSpecformat 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码
interval Compat时长(可选) 可选;默认不设置 Seconds(u64)
Human(#[serde(with = "humantime_serde")] Duration)
MihomoRuleProviderSpecinterval 参数。解析类型为 Compat时长(可选);组合约束由 wuther-core check 校验。 源码
proxy 字符串(可选) 可选;默认不设置 MihomoRuleProviderSpecproxy 参数。解析类型为 字符串(可选);组合约束由 wuther-core check 校验。 源码

Resolver

Resolver 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
mode ResolverMode 可选;默认 normal system
normal
fake
Resolvermode 参数。解析类型为 ResolverMode;组合约束由 wuther-core check 校验。 源码
fake FakeMode 可选;默认 auto off
auto
force
Resolverfake 参数。解析类型为 FakeMode;组合约束由 wuther-core check 校验。 源码
cache 时长 可选;默认 1d Resolvercache 参数。解析类型为 时长;组合约束由 wuther-core check 校验。 源码
ipv6 布尔值 可选;默认 true Resolveripv6 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
ipv6-timeout 时长 可选;默认 100ms 超时上限;时长字段接受 mssmh 等 humantime 写法。 源码
use-hosts 布尔值 可选;默认 true Resolveruse-hosts 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
use-system-hosts 布尔值 可选;默认 true Resolveruse-system-hosts 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
hosts serde_yaml::Mapping 可选;默认 serde_yaml::Mapping::new() Resolverhosts 参数。解析类型为 serde_yaml::Mapping;组合约束由 wuther-core check 校验。 源码
fake-ip-filter 字符串 列表 可选;默认 空 Resolverfake-ip-filter 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
fake-ip-filter-mode FakeIpFilterMode 可选;默认 FakeIpFilterMode::default() blacklist(默认)
whitelist
Resolverfake-ip-filter-mode 参数。解析类型为 FakeIpFilterMode;组合约束由 wuther-core check 校验。 源码
prefer-h3 布尔值 可选;默认 false Resolverprefer-h3 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
nameserver 字符串 列表 可选;默认 vec!["ali".into()] Resolvernameserver 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
fallback 字符串 列表 可选;默认 vec!["cloudflare".into()] Resolverfallback 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
fallback-filter ResolverFallbackFilter 可选;默认 ResolverFallbackFilter::default() Resolverfallback-filter 参数。解析类型为 ResolverFallbackFilter;组合约束由 wuther-core check 校验。 源码
default-nameserver 字符串 列表 可选;默认 空 Resolverdefault-nameserver 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
nameserver-policy serde_yaml::Mapping 可选;默认 serde_yaml::Mapping::new() Resolvernameserver-policy 参数。解析类型为 serde_yaml::Mapping;组合约束由 wuther-core check 校验。 源码
proxy-server-nameserver 字符串 列表 可选;默认 空 Resolverproxy-server-nameserver 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
proxy-server-nameserver-policy serde_yaml::Mapping 可选;默认 serde_yaml::Mapping::new() Resolverproxy-server-nameserver-policy 参数。解析类型为 serde_yaml::Mapping;组合约束由 wuther-core check 校验。 源码
direct-nameserver 字符串 列表 可选;默认 空 Resolverdirect-nameserver 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
direct-nameserver-follow-policy 布尔值 可选;默认 false Resolverdirect-nameserver-follow-policy 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
servers 名称 → ResolverServer 映射 可选;默认 BTreeMap::from([ ( "ali".into(), ResolverServer::from("https://223.5.5.5/dns-query"), ), ( "cloudflare".into(), ResolverServer::from("https://1.1.1.1/dns-query"), ), ]) Simple(String)
Advanced(ResolverServerAdvanced)
命名 DNS server。字符串是兼容/简洁写法;对象写法可让同一个 endpoint 通过多个代理出口查询。 源码
groups 名称 → ResolverGroup 映射 可选;默认 空 Simple(Vec<String>)
Advanced(ResolverGroupAdvanced)
可嵌套 DNS group。列表是简洁写法;对象写法可覆盖策略、超时和并发上限。 源码
rules serde_yaml::Value 列表 可选;默认 空 Resolverrules 参数。解析类型为 serde_yaml::Value 列表;组合约束由 wuther-core check 校验。 源码
listen 字符串(可选) 可选;默认 不设置 标准 DNS 监听地址,对标 mihomo dns.listen。 例:0.0.0.0:1053127.0.0.1:53[::]:5353。 空 / None / 空串 = 不启动独立 DNS server。 同地址同时承载 UDP 和 TCP(与 mihomo 一致)。 源码

ResolverServerAdvanced

ResolverServerAdvanced 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
endpoint 字符串 必填 address
upstream
唯一 DNS 服务 endpoint。服务级冗余应由 resolver.groups 表达。 源码
exits 字符串 列表 可选;默认空 outbound
outbounds
nodes
访问该 endpoint 的代理节点数组;空数组表示沿用默认直连 DNS socket。 源码
strategy ResolverStrategy 可选;默认 Adaptive roundrobin
random
parallel
adaptive(默认)
sequential
all
ResolverServerAdvancedstrategy 参数。解析类型为 ResolverStrategy;组合约束由 wuther-core check 校验。 源码
timeout 时长 可选;默认 5s 超时上限;时长字段接受 mssmh 等 humantime 写法。 源码
max-parallel 非负整数 可选;默认 2 max_parallel 对应资源或并发量的硬上限,用于限制内存、连接或任务扩张。 源码

ResolverGroupAdvanced

ResolverGroupAdvanced 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
members 字符串 列表 可选;默认空 member
servers
upstreams
成员可以引用命名 server、其它 group,或直接写 endpoint。 源码
strategy ResolverStrategy 可选;默认 Adaptive roundrobin
random
parallel
adaptive(默认)
sequential
all
ResolverGroupAdvancedstrategy 参数。解析类型为 ResolverStrategy;组合约束由 wuther-core check 校验。 源码
timeout 时长 可选;默认 5s 超时上限;时长字段接受 mssmh 等 humantime 写法。 源码
max-parallel 非负整数 可选;默认 2 max_parallel 对应资源或并发量的硬上限,用于限制内存、连接或任务扩张。 源码

ResolverFallbackFilter

ResolverFallbackFilter 配置对象。

查看权威源码

YAML / JSON 字段 类型 必填与默认 兼容别名 取值 / 形态 解析与用途
geoip 布尔值 可选;默认 true ResolverFallbackFiltergeoip 参数。解析类型为 布尔值;组合约束由 wuther-core check 校验。 源码
geoip-code 字符串 可选;默认 CN ResolverFallbackFiltergeoip-code 参数。解析类型为 字符串;组合约束由 wuther-core check 校验。 源码
ipcidr 字符串 列表 可选;默认 空 ResolverFallbackFilteripcidr 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
domain 字符串 列表 可选;默认 空 ResolverFallbackFilterdomain 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码
geosite 字符串 列表 可选;默认 空 ResolverFallbackFiltergeosite 参数。解析类型为 字符串 列表;组合约束由 wuther-core check 校验。 源码

本分类枚举

ChooseStrategy

ChooseStrategy 的可接受配置形态。 源码

写法 兼容别名 含义
manual 映射到 Rust 变体 ChooseStrategy::Manual
smart 映射到 Rust 变体 ChooseStrategy::Smart
fast 映射到 Rust 变体 ChooseStrategy::Fast
stable 映射到 Rust 变体 ChooseStrategy::Stable
spread 映射到 Rust 变体 ChooseStrategy::Spread
random 映射到 Rust 变体 ChooseStrategy::Random
weighted 映射到 Rust 变体 ChooseStrategy::Weighted
chain 映射到 Rust 变体 ChooseStrategy::Chain

RouteStepEntry

单条路由规则条目:接受四种写法(混用合法): 1. WutherCore DSL 字符串"port:53 -> direct""set:openai -> ai"。 2. mihomo classical 字符串"DST-PORT,53,DNS_Hijack"(policy 内嵌)。 3. mihomo classical mapping{match: "DST-PORT,53", outbound: DNS_Hijack}。 4. typed-key mapping(推荐写法): yaml - {port: 53, outbound: DNS_Hijack} # 单值 - {port: [53, 5353], outbound: DNS_Hijack} # OR within field - {suffix: example.com, port: 443, outbound: direct} # AND across fields - {match: "DST-PORT,53", network: udp, outbound: hijack} # match + typed AND 具名字段同时设置时按 AND 组合;列表值在单字段内按 OR 组合。 四种形式都在 compile_route 阶段编译为 RouteStep;object 形式不会经过 DSL 字符串再解析,省掉一次 round-trip。 源码

写法 兼容别名 含义
Line(String) 映射到 Rust 变体 RouteStepEntry::Line
Object(RouteStepObject) 映射到 Rust 变体 RouteStepEntry::Object

MatcherValue

单个或多个值的统一表示:让 port: 53port: "53"port: [53, "5353"] 都能解析。列表值在编译阶段会被包裹成 RouteMatcher::Or,匹配时短路求值。 自实现 Deserialize 而非 derive(untagged),是为了把整型 / 布尔自动转成字符串:YAML 写 port: 53 时值是 i64,不会自动落到 Single(String) 上, 用户体验上为难。统一收敛成字符串,编译期再把 port 解析回 u16。 源码

写法 兼容别名 含义
Single(String) 映射到 Rust 变体 MatcherValue::Single
List(Vec<String>) 映射到 Rust 变体 MatcherValue::List

SingboxRuleSetTags

sing-box 1.14+ 允许一个 local/remote 配置用 tag 列表批量定义规则集。 源码

写法 兼容别名 含义
One(String) 映射到 Rust 变体 SingboxRuleSetTags::One
Many(Vec<String>) 映射到 Rust 变体 SingboxRuleSetTags::Many

CompatDuration

上游刷新周期兼容表示:Mihomo 使用整数秒,sing-box 使用 duration 字符串。 源码

写法 兼容别名 含义
Seconds(u64) 映射到 Rust 变体 CompatDuration::Seconds
Human(#[serde(with = "humantime_serde")] Duration) 映射到 Rust 变体 CompatDuration::Human

ResolverStrategy

DNS 成员选择策略。 random 是均匀随机;adaptive 使用查询过程中学习到的平均 RTT 做加权随机, 与 AdGuard dnsproxy 的 load-balance 算法一致:平均 RTT 越小,权重越大。 源码

写法 兼容别名 含义
roundrobin 映射到 Rust 变体 ResolverStrategy::RoundRobin
random 映射到 Rust 变体 ResolverStrategy::Random
parallel 映射到 Rust 变体 ResolverStrategy::Parallel
adaptive(默认) 映射到 Rust 变体 ResolverStrategy::Adaptive
sequential fallback 兼容旧的顺序故障转移语义。
all 并发收集所有成功答案。

ResolverServer

命名 server 的兼容字符串写法或高级多出口写法。 源码

写法 兼容别名 含义
Simple(String) 映射到 Rust 变体 ResolverServer::Simple
Advanced(ResolverServerAdvanced) 映射到 Rust 变体 ResolverServer::Advanced

ResolverGroup

DNS group 的简洁列表写法或高级对象写法。 源码

写法 兼容别名 含义
Simple(Vec<String>) 映射到 Rust 变体 ResolverGroup::Simple
Advanced(ResolverGroupAdvanced) 映射到 Rust 变体 ResolverGroup::Advanced

ResolverMode

ResolverMode 的可接受配置形态。 源码

写法 兼容别名 含义
system 映射到 Rust 变体 ResolverMode::System
normal secure
smart
映射到 Rust 变体 ResolverMode::Normal
fake 映射到 Rust 变体 ResolverMode::Fake

FakeMode

FakeMode 的可接受配置形态。 源码

写法 兼容别名 含义
off 映射到 Rust 变体 FakeMode::Off
auto 映射到 Rust 变体 FakeMode::Auto
force 映射到 Rust 变体 FakeMode::Force

FakeIpFilterMode

FakeIpFilterMode 的可接受配置形态。 源码

写法 兼容别名 含义
blacklist(默认) 映射到 Rust 变体 FakeIpFilterMode::Blacklist
whitelist 映射到 Rust 变体 FakeIpFilterMode::Whitelist