返回
AI 工具

Claude Code 国内使用:安装、登录与终端代理

本页含推广链接,购买后本站可能获得佣金。查看推荐与推广说明。

  • Claude Code 需要 Claude Pro 及以上订阅或 API 余额,免费版不能用;支持地区与 Claude 相同,不含中国大陆、香港、澳门。
  • 不少终端程序不直接读取系统代理,安装和登录之前就要设置 HTTPS_PROXY 环境变量,或在代理客户端里开启 TUN 模式。
  • 浏览器和终端要走同一个支持地区的固定节点,长时间使用不要放在自动测速组里,断线后用 claude --continue 接着做。
收起目录目录

在国内用 Claude Code,关键是让终端本身走代理:先在代理客户端里选好台湾、日本、新加坡或美国的固定节点,再给终端设置 HTTPS_PROXY 环境变量或打开 TUN 模式,然后用官方命令安装、运行 claude 并登录 Claude 订阅账号。只开系统代理时,浏览器能打开 Claude,终端却连不上,这是最常见的卡点。

本文按“订阅、安装、原理、两种代理方法、登录报错、长期稳定”的顺序讲。命令以 Clash Verge Rev 的默认端口 7897 为例,用其他客户端的,换成你的客户端设置里显示的端口。

网络设置仅用于排查连接。服务支持地区、用户实际所在地、账户资格与付款条件需分别满足,变更出口 IP 不等于获得服务使用资格。

Claude Code 是什么,需要什么订阅

Claude Code 是 Anthropic 推出的编程 Agent,主要在终端里运行。和在网页上跟 Claude 聊天、再把代码复制回编辑器不同,它直接在你的项目目录里工作:读懂整个代码库,跨多个文件修改代码,运行命令和测试,按你的要求提交 Git。权限提示取决于所选模式、已授权操作和工作区设置,执行前应理解相应权限范围。它也提供 VS Code、JetBrains 等编辑器的插件。

Claude 的免费版不包含 Claude Code。截至 2026 年 11 月,可以用的方式如下(美区价格):

方式 费用 适合谁
Claude Pro 每月 20 美元;按年付折合每月约 17 美元 每天做少量任务、维护个人项目
Claude Max 每月 100 美元,用量是 Pro 的 5 倍 每天连续用几个小时
Claude Ultra 每月 200 美元,用量是 Pro 的 10 倍 全天高强度使用
团队与企业套餐 按席位计费 公司统一采购,由管理员分配席位
API Key 按量付费 按 token 计费,例如 Sonnet 5.5 每百万输入 token 2 美元、输出 10 美元 用量波动大,或者要接入自动化流程

怎么选:先按月订 Pro 用一周,经常提示用量达到上限再升 Max。API 方式适合把 Claude Code 放进脚本和持续集成流程里使用,日常交互式编程可比较订阅额度与 API 按量费用。

使用 Claude Code 也需要满足相应地区与账户条件:

AI 服务官方可用地区 核对于

按服务查看:各 AI 服务在 9 个地区的官方可用情况,核对于 2026-11-01
服务 中国大陆香港澳门台湾日本新加坡韩国美国英国
Claude 含 Claude Code 与 API 不可用不可用不可用可用可用可用可用可用可用

可用在服务的官方支持地区名单里 不可用不在名单里

也就是说,终端的出口同样不能落在中国大陆、香港和澳门。账号注册、手机验证和付款方式见 Claude 国内使用教程;想先比较 Cursor、Codex 等同类工具,见 AI 编程工具推荐。

安装 Claude Code:macOS、Windows、Linux

安装命令本身就要从境外服务器下载程序,终端不走代理会卡住或超时。所以先在当前终端窗口里设置一次临时代理(原理和长期设置方法见后面两节):

# macOS / Linux
export HTTPS_PROXY=http://127.0.0.1:7897
export HTTP_PROXY=http://127.0.0.1:7897
# Windows PowerShell
$env:HTTPS_PROXY="http://127.0.0.1:7897"
$env:HTTP_PROXY="http://127.0.0.1:7897"

如果 TUN 已接管终端连接,可不重复设置代理变量;先用客户端连接日志确认。Windows 自带的 Windows PowerShell 5.1 下载文件时读取的是系统代理而不是环境变量,用它安装时要同时打开代理客户端的系统代理。然后按系统选一种安装方式,截至 2026 年 11 月,官方推荐用原生安装脚本:

