Gemini CLI 代理 IP 配置指南:HTTP、SOCKS5 与环境变量
Gemini CLI 未走代理或连接失败时,检查环境变量继承、HTTP/SOCKS5 兼容性、出口 IP、认证和配额,再决定是否更换代理。
Gemini CLI 的代理问题,通常不只是填写主机和端口,还涉及环境变量是否被进程继承,以及客户端是否支持对应协议。先确认变量生效,再验证出口 IP,最后测试真实 CLI 请求。
Gemini CLI 如何读取代理环境变量
先记录 Gemini CLI 版本、运行终端、目标 API 和错误码。系统代理已开启,不代表 CLI 一定会自动继承,必须在同一终端逐步验证。
先检查三个常用代理环境变量
确认当前终端能读取 HTTP_PROXY、HTTPS_PROXY 或 ALL_PROXY,并检查变量中的协议、主机、端口和认证格式。这些是常见环境变量,是否被当前 Gemini CLI 版本及其底层请求库读取,需要用实际请求验证。
确认 Gemini CLI 已继承终端变量
在启动 CLI 的同一终端检查变量是否存在,再确认 CLI 的请求库是否支持对应协议。PowerShell 可用 $env:HTTPS_PROXY='http://user:pass@proxy.example:8080' 临时设置,bash 可用 export HTTPS_PROXY='http://user:pass@proxy.example:8080';特殊字符按客户端要求编码。开发工具的代理继承方式可参考Cursor、Claude Code、OpenAI SDK 代理配置。
用最小请求确认代理已经生效
先用最小请求验证出口 IP、地区和基础响应,确认代理生效后再运行真实 CLI 任务。
Gemini CLI 的 HTTP 与 SOCKS5 代理怎么配置
HTTP、HTTPS 和 SOCKS5 该怎么选
优先选择 Gemini CLI 及其底层请求库明确支持的协议。HTTP/HTTPS 适合常规 API 请求,SOCKS5 需要确认客户端是否支持并正确处理认证和 DNS;协议差异可进一步参考HTTP/HTTPS/SOCKS5 选择。
如何在环境变量中填写代理认证信息
按“协议 → 主机 → 端口 → 账号/密码 → 环境变量或配置文件”的顺序填写,再检查特殊字符是否需要编码。
先验证终端出口,再运行真实命令
完成配置后先做最小请求,再运行真实 CLI。动态住宅代理 IP 更适合短会话和多地区验证,静态住宅代理 IP 更适合需要地区连续性的长期任务。
| 配置项 | 作用 | 需要确认的内容 | 失败表现 |
|---|---|---|---|
HTTP_PROXY | HTTP 请求代理 | 协议、主机、端口、认证 | 请求未经过代理 |
HTTPS_PROXY | HTTPS 请求代理 | 是否与 CLI 请求类型匹配 | API 连接失败 |
ALL_PROXY | 统一代理入口 | 客户端是否支持 | 变量存在但未生效 |
| SOCKS5 | SOCKS5 接入 | CLI 和请求库是否支持 | 连接拒绝或 DNS 异常 |
Gemini CLI 未走代理时先检查什么
先检查当前终端变量,再检查 CLI 启动方式和请求库协议支持;用最小请求确认出口后,最后执行实际命令。
Gemini CLI 连接失败时如何判断问题所在
先用一个最小请求确认出口 IP、地区和响应状态,再测试真实功能。401/403 优先查 Token、权限和目标服务规则;407 查认证;429 查频率和配额。出现 TLS、连接重置或超时时,可按timeout、connection refused、TLS 错误排查检查 DNS、代理协议、客户端超时和地区路径。连续失败时停止重复请求,保存版本、配置、错误码和复现步骤。
版本前提与协议验证表
用 gemini --version 记录版本,示例针对 PowerShell 7 和 bash;以 Gemini CLI 官方仓库为准。先用 curl.exe -I https://generativelanguage.googleapis.com 验证基础连通,再运行最小 CLI 命令。若错误与地区或服务可用性有关,可继续查看Claude、Gemini 和 Google AI Studio 地区排查。
| 协议 | 客户端前提 | 验证命令 |
|---|---|---|
| HTTP/HTTPS | 读取 HTTP_PROXY、HTTPS_PROXY | curl.exe -I https://generativelanguage.googleapis.com |
| SOCKS5 | 明确支持 SOCKS5 和认证 | curl.exe --socks5-hostname user:pass@proxy.example:1080 -I https://generativelanguage.googleapis.com |
FAQ
1. Gemini CLI 是否支持所有代理环境变量?
不一定。应以 CLI 版本及其底层请求库的支持情况为准,并用最小请求验证。
2. 为什么系统代理生效,但 Gemini CLI 没有走代理?
CLI 可能没有继承系统代理,需要在启动它的终端中单独检查环境变量。
3. SOCKS5 代理需要额外确认什么?
需要确认 CLI、请求库、认证方式以及 DNS 处理方式都支持 SOCKS5。
4. Gemini CLI 适合长期保持同一出口吗?
如果任务依赖持续登录状态,应评估静态住宅代理 IP;短时测试和多地区访问可考虑动态住宅代理 IP。
