更换节点后 IP 没有变化怎么办:连接复用、系统代理、规则命中 DIRECT 逐项排查
在客户端里切换了节点,IP 查询站显示的地址却还是原来的,甚至还是本地运营商 IP。本文按「浏览器连接复用 → 系统代理是否生效 → 规则是否命中 DIRECT → 客户端缓存 → 怎么正确验证」的顺序排查,并说明哪些情况其实是正常现象。
先判断:是「没切换」还是「看错了」
切换节点后 IP 不变,真正的节点切换失败其实不多见。更常见的情况有三类:
- 浏览器还在用旧连接,查询站显示的是几秒前的结果;
- 流量根本没走代理,显示的一直是本地宽带 IP;
- 查询站本身被规则判成直连,显示国内 IP 属于正常。
分清这三类,排查就很快。下面按出现频率排序。
一、浏览器连接复用
现代浏览器对同一个站点会保持 TCP / HTTP2 / QUIC 长连接,几十秒到几分钟内不会重新建立。你在客户端里切了节点,但浏览器和查询站之间的旧连接还挂在旧节点上,刷新页面走的仍是旧通道,自然显示旧 IP。
处理方法:
- 关闭该查询站的所有标签页,等几秒再重新打开;
- 或者直接用隐私 / 无痕窗口重新访问,隐私窗口不复用普通窗口的连接;
- 或者换一个没打开过的查询站对比。
Clash 系客户端切换节点时默认会断开旧连接(Clash Verge 的「切换节点时断开连接」选项),但浏览器端有自己的连接池,客户端断了它会立即重连,重连前的一两秒内刷新仍可能看到旧结果。等几秒再刷新是最简单的办法。
二、系统代理没有生效
如果查询站显示的是你家宽带的 IP(运营商是电信 / 联通 / 移动),说明流量压根没经过客户端。切多少次节点都没用,先把这一步解决。
检查项:
- 客户端的系统代理开关:Clash Verge Rev 在「设置 → 系统代理」,FlClash 首页大按钮,v2rayN 在底部「系统代理 → 自动配置系统代理」。开关是开的,再看下一项。
- 系统代理指向的端口对不对:Windows 在「设置 → 网络和 Internet → 代理」里能看到当前地址和端口,macOS 在「系统设置 → 网络 → 详细信息 → 代理」。端口要和客户端混合端口一致(Clash Verge Rev 默认 7897,旧版 Clash 默认 7890)。改过端口但系统代理没同步,就会出现这种情况。
- 浏览器自己的代理设置:Firefox 默认有独立的代理配置,不一定跟随系统;装了 SwitchyOmega、FoxyProxy 一类插件时,插件配置会覆盖系统代理。先把插件设成「系统代理」或直接禁用。
- TUN 与系统代理:开了 TUN 模式后,系统代理可以关掉,但不能两个都关。有的用户关 TUN 时顺手把系统代理也关了,流量就全部直连了。
这一类问题完整的排查顺序见连上了但打不开网页,逻辑是一样的。
三、规则命中了 DIRECT
规则模式下,国内域名和国内 IP 会被判成直连。ip138、ip.cn、百度一类查询站是国内域名,规则里天然就是 DIRECT,显示国内 IP 是正确行为,不是故障。
要验证代理是否生效,应该用国外查询站,比如 ip.sb、ipinfo.io、whoer.net、browserleaks.com/ip。这些域名不在国内规则列表里,会按「节点选择」策略组走代理。
另外两种会命中 DIRECT 的情况:
- 策略组里误选了 DIRECT。Clash 的「节点选择」组里通常有一个 DIRECT 选项,手滑点到它,所有本该走代理的流量都直连。进「代理」页看当前选中的是不是一个真实节点。
- 规则列表最后的 MATCH 指向 DIRECT。少数自定义配置把兜底规则写成直连,没匹配上任何列表的域名就直接走了。看订阅配置最后一条规则是
MATCH,节点选择还是MATCH,DIRECT。
想把分流逻辑弄清楚,先读规则 / 全局 / 直连模式。
四、客户端缓存与策略组记忆
Clash 内核会记住每个策略组上次选中的节点。如果你改的是「节点选择」组,但实际流量走的是另一个组(比如订阅里给某些域名单独设了「流媒体」或「AI」组),那你切「节点选择」对这些域名无效,它们走的仍是另一个组记住的节点。
检查方法:在客户端的「连接」页找到查询站的那条连接,看它标注的「规则」和「代理链」。规则会告诉你它命中了哪一条,代理链会告诉你最终用的哪个节点。这是比任何 IP 查询站都可靠的验证方式。
部分客户端还有「策略组自动回退」:url-test 自动选择组会按延迟自己挑节点,你手动在里面选的会被下一次测速覆盖。手动指定节点请在 select 类型的组里选,不要在自动测速组里选。
五、落地 IP 本身就相同
同一机场的「香港 01」「香港 02」可能是同一台落地机的不同入口,或者多条中转线路汇到同一个出口。切了节点、连接也重建了,但出口 IP 一样,是机场的线路结构导致的,不是故障。
对比时换一个明显不同地区的节点(香港换成美国),IP 变了就说明切换机制正常。关于中转与落地的关系可以读 IEPL / IPLC / BGP 中转。
六、Fake-IP 与 DNS 缓存的影响
开 TUN 的 Fake-IP 模式时,浏览器拿到的是一个虚拟 IP,真实解析和出站都在内核里完成,切换节点不受 DNS 缓存影响。而 redir-host 模式或纯系统代理模式下,若查询站用的是 CDN 多地址,不同节点可能解析到不同的站点服务器,但显示的「你的 IP」仍取决于出站节点,不会因为 DNS 而显示错。
真正会受影响的是DNS 泄漏类的检测:切换节点后出站 IP 变了,但 DNS 请求还是国内运营商解析的。这不是「IP 没变」,而是另一个问题,文末有专门说明的链接。
正确的验证流程
把上面的要点整理成一个固定流程,以后遇到类似问题照着走:
- 打开客户端「连接」页,清空现有连接;
- 切换节点;
- 用隐私窗口打开 ip.sb 或 ipinfo.io;
- 回到「连接」页,找到这条连接,确认命中规则是「节点选择」而不是 DIRECT,代理链是你刚选的节点;
- 需要测试第二个节点,重复 1–4。
| 现象 | 最可能原因 | 处理 |
|---|---|---|
| 显示旧节点 IP | 浏览器连接复用 | 隐私窗口重开 |
| 显示本地宽带 IP | 系统代理没生效 / 选了 DIRECT | 查开关、端口、策略组 |
| 国内查询站显示国内 IP | 规则正常直连 | 换国外查询站 |
| 两个节点 IP 相同 | 同出口 | 换地区对比 |
| 切 A 组无效 | 流量走的是 B 组 | 看连接页的规则和代理链 |
相关
怎么挑节点 · Clash Verge 教程 · DNS 泄漏说明
常见问题
切换节点后 IP 查询站还显示旧节点的 IP,是节点没切成功吗?
多数是浏览器复用了旧连接。关掉标签页重开,或用隐私窗口再查一次。如果新开窗口 IP 变了,说明切换本身是成功的。
IP 查询站显示的是我家的宽带 IP,怎么回事?
流量根本没进代理。检查系统代理开关、是否误选了 DIRECT、以及规则是否把这个查询站判成了国内站点直连。
为什么 ip.sb 显示换了,ip138 却还是国内 IP?
规则分流在起作用。ip138 是国内域名,规则模式下走直连,显示国内 IP 是正常的。要验证代理请用国外的查询站。
两个节点显示的 IP 一样正常吗?
可能正常。同一机场同地区的多个节点常共用落地 IP,或者都经中转后出同一出口。换一个不同地区的节点对比即可。
怎么一次看清流量到底走了哪条线?
看客户端的「连接」页:每条连接会标注命中的规则和使用的节点,比任何查询站都直接。
本文为信息整理与个人经验,不构成购买建议。机场政策与软件界面可能变化,以官方为准。发现过期内容请 联系纠错。