要观察某一次访问真正产生了多少流量,必须先把后台来源从测试窗口里拿掉。官方全局配置没有提供“忽略某某应用”的独立开关,但给出了入站范围、进程匹配模式、保活、GEO 更新、运行模式和日志级别。排除干扰的方法是收紧这些条件,使测试期间内核尽量只处理你主动发起的连接,并用日志核对,而不是在总量里做主观扣减。
先关掉非本机入站和计划中的资料更新
适用条件是你可以改全局配置,并在加载后观察一段时间。测试前将 allow-lan 设为 false,避免其他设备走代理端口;若必须保持局域网能力,则用 bind-address 绑到单一地址,并用 lan-allowed-ips / lan-disallowed-ips 把无关网段列入禁止(黑名单优先)。为端口加上 authentication,仅把本机需要的前缀写入 skip-auth-prefixes(文档示例为回环),降低其他进程使用 mixed/socks/http 端口的可能。将 geo-auto-update 设为 false,避免 geo-update-interval 触发 geox-url 下载;这些外部资源使用 global-ua,会在后台制造流量。判断依据:收紧后若计数明显变平,说明原先干扰来自旁路设备或 GEO 更新,而不是测试目标。
理解进程匹配能做什么、不能做什么
find-process-mode 为 always 时强制匹配所有进程,strict 由内核判断是否开启,off 不匹配进程,文档推荐路由器使用 off。判断依据:模式为 off 时,你无法在内核侧把流量归到前台或后台应用,此时“排除某后台应用”在本页没有对应手段,只能从系统侧停止该应用,或不要在路由器口径上做应用级测试。always 只表示内核会去做进程匹配,本页并未列出按进程放行或拦截的写法,因此不能把该项理解成已经隔离了后台。适用条件是运行环境允许进程匹配(桌面端相对路由器更有意义)。操作上先确认当前模式,再决定这次测试是否具备按应用解释的前提。
压缩保活、固定模式并用日志确认测试窗口
keep-alive-interval 与 keep-alive-idle 会在空闲连接上产生探测;若平台允许,可按文档意图调整间隔,或使用 disable-keep-alive(Android 上该项被强制为 true,不能按桌面思路复现)。测试窗口内把 mode 明确设为你要验证的 rule、global 或 direct,避免外部 API 把模式改掉:external-controller 可被 RESTful API 控制内核,secret 为空或不校验的 Unix socket、named pipe、external-doh-server 都可能被其他工具改配置或拉数据。tcp-concurrent 会额外打出多路连接,对比测试时应保持该项不变。将 log-level 设为 info 或 debug,在控制台或控制页面查看测试前后是否出现无关错误、警告或外部资源请求;silent 无法提供判断依据。
若收紧入站、关闭 GEO 自动更新、固定模式并提高日志后计数仍被未知连接推高,下一步应在系统层停止可疑进程,检查 interface-name 与 routing-mark 是否把其他出站汇入同一网卡,并到规则配置中寻找进程或域名匹配写法(本页未给出规则语法)。不要在进程匹配为 off 时继续做应用级归因。