# macOS、Linux、Windows 的 WSL:原生安装脚本
curl -fsSL https://claude.ai/install.sh | bash

# macOS 也可以用 Homebrew
brew install --cask claude-code
# Windows PowerShell:原生安装脚本
irm https://claude.ai/install.ps1 | iex

# 或者用 WinGet
winget install Anthropic.ClaudeCode

已经装了 Node.js 的,也可以用 npm 安装:

npm install -g @anthropic-ai/claude-code
  1. 在设置了临时代理的终端里运行上面的一条安装命令。结果:命令输出安装完成的提示,没有长时间卡住。
  2. 关闭并重新打开终端,执行 claude --version。结果:显示版本号。提示找不到命令,多半是安装目录没加进 PATH,按安装结束时的提示把目录加进 shell 配置文件,再重新打开终端。
  3. 执行 claude doctor 检查安装状态和自动更新是否正常。结果:各项检查通过,没有报错。
  4. 用 cd 进入你的项目目录,执行 claude 启动。第一次启动会进入登录流程,见后文“登录时提示地区不支持怎么办”。

避坑:只用官方安装方式

只通过上面的官方命令、Homebrew、WinGet 或 npm 官方包安装。网盘里的“免安装版”“绿色版”和来路不明的镜像,有被篡改的风险,而 Claude Code 能读写你的代码、执行命令,被篡改的版本风险很大。

截至 2026 年 11 月,在 Windows 上原生运行 Claude Code 前,建议安装 Git for Windows,并按当前版本的运行要求配置,Claude Code 会调用其中的 Git Bash 执行命令;在 WSL 里使用的,按 Linux 的方式安装即可。

为什么浏览器能开 Claude,终端却连不上

代理客户端的“系统代理”开关,做的事情是把代理地址写进操作系统的网络设置。浏览器会主动读取这个设置,所以能正常打开 Claude;但终端里运行的程序,包括 Claude Code、curl、git、npm,大多不读这个设置,而是看 HTTPS_PROXY 这类环境变量。两样都没设置时,终端的请求会直接走国内网络,访问 Anthropic 的服务器必然超时。

程序 读取系统代理吗 怎么让它走代理
Chrome、Edge、Safari 等浏览器 读取 开系统代理即可
Claude Code、curl、git、npm 一般不读取 设置环境变量,或开 TUN 模式
Claude Code 启动的子进程(测试脚本、MCP 服务等) 继承启动它的终端的环境变量 在启动 claude 的同一个终端里设置好变量
编辑器里的 Claude Code 插件 看编辑器的代理设置和它读取到的环境变量 设置编辑器代理,或开 TUN 模式

登录时最容易被这个问题迷惑。执行 /login 后,Claude Code 会打开浏览器让你授权:浏览器走系统代理,授权页能正常打开、显示授权成功;但接下来换取登录凭据、调用模型的请求都由终端发出,终端不通,登录就会一直卡住或超时,看起来像是“授权成功了却登不上”。

常见的报错和对应原因:

终端里的现象 通常是什么原因
Unable to connect to Anthropic services,或请求 api.anthropic.com 超时(ETIMEDOUT) 终端没走代理
ECONNREFUSED 127.0.0.1:7897 环境变量里的端口写错了,或者代理客户端没在运行
连接失败的提示里附带一句 Claude Code 可能在你所在的国家不可用 多数时候仍然是网络不通,先按下一节设置代理,再判断是不是地区问题
API Error: 403,内容含 Request not allowed 请求已经到达服务器,但出口地区不在支持名单里

终端代理设置:HTTPS_PROXY 环境变量

先在代理客户端的设置里找到本地代理端口:Clash Verge Rev 默认的混合端口是 7897,其他客户端以设置页显示的为准。然后按你的系统设置:

