Claude Code 断流与掉登录:分层排查顺序
快速结论
Claude Code 的断流和浏览器打不开不是同一件事。命中率最高的原因是命令行进程根本没走代理——系统代理开关管不到它,要么开 TUN/虚拟网卡模式,要么给终端会话设代理环境变量。其次是自动选路在任务中途换了出口,导致鉴权失效、被要求重新登录,解法是把 AI 域名固定到一个手动指定的节点。最后才轮到超时设置、分流漏放和出口 IP 属性。
任务跑到一半退出、终端一直卡在连接、刚登录又被要求重新认证——这三件事看上去都是「网络不行」,实际分属三个不同的层。ChatGPT 那类通用排查(地区判定、浏览器身份残留、验证循环)已经写在ChatGPT 打不开怎么办,本页不重复,只处理 Claude 与 Claude Code 特有的部分:命令行进程的代理继承、长任务期间的出口一致性、以及登录态反复失效。
先对号入座:症状落在哪一层
| 你观察到的 | 最可能的层 | 一步验证 |
|---|---|---|
| 浏览器能打开,终端里连接超时 | 命令行没走代理 | 在终端里带上代理环境变量再跑 |
| 短任务正常,长任务总在差不多时长处断 | 长连接被掐断 | 用一个短任务做对照 |
| 用着用着被要求重新登录 / 鉴权报错 | 出口在中途变了 | 改成手动指定单节点再试 |
| 网页能用,命令行工具不能用 | 分流规则漏放 | 临时切全局模式访问一次 |
| 连浏览器都打不开,其他网站也不通 | 不属于本页 | 见节点全部超时 |
最先查:命令行进程有没有走代理
判断依据:浏览器里一切正常,终端里却是连接超时、连接被拒绝这类报错。看到这个组合就不用再往下猜了。
系统代理开关只对读取系统代理设置的程序有效。浏览器读,很多命令行工具和 Node 进程不读——它们要么看环境变量,要么需要一层虚拟网卡把流量整体接管。
按稳妥程度排,三种做法:
- 打开客户端的 TUN / 虚拟网卡模式。最省事的一条:在网络层接管全部进程的流量,不依赖每个程序自己的配置,开启时通常需要授予系统权限。
- 给终端会话设置代理环境变量,指向客户端的本地混合端口。注意 PowerShell 与 Bash 写法不同,且变量通常只对当前会话生效,长期使用要写进配置文件。
- 排除本地安全软件的干扰。公司设备上的安全网关会改写证书,命令行侧因证书链校验不过而断开是常见现象——报错里一般带证书字样。请找管理员处理,不要关闭证书校验来绕过。
接着查:整段任务是不是同一个出口
判断依据:任务开头一切正常,跑了几分钟后被要求重新认证,或者报鉴权类错误。这说明出口 IP 在过程中变了。
自动选路的节点组(延迟优选、故障转移、负载均衡)会在后台悄悄换节点。对需要保持会话与鉴权状态的服务来说,换出口约等于换了一个访问来源。按公开观察,这类服务判断来源变化的具体规则并未公开,只能从结果反推——但结果很一致:别让它变。
做法:把节点组改成手动指定单节点;更彻底的是给 AI 域名单独建一个固定策略组,两端配置步骤见 AI 域名分流教程。
然后查:长连接的超时与缓冲
判断依据:短任务从来不出问题,长任务总在接近同一个时长处停住。这不是解锁问题,是链路保持能力问题。
- 客户端或内核设了较短的空闲超时,长时间没有数据往返就被回收。
- 中间链路对流式响应做了缓冲,表现是长时间没有输出、然后一次性吐出,或者干脆断掉。
- 断流只集中在晚间 → 那是拥塞而不是超时策略,属于另一条排查路径。
另外两条纪律:任务进行中不要切节点,也不要更新订阅——后者会重建配置并重连,效果和拔网线一样。
再查:分流规则的覆盖范围
判断依据:临时切到全局代理模式就一切正常,切回规则模式又不行。看到这个对比,问题就锁定在规则覆盖范围上。
命令行工具访问的域名集合与浏览器页面并不相同,还包含接口端点。只放行了网页域名时,典型表现就是「网页能用、命令行不行」。把整组域名归入同一条策略即可。
最后查:出口 IP 属性与账号侧
前面四层都排掉仍然频繁掉登录,才轮到怀疑出口 IP 本身。
- 共享程度高的机房 IP 更容易触发反复验证;不同 IP 类型的差别见原生 IP 是什么。
- 换一条明确面向 AI 场景维护的线路做交叉验证。怎么判断一条线路适不适合这类场景,见 AI 场景选型标准;候选名单与自测流程见 ChatGPT 机场专题。
- 同一订阅在另一台设备、另一个网络下表现相同 → 排除本地环境,问题在线路。
把结论固定下来
排查一次,就把结果沉淀成常设配置,而不是下次重来:
- AI 相关域名走一个手动指定的策略组,不参与自动切换。
- 命令行的代理接管方式二选一(TUN 或环境变量),写进固定启动流程。
- 长任务开始前先跑一个短任务确认链路。
- 常备第二个订阅,只用于交叉验证。
安全提醒:不要把订阅链接贴进任何在线转换、校验或诊断工具,也不要连同终端日志一起发给别人——它等同于你的账户凭据。客户端安装包只从项目官方发布页获取。
常见问题
- 浏览器能打开 Claude,为什么命令行里一直连接超时?
- 因为系统代理开关只对读取系统代理设置的程序生效,命令行工具和 Node 进程通常不读它。要么在客户端里打开 TUN / 虚拟网卡模式让全部进程流量被接管,要么在终端会话里设置代理环境变量指向客户端的本地端口。这是这类报错命中率最高的原因。
- 长任务跑到一半就断,是节点不够快吗?
- 和速度关系不大,和链路能不能长时间保持稳定有关。先看断点是不是总落在差不多的时长上——是的话查客户端的空闲超时设置和中间链路对流式响应的处理;只在晚间出现则是拥塞问题,属于另一条排查路径。
- 为什么刚登录没多久又被要求重新认证?
- 最常见的是出口在使用过程中变了。自动选路的节点组会在后台切换节点,对需要保持会话的服务来说,换出口相当于换了个访问来源。把节点组改成手动指定单节点,或给相关域名单独建一个固定策略组。
- 任务进行中可以更新订阅或切节点吗?
- 不要。更新订阅会重建配置并重连,切节点会直接掐断当前连接,两者都会让正在进行的长任务失败。有需要请在任务结束后再操作。
- 这些都试过还是频繁断,问题在机场吗?
- 做一次交叉验证再下结论:同一台设备、同一套配置,换另一个订阅跑同一个任务。另一个订阅正常,说明当前线路在长连接场景上不合适;两个都不正常,问题多半在本地网络或设备环境。
继续这条路径
- ChatGPT 打不开怎么办:地区不支持与频繁验证的排查顺序
代理连上了却打不开 ChatGPT,页面转圈、提示当前地区不支持、每次访问都要过一遍人机验证、长回答写到一半断流——这四种症状的原因各不相同。本页按出口 IP、浏览器身份残留、分流规则、连接策略四个检查点排出先后顺序,逐条给出判断依据,并说明什么时候该换节点、什么时候该重新评估机场。
- AI 域名分流教程:固定走同一个节点
把 AI 服务的域名钉死在一个手动指定的节点上,是解决长任务断流、频繁重新登录、地区判定反复的通用前置动作。本教程给出 Clash 与 Shadowrocket 两端的完整配置步骤、订阅更新后不被覆盖的写法、三种验证规则是否真的生效的方法,以及六个最常见的配置错误。
- ChatGPT / Claude 用什么机场:AI 场景的选择标准
AI 工具对机场的要求和看视频完全不同:IP 风控、落地区域、会话保持缺一不可。本文给出 AI 场景的三项核心标准、候选核验流程与常见误区,附候选核对说明。