
规则决定连接去向
路由规则将请求条件与处理策略联系起来。阅读一条规则时,先确认它匹配什么,再确认它引用的策略或组。配置能成功解析,仅能证明基本结构被接受;要判断规则是否符合目的,还需发起真实请求并查看命中结果。
域名、地址、进程等条件的支持范围取决于核心与平台。不要把同一种条件视为所有系统都可用。具体语法应参考所用核心;mihomo 路由规则文档提供了相应规则类型与参数说明。
规则顺序与兜底条件
对于按顺序匹配的规则,较早出现的适用条件可能决定请求去向。广泛条件放在前面时,后面的精细条件可能没有机会命中。调整前先确认当前核心的匹配逻辑,记录目标请求的实际条件,再移动相关规则。
兜底规则用于处理此前未匹配的请求。若大量请求都落到兜底,先检查前面的条件是否覆盖了实际目标,以及相关规则集合是否加载成功。不要仅添加更多重复规则;重复条件会让维护与判断更困难。
策略组名称与当前选择
规则引用的名称需要与配置中的策略或组一致。组内的当前选择、可用连接以及选择机制,也会影响最终结果。看到规则命中了正确组,不代表该组当前选择的远端服务一定可达。
排查时同时记录命中规则、策略组与实际出站连接。若三者中有一项与预期不同,先定位该层的配置,再调整。切换策略后应发起新请求,已经存在的连接可能继续使用原有路径,不能只观察旧记录。
理解连接模式的适用场景
规则模式通常用于按照配置条件选择路径,其他模式可能用于统一选择或直接连接,具体行为以实际核心说明为准。临时切换模式可以帮助比较现象,但不能把一次切换成功当作规则已经修复。
测试结束后恢复日常模式,并再次验证目标请求。某些应用具有独立代理设置,未进入核心的流量不会被这些规则处理。先确认流量入口,再研究匹配逻辑,能够避免在错误层级反复调整。
设计一组可重复的验证请求
选取需要直连、需要指定策略和需要访问局域网的几个熟悉目标,分别发起新请求。记录域名或地址、入口方式、命中规则、策略组和结果。一次只修改一个条件,比较前后差异,确认改变与结果之间的关系。
网络切换后应重新验证,因为接口与 DNS 环境可能变化。遇到配置解析错误先回到配置检查;连接已进入核心但失败,则继续查看连接状态检查,将规则问题与远端可达性分开处理。