场景资讯 · Clash 技术博客

ChatGPT、Gemini、Claude 怎么用 Clash 分流?

ChatGPT、Gemini 和 Claude 的网页、登录与模型接口可能使用不同域名。给每个服务绑定稳定策略,并从真实连接记录补规则,能减少登录和长回复时的出口漂移。

  • ChatGPT
  • Gemini
  • Claude
本文目录

想把不同 AI 服务分开管理,关键不是收集越长越好的域名名单,而是知道账号验证、模型请求和上传分别去了哪里。共享登录域名还可能被其他产品使用。按真实会话补充规则,同时保留各服务自己的稳定出口,避免一次修改连带改变其他访问。

网页、登录、模型与上传分别有哪些请求?

为 ChatGPT、Gemini 或 Claude 配置规则时,分别完成登录、发送消息和上传文件,记录对应域名与出口。首页能打开只证明部分页面请求成功;同一服务的其他请求可能走了不同策略。已有失败时,按下表从具体动作定位。

失败动作对应的请求

看到的现象观察重点容易走错的方向
页面白屏或缺少样式脚本、静态资源和 DNS反复更换账号
登录后又回到登录页认证跳转、Cookie 与出口地区只补模型 API 规则
消息一直转圈或中途断开模型接口、流式连接与节点切换只测试首页
文件上传停住上传域名、对象存储和请求体大小把所有 CDN 都加入代理

登录与接口请求保持同一出口

认证请求和登录后的第一批接口请求如果来自不同出口,可能触发重新验证或让会话失效。排查时建立一个手动策略组,固定一条可用节点,让账号页、主站和接口在一次登录过程中使用同一出口。

这不是说三个服务必须永久共用一个节点。问题确认后可以按 ChatGPT、Gemini、Claude 分组;但每个服务自己的认证和数据请求仍应保持地区一致。账号不可用、服务未对所在地区开放或产品侧限流,也不会因为多写几条 Clash 规则而消失。

域名从真实会话里找,不从旧清单里整包复制

清空连接记录后,只完成一个动作,例如登录 Claude、在 Gemini 发送一条短消息,或从 ChatGPT 上传一个小文件。记录失败前后出现的主机名、命中规则和出站,查找哪些请求没有按预期转发。

从明确的产品入口开始记录:ChatGPT 使用 chatgpt.com,OpenAI API 使用 api.openai.com;Gemini 网页使用 gemini.google.com,Gemini API 常见入口是 generativelanguage.googleapis.com。

Claude 网页使用 claude.ai,Anthropic API 使用 api.anthropic.com。登录跳转、静态资源和上传地址仍要从自己的连接记录补齐。

新规则放在宽泛的 GEOIP、规则集和 MATCH 之前。Google 登录域名还会被 Gmail、YouTube 等服务共用,不要为了 Gemini 直接把 accounts.google.com 之类的宽域名永久绑进 AI 组。

连接记录确认认证请求走错出口时,再把当次出现的主机加入 AI 组并重新验证。

下面不是可直接粘贴的完整配置。在当前订阅中找到真实存在的组名,替换每一处 YOUR_EXISTING_GROUP,否则会报 group not found。三个 AI 组建好后,展开它们引用的现有组,固定可用节点,再加入规则。

先把现有组名替换正确,再建立三个 AI 策略组
# 必须先把 YOUR_EXISTING_GROUP 替换成当前配置里真实存在的组名
proxy-groups:
  - name: AI-OPENAI
    type: select
    proxies:
      - YOUR_EXISTING_GROUP
      - DIRECT
  - name: AI-GOOGLE
    type: select
    proxies:
      - YOUR_EXISTING_GROUP
      - DIRECT
  - name: AI-CLAUDE
    type: select
    proxies:
      - YOUR_EXISTING_GROUP
      - DIRECT

rules:
  - DOMAIN-SUFFIX,chatgpt.com,AI-OPENAI
  - DOMAIN,api.openai.com,AI-OPENAI
  - DOMAIN,gemini.google.com,AI-GOOGLE
  - DOMAIN,generativelanguage.googleapis.com,AI-GOOGLE
  - DOMAIN,api.anthropic.com,AI-CLAUDE
  - DOMAIN-SUFFIX,anthropic.com,AI-CLAUDE
  - DOMAIN-SUFFIX,claude.ai,AI-CLAUDE
  - GEOIP,CN,DIRECT
  - MATCH,YOUR_EXISTING_GROUP

这组规则真正生效的证据

  • 配置检查通过,没有 group not found
  • ChatGPT、Gemini、Claude 的测试请求分别命中自己的策略组
  • 登录跳转和发送消息期间出口没有变化
  • 未加入规则的 Google 服务没有被意外带进 AI-GOOGLE

网页正常而 CLI 超时,多半不是同一条代理入口

浏览器通常读取 Windows 或 macOS 系统代理,Python SDK、命令行工具、IDE 插件和容器未必如此。查看失败请求是否出现在 Clash 连接页面;没有记录时,先核对该进程的代理设置和请求是否实际发出,不只凭空白列表就断定请求没有进入代理。

命令行工具可以临时设置 HTTP_PROXY、HTTPS_PROXY 和 NO_PROXY,桌面开发环境也可按应用说明填写代理。确实有多个不遵循系统代理的进程时再考虑 TUN。若连接已经出现在记录里,就不要继续折腾环境变量,而应检查它命中的规则、策略组和节点。

白屏是否由不同的 DNS 入口造成?

浏览器安全 DNS、系统 DNS 和 Clash DNS 同时工作时,同一服务可能在不同程序里得到不同地址。排查阶段可暂时关闭浏览器独立 DoH,让域名查询和连接都从 Clash 经过,再看白屏或资源加载失败是否仍然出现。

解析成功而 TLS 握手或连接继续超时,问题才回到节点质量和规则。不要因为一次 DNS 失败就更换十个城市,也不要在没有观察结果时同时改 Fake-IP、嗅探和上游 DNS。

长回复和上传更怕出口变化,而不是测速数字多几毫秒

AI 对话会维持较长的流式连接。自动组过于频繁地重新选择节点,可能让首页始终很快,回答却在中间断开。测试时用一条固定节点完成长回复、重新生成和文件上传,再比较自动组是否真的带来改善。

上传失败还要区分请求是否已经发送。进度从 0% 不动,先看上传地址是否命中;传到一半返回明确 HTTP 状态,则查看大小限制、文件类型和服务响应。Clash 只能改变网络路径,无法绕过产品本身的限制。

登录、长回复、上传与 API 的实际测试

比打开首页更有意义的测试

  1. 重新登录

    确认认证跳转结束后不会回到登录页,出口地区没有变化。

  2. 发送一段长对话

    观察首字时间、流式输出和结束状态,不只看能否出现第一句话。

  3. 上传一个小文件

    核对上传域名、进度和最终处理结果。

  4. 调用一次 API

    记录主机、HTTP 状态码和客户端是否使用了正确代理入口。

登录稳定而对话中断时,保留认证规则,检查模型请求;浏览器正常而 API 客户端没有连接记录时,检查该进程的代理设置。每次只调整失败动作涉及的设置。

参考资料