外观
Claude Code WSL 代理怎么配?与 Windows 原生的三点差异
Claude Code WSL 代理怎么配?和 Windows 原生有三点差异。一是代理地址不同:Windows 原生用 127.0.0.1 加客户端端口即可,WSL2 默认有独立的虚拟网络,里面的 127.0.0.1 是 WSL 自己,必须指向 Windows 宿主的 IP,或者开启 WSL 的镜像网络模式让两边共享 localhost。二是客户端要勾选「允许局域网连接」,否则宿主 IP 不接受来自 WSL 的连接。三是 Windows 防火墙可能拦截这条连接。三点都处理好,WSL 里的 Claude Code 才能走到节点。
Windows 原生终端的基础配置(PowerShell 里设 $env:HTTPS_PROXY)见Claude Code 网络环境,本文只讲 WSL 的不同之处。
速读要点
- WSL2 默认要把代理地址指向 Windows 宿主 IP
- 客户端必须开「允许局域网连接」,否则宿主端口拒绝 WSL
- 能开镜像网络就开,写法与 Windows 原生完全一致
差异一:代理地址指向哪里,与 Windows 原生的根本区别
| 环境 | 代理地址写法 | 说明 |
|---|---|---|
| Windows 原生(PowerShell、CMD) | http://127.0.0.1:端口 | 客户端与终端在同一网络栈 |
| WSL1 | http://127.0.0.1:端口 | WSL1 共用 Windows 网络栈,与原生一致 |
| WSL2 默认(NAT 模式) | http://<Windows 宿主 IP>:端口 | WSL2 是独立虚拟网络,127.0.0.1 不是 Windows |
| WSL2 镜像网络模式 | http://127.0.0.1:端口 | 开启后与 Windows 共享 localhost |
WSL2 NAT 模式下宿主 IP 的获取方式:在 WSL 里执行 ip route show default,默认网关地址通常就是宿主;或者读取 /etc/resolv.conf 里的 nameserver。这个地址在每次 Windows 重启后可能变化,建议写成脚本动态获取,而不是写死。
差异二:客户端要允许局域网连接
WSL2 访问宿主 IP 时,对代理客户端来说是一个「局域网内的其他设备」。客户端默认只监听 127.0.0.1,必须开启「允许局域网连接」(不同客户端叫法有别)后才会监听宿主 IP。开启后用 WSL 里的 curl -I --proxy http://<宿主 IP>:端口 https://www.anthropic.com 验证,有状态码返回才算通。
差异三:防火墙与镜像网络
- 防火墙。 第一次从 WSL 连宿主端口,Windows 防火墙可能弹窗或静默拦截。在防火墙里给代理客户端放行专用网络即可,不要整体关闭防火墙。
- 镜像网络模式。 在 Windows 的 WSL 配置文件里开启镜像网络后,WSL2 与 Windows 共享网络接口,127.0.0.1 直接指向宿主,环境变量写法与 Windows 原生一致,也不再需要动态获取 IP。它还能让 Windows 侧的 TUN 模式更完整地覆盖 WSL 流量。是否可用取决于你的 Windows 与 WSL 版本,以官方文档为准,开启后重启 WSL。
Claude Code WSL 代理怎么配:推荐做法
- 能开镜像网络就开,最省事,WSL 里的配置与 Windows 原生完全一致。
- 不能开的,在 WSL 的 shell 配置里用一小段脚本读取宿主 IP 并导出 HTTPS_PROXY、HTTP_PROXY,顺带把 NO_PROXY 设为 localhost 与 127.0.0.1。
- 客户端开「允许局域网连接」,防火墙放行。
- 每次新开 WSL 终端先
curl ifconfig.me看出口,再启动 Claude Code。
节点本身的要求与 Windows 原生相同:固定单出口、低丢包,见Claude Code 固定出口节点怎么选。
连不上时的 10 秒自检
| 现象 | 最可能原因 | 10 秒自检 |
|---|---|---|
curl 立刻报 Connection refused | 代理地址仍是 127.0.0.1,或客户端没开局域网监听 | echo $HTTPS_PROXY 看地址是否为宿主 IP |
curl 长时间无响应后超时 | 防火墙拦截 | Windows 侧暂时放行客户端的专用网络再试 |
| 昨天能用今天不行 | 宿主 IP 重启后变了 | ip route show default 对比变量里的地址 |
| curl 正常、Claude Code 不行 | 变量不在同一 shell | 在同一窗口启动,或写进 shell 配置 |
推荐机场
| 机场 | 付款方式 | 起价 | 入门流量 | 倍率 | 节点地区 | 线路 | AI | 流媒体 | 设备 | 适合谁 | 评测 | 优惠 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 光速云 | 年付 / 月付 / 季付 | 约 ¥7.5/月(年付折算) | 300 GB | 全节点 1.0x 结算,无隐藏高倍率 | 香港、台湾、新加坡、日本、美国 | IEPL / 专线 | 实测 5/5 | 实测 8/8 | 5 台 | 稳定优先、AI 用户、视频用户、性价比 | 评测 | 领优惠 |
| 微风网络 | 季付 / 年付 / 月付 | 约 ¥7/月(年付折算) | 450 GB | 日常节点 1.0x,纯净原生解锁节点 1.2x | 香港、台湾、新加坡、日本、美国 | IEPL / 专线 | 实测 5/5 | 实测 8/8 | 5 台 | 便宜优先、新手、AI 用户、视频用户 | 评测 | 领优惠 |
| 二猫云 | 月付 / 季付 / 年付 / 按量 | ¥20/月起 | 300 GB含不限时 | 标准节点 1.0x,冷门小众地区 1.2x | 香港、台湾、新加坡、日本、美国、马来西亚、英国、法国、德国、土耳其、泰国、巴西 | IEPL / 中转 | 实测 5/5 | 实测 8/8 | 5 台 | 性价比、AI 用户、视频用户 | 评测 | 领优惠 |
| 星岛梦 | 月付 / 季付 / 年付 / 按量 | 约 ¥8/月(年付折算) | 260 GB含不限时 | 常规节点 1.0x,专线节点 1.2x,大流量下载专用 0.5x | 香港、台湾、新加坡、日本、美国 | 专线 / IEPL | 实测 3/5 | 实测 6/8 | 5 台 | 便宜优先、新手 | 评测 | 领优惠 |
| 飞猫云 | 季付 / 年付 / 月付 | 约 ¥7/月(年付折算) | 500 GB | 主力 IEPL 专线 1.0x,直连备用 0.5x | 香港、台湾、新加坡、日本、美国、马来西亚、泰国、土耳其、法国、英国、德国、越南 | IEPL | 实测 3/5 | 实测 7/8 | 3 台 | 便宜优先、新手 | 评测 | 领优惠 |
起价标「年付折算」的是年付套餐折合的月均价,不是月付价。AI / 流媒体:实测 n/m 为站长实测结果(可用项数 / 测试项数,部分可用不计入可用),资料称支持 为品牌资料描述,未测试 为未纳入测试;可用性随平台策略变化,以最新复测为准。
常见问题
Windows 里 Claude Code 正常,WSL 里连不上?
WSL2 的 127.0.0.1 不是 Windows。把代理地址改成宿主 IP 并开「允许局域网连接」,或开启镜像网络。
宿主 IP 每次重启都变怎么办?
NAT 模式的正常现象。用脚本从默认路由或 resolv.conf 动态读取,或者开启镜像网络后用 127.0.0.1。
Windows 开了 TUN 模式,WSL 里还要设环境变量吗?
NAT 模式下 TUN 对 WSL 流量的覆盖不一定完整,以 WSL 里 curl ifconfig.me 的结果为准;镜像网络模式下覆盖通常更完整。不确定就两边都设。
WSL 里 curl 能走代理,Claude Code 却不行?
环境变量只在当前 shell 生效。确认 Claude Code 与 curl 在同一个终端启动,或把导出语句写进 shell 配置文件后重开终端。
下一步
- 想要节点能固定、不轮换的机场:AI 机场有哪些?按 AI 可用性筛选
- Windows 侧 TUN 模式的开法:Windows TUN 模式教程