# macOS / Linux(zsh、bash)
export HTTPS_PROXY=http://127.0.0.1:7897
export HTTP_PROXY=http://127.0.0.1:7897
export NO_PROXY=localhost,127.0.0.1
# Windows PowerShell
$env:HTTPS_PROXY="http://127.0.0.1:7897"
$env:HTTP_PROXY="http://127.0.0.1:7897"
$env:NO_PROXY="localhost,127.0.0.1"
:: Windows 命令提示符(CMD)
set HTTPS_PROXY=http://127.0.0.1:7897
set HTTP_PROXY=http://127.0.0.1:7897
set NO_PROXY=localhost,127.0.0.1

这样设置只对当前终端窗口有效,关掉就没了。想长期生效,有两种做法:

  • 写进 shell 配置文件:macOS 默认用 zsh,把上面三行 export 加到 ~/.zshrc 末尾;Linux 一般是 ~/.bashrc。Windows 可以在系统的“环境变量”设置里添加,或写进 PowerShell 的 $PROFILE 文件。这样所有终端程序都会走代理。
  • 只给 Claude Code 设置:在 Claude Code 的用户设置文件 ~/.claude/settings.json 里加 env 字段,只影响 Claude Code,不影响其他程序:
{
  "env": {
    "HTTPS_PROXY": "http://127.0.0.1:7897",
    "NO_PROXY": "localhost,127.0.0.1"
  }
}

设置完,用两条命令验证:

# 能很快返回一行以 HTTP 开头的状态,说明终端能连到 Anthropic
curl -sI https://api.anthropic.com | head -n 1

# 看终端出口被识别到哪个地区,loc 应为 TW、JP、SG、US 等
curl -s https://claude.ai/cdn-cgi/trace | grep loc

Windows 用户可以在 PowerShell 里执行 curl.exe -s https://claude.ai/cdn-cgi/trace,在输出里找 loc= 那一行。

几个容易踩的坑:

  • 代理地址用 http:// 开头:截至 2026 年 11 月,Claude Code 不支持 SOCKS 代理,填 socks5:// 地址会连不上。Clash 系客户端的混合端口同时接受 HTTP 和 SOCKS,直接用 http://127.0.0.1:端口 即可。
  • NO_PROXY 要包含本机地址:让 Claude Code 访问你本地启动的开发服务器、数据库时不绕到代理上。
  • 编辑器读的是旧的环境变量:改了 ~/.zshrc 后,新开一个终端标签页才会读到;在 Windows 系统设置里改的环境变量,要完全退出 VS Code 等编辑器再打开,内置终端和编辑器插件才会生效。
  • 公司网络有 HTTPS 拦截:公司代理会替换证书时,需要按公司提供的证书配置 NODE_EXTRA_CA_CERTS,这种情况找公司的 IT 部门确认。

git、npm、pip、Docker 等工具各自的代理写法,见 终端代理设置。

用 TUN 模式接管终端流量

环境变量需要每个终端、每个工具分别照顾到,遇到不认环境变量的程序(例如部分 MCP 服务、用 SSH 协议的 git、WSL2 和 Docker 容器)还是会漏。TUN 模式在系统里加一块虚拟网卡,把所有程序的流量都接过去,一次解决,经常在终端里工作的话更省事。原理和三款客户端的开启步骤,见 TUN 模式是什么。

以 Clash Verge Rev 为例:

  1. 打开“设置”页的“虚拟网卡模式”(部分版本写作 TUN 模式)。提示服务模式未安装的,先点击安装并按系统提示授权。结果:开关保持开启,没有弹回。
  2. 新开一个终端,不设置任何环境变量,执行 curl -s https://claude.ai/cdn-cgi/trace | grep loc。结果:显示支持地区的代码。
  3. 在客户端的“连接”页确认 api.anthropic.com、claude.ai 走的是你给 AI 准备的那个组和节点。

开 TUN 后流量仍按规则分流,所以要确认 Claude 相关的域名进了同一个手动选择的组。规则没写到的话,它们会落进订阅原有的代理组(常见名字是“节点选择”),那个组如果是自动选择,可能被分到香港节点,登录就会报地区不支持。以 Clash Verge Rev 为例,在订阅的扩展覆写配置里加上(mihomo 内核写法,“AI”是你建的手动选择组名;用 prepend-rules 插到原有规则最前面,写成 rules: 会替换掉订阅自带的全部规则):

prepend-rules:
  - DOMAIN-SUFFIX,anthropic.com,AI
  - DOMAIN-SUFFIX,claude.ai,AI
  - DOMAIN-SUFFIX,claude.com,AI

