多配置文件怎么用:工作生活分开

同一个客户端里塞太多规则,时间一长就会互相冲突:上班要连公司内网,回家要连家里 NAS,出差又要连另一套节点。改来改去,最后自己都记不清当前是哪个配置。

多配置文件就是为了解决这个——不同场景各一套,用完切回去,互不干扰。

先分清楚:什么该隔离,什么该共享

配置项该隔离吗原因
节点/服务器是不同场景用不同线路
分流规则是公司内网和家庭 NAS 网段不同
DNS看情况公司可能有内网 DNS
本地端口否统一更好记,除非冲突
开机自启看情况只对常用配置开启

三种组织方式

一、按场景分文件

建三个配置文件:home.yaml、work.yaml、travel.yaml。每个文件只写这个场景需要的规则,公共部分用引用。

优点是清晰;缺点是公共规则改了要改三处。

二、按基础+覆盖

一个 base.yaml 放通用规则(局域网直连、常用国内站点),三个场景文件只写差异部分。

优点是不重复;缺点是要客户端支持配置继承,不是所有工具都支持。

三、单文件多分组

所有规则写在一个文件里,用分组标记隔开。这种方式适合规则少的情况,多了会乱。

切换时最容易踩的坑

切换配置后,旧的连接不会自动断开。表现是:明明切到了新配置,某些网站还是走的老线路。

原因:已经建立的 TCP 连接还挂在旧规则上,新配置只影响新连接。

处理办法:

  • 切换后手动断开再连接一次
  • 或重启客户端(比断开更彻底)
  • 浏览器缓存 DNS 时,还要清一下 DNS 缓存

怎么验证切换生效了

# 看出口 IP
curl -s https://api.ipify.org

# 看某个域名走哪条路
curl -s -o /dev/null -w "%{remote_ip}\n" https://example.com

切换前后各跑一次,出口 IP 和 remote_ip 都应该变。只有其中一个变,说明部分流量还走老配置。

一个实用建议

不要在配置文件里写死节点 IP。ISP 和 CDN 经常调整,写死之后某天突然全部超时,排查起来很费劲。

用域名 + 订阅更新,让配置自己跟上变化。多花十秒,省掉一次深夜排障。

💡 备份很重要:多配置文件的价值在于"随时切回去"。切换前把当前配置导出备份,改坏了能一键还原。

延伸阅读:排除列表怎么配、连接日志怎么看、全局模式和分流模式。