切换 Wi-Fi、有线、热点或隧道之前,应把代理入口的监听范围当作会过期的配置来复核。原因是:bind-address 与来源地址段都是按地址理解的,而切换网络会改写本机地址集合和对端所在网段。官方说明中,* 表示绑定所有 IP 地址;写成单个 IPv4 或单个 IPv6 时,仅允许其他设备通过这个地址访问。旧的单地址可能从网卡上消失,新接口上又会出现你并未打算开放的地址。
切换网络前必须重新理解的监听前提
allow-lan 决定是否允许其他设备经过 Clash 的代理端口访问互联网。新网络若不可信,即使切换前曾经需要共享,也应重新评估该开关,而不是沿用上一张网络的值。lan-allowed-ips 仅在 allow-lan 为 true 时生效,默认 0.0.0.0/0 与 ::/0;lan-disallowed-ips 黑名单优先,默认空。旧网段白名单在新网上可能让所有客户端都失败,也可能在新网上变得过宽。
适用条件:即将改变默认路由、接口集合或地址前缀的任何切换。判断依据不是「上一张网还能用」,而是「切换后仍存在的本机地址、仍允许的源网段」是否与配置一致。本机回环在切换后通常仍可达,因此不能用本机 127.0.0.1 测试代替对监听范围的复核。
用三项清单复核即将生效的范围
切换前按固定清单读配置,避免漏项。
- 读
allow-lan。切换后若只本机使用,应关闭;若仍要给特定设备共享,保持true并继续下两项。 - 读
bind-address。若为具体 IPv4 或具体 IPv6,问清「该地址在新网络是否仍配置在预期接口上」。若不会保留原地址,应计划改为*或改为新网络将获得的地址,否则其他设备会继续访问已不存在的入口。IPv6 单地址按文档使用方括号;若ipv6为false,不要把 IPv6 入口列入切换后的验收路径。 - 读
lan-allowed-ips与lan-disallowed-ips。白名单应覆盖新网络中真正允许的源地址段;黑名单中的旧主机项在新网上可能无意义,但不要留下会误伤新客户端的前缀。
若启用了 authentication,确认新网络中的客户端仍使用 user:pass。skip-auth-prefixes 文档示例为 127.0.0.1/8 与 ::1/128,切换后不要把免验证前缀扩大到整个新局域网,除非明确接受该来源可以跳过验证。external-controller 为 127.0.0.1 时仅本机可控,改成 0.0.0.0 会监听所有 IP;切换到不可信网络前应确认控制面没有随代理入口一起暴露。API 与代理 bind-address 独立,复核时分别记录。
按新拓扑改配置以及失败下一步
适用条件与动作对应如下。新网络只给本机用:关闭 allow-lan,或把绑定限制到回环这类仅本机可达的地址。新网络需要共享且地址由自动配置分配:allow-lan 为 true,bind-address 用 *,同时把 lan-allowed-ips 写成新网段,避免沿用默认全域。新网络有固定接口地址:绑定该单地址,使其他设备只能通过这个地址访问。需要排除某一台设备:写入 lan-disallowed-ips。
切换后若本机可用而其他设备不可用:检查单地址是否已失效、白名单是否仍是旧网段、黑名单是否包含新客户端。若入口出现在不该出现的接口:说明 * 绑到了新增加的地址,应改单地址或收紧来源段。调整后必须重新加载配置再测。若配置与文档一致仍异常,把 log-level 调到可以看到 error 与 warning,并在操作系统中确认新地址上的监听与防火墙。不要把出站 interface-name、routing-mark 或 GEO 相关项当作监听范围的修复手段。