另外两点:

  • IPv6:节点不支持 IPv6 时,在客户端里关闭 IPv6,或确认 TUN 一并接管了 IPv6,避免请求从国内的 IPv6 出去。
  • TUN 和环境变量可以同时存在:开着 TUN 时,环境变量指向本机代理端口的请求同样按规则走,不会冲突。不开 TUN 的电脑上,环境变量是唯一的通道。

想找标明 Claude 可用地区、支持固定出口的服务商,可以参考 机场套餐与推荐。

登录时提示地区不支持怎么办

先分清是哪个环节报的错:

现象 出在哪个环节 先做什么
浏览器授权页显示 App unavailable 浏览器的出口在不支持地区 检查浏览器走的节点
浏览器显示授权成功,终端一直等待或超时 终端没走代理 按前两节设置环境变量或开 TUN
终端提示 API Error: 403 和 Request not allowed 终端的出口在不支持地区 检查终端走的节点和分流规则
提示授权码无效或已过期 授权等待太久,或复制授权码时带了多余字符 重新执行 /login,尽快完成授权

然后按这个顺序排查:

  1. 查终端的出口:在运行 Claude Code 的那个终端里执行 curl -s https://claude.ai/cdn-cgi/trace | grep loc。显示 CN,说明终端没走代理;显示 HK,说明走到了香港节点。
  2. 查浏览器的出口:在浏览器里打开 https://claude.ai/cdn-cgi/trace 看 loc。浏览器和终端都要在支持地区,并且尽量是同一个节点。
  3. 查分流规则:确认 anthropic.com、claude.ai、claude.com 三个域名都分到了同一个手动选择的组。只写了其中一两个,登录过程中的部分请求会走别的节点。
  4. 排除 IPv6:关闭客户端或系统的 IPv6 后重试。
  5. 重新登录:在 Claude Code 里执行 /logout,再执行 /login,重新走一遍授权。
  6. 换节点:换同地区的另一个节点,或换到另一个支持地区。个别 IP 会被判错地区,换一个往往就好。

用 API Key 而不是订阅登录的,同样要求出口在支持地区,排查方法相同。另外,如果你用的是公司为团队开通的账号,还要确认公司本身符合 Anthropic 的地区规定:2025 年 9 月 4 日起,被不支持地区的公司直接或间接持股超过 50% 的企业不能使用 Claude,这类限制无法通过网络设置解决。

长时间使用的稳定性建议

Claude Code 的一次任务往往要连续工作几分钟到几十分钟,中间有大量请求和长时间的流式输出。和网页聊天相比,它对“连接不断”的要求更高,对“首包快几十毫秒”反而没那么敏感。

  • 固定节点,不要自动切换:给 AI 建的组用手动选择,不要用自动测速或负载均衡。任务进行中出口 IP 变化,轻则请求失败重试,重则要求重新登录。
  • 选稳定的线路,而不是延迟数字最低的:晚高峰丢包少、不断流的节点更适合长任务。专线中转、落地在日本或美国的节点,一般比直连节点在晚上更稳。
  • 长任务前别更新订阅:客户端更新订阅时会重新加载配置,正在进行的连接会被断开。可以把订阅的自动更新间隔调长,或者在空闲时手动更新。
  • 断线后接着做:网络中断导致会话退出时,执行 claude --continue 回到最近一次会话,或用 claude --resume 从历史会话里选一个继续,已经做的工作不会丢。
  • 保持电脑唤醒:任务较长时关闭自动睡眠;在远程服务器上运行的,用 tmux 一类的终端复用工具,断开 SSH 后任务继续运行。注意服务器的出口同样要在支持地区。
  • 账号只给自己用:不要和别人共用账号,也不要用第三方工具把订阅额度包装成 API 转给其他程序或其他人使用。Anthropic 的条款只允许通过 API Key 或官方允许的工具(如 Claude Code)以程序方式访问,这类转发不在允许范围内,容易导致账号受限。

Cursor、Codex 等其他编程工具在国内的网络设置思路相同,Cursor 的具体问题见 Cursor 国内能用吗。更多 AI 工具的选择,见 好用的 AI 工具推荐。

使用前请阅读各服务的条款。

Telegram 联系

推荐机场