跳到正文

Codex CLI 代理怎么设置

OpenAI Codex CLI 是在终端里直接写代码的工具,会向 OpenAI 发请求。如果你所在的网络需要代理,可以通过环境变量让 Codex CLI 使用它。下面讲要设哪些变量、怎么长期生效、怎么查出口 IP,以及常见错误怎么处理。

代理相关的主要环境变量

命令行工具通常会读取标准的代理环境变量;请查阅你所用版本 Codex CLI 的文档,确认它具体使用哪些变量。实际操作中,通常只需要设置两个变量——HTTPS_PROXY 和 NO_PROXY。

HTTPS_PROXY 用于指定 HTTPS 请求的代理地址(OpenAI API 正是通过 HTTPS 协议工作的)。值的格式为 http://host:port。Codex CLI 不支持 SOCKS5 代理,请使用 HTTP 协议的 IP(Proxy302 为 2222 端口)。如果代理需要身份验证,代理的账号和密码(即 USERNAME 和 PASSWORD)可以直接嵌入到 URL 中:http://username:password@host:port。

HTTP_PROXY 用于普通的 HTTP 请求。大多数情况下,只需要设置 HTTPS_PROXY 就足够了;但如果同时设置了这两个变量,每个变量会分别应用于对应类型的请求。

ALL_PROXY 作为通用备用选项:如果某个具体协议的环境变量未设置,则会使用 ALL_PROXY。当你只有一个代理用于处理所有流量时,这个选项很方便。

NO_PROXY(或 no_proxy)是一个主机和域名列表,用于指定哪些地址需要直接连接,不经过代理。标准值为:localhost,127.0.0.1。如果你有内部服务或企业网络域名,可以将其添加到此列表中,用逗号分隔。

在 macOS 和 Linux 上配置

要在当前终端会话中进行临时配置,请使用 export 命令:

在 macOS 和 Linux 上配置:示例

export HTTPS_PROXY="http://username:password@proxy-host:port"
export NO_PROXY="localhost,127.0.0.1"

仅为示例:请把占位内容换成你自己的值。

在 macOS 和 Linux 上配置(续)

要让配置永久生效,请将 export 行添加到你所使用的 Shell 的配置文件中。对于 Bash,文件是 ~/.bash_profile 或 ~/.bashrc;对于 Zsh,文件是 ~/.zshrc。保存文件后,请重新启动终端,或执行 source ~/.bashrc 命令。

你可以使用 env | grep -i proxy 命令检查变量是否已成功设置。

在 Windows PowerShell 上配置

在 PowerShell 中,当前会话使用 $env: 语法:

在 Windows PowerShell 上配置:示例

$env:HTTPS_PROXY = "http://username:password@proxy-host:port"
$env:NO_PROXY = "localhost,127.0.0.1"

仅为示例:请把占位内容换成你自己的值。

在 Windows 上用 setx 永久配置

要进行永久配置,请使用 setx 命令,该命令会将变量写入用户注册表:

在 Windows 上用 setx 永久配置:示例

setx HTTPS_PROXY "http://username:password@proxy-host:port"
setx NO_PROXY "localhost,127.0.0.1"

仅为示例:请把占位内容换成你自己的值。

setx 之后:重启和系统级变量

执行 setx 命令后,请重新启动 PowerShell 以使更改生效。对于系统级变量(所有用户均可访问),请以管理员身份运行 PowerShell,并使用 [System.Environment]::SetEnvironmentVariable() 命令。

使用前检查出口 IP 所在国家

发请求之前,先看看代理实际给你的是哪个 IP、在哪个国家,确认流量确实走了代理。最简单的方法是通过代理访问任意 IP 地理定位服务:

使用前检查出口 IP 所在国家:示例

curl -x "http://username:password@proxy-host:port" https://ipinfo.io/json

仅为示例:请把占位内容换成你自己的值。

使用前检查出口 IP 所在国家(续)

返回结果里的 ip 字段就是 OpenAI 看到的出口 IP,country 字段是它所在的国家。如果地址不是你预期的那个,说明流量没走代理,请重新检查变量。

支持的国家列表详见 ChatGPT、Claude 和 Gemini 支持国家指南。

为什么出口 IP 所在国家对于 OpenAI API 很重要

OpenAI 会发布其 API 支持的国家和地区列表。来自不受支持地区的请求会收到状态码 403,错误信息为「Country, region, or territory not supported」。

代理只改变服务看到的网络地址。平台会根据 IP 地址和其他因素自己做访问决定,代理也不会改变 OpenAI 的条款。OpenAI 提示,在支持列表以外的地区使用其服务可能导致账号被封禁或暂停。用 ChatGPT 账号登录时适用 ChatGPT 支持的国家,用 API 密钥时适用 OpenAI API 的支持列表。

在 Proxy302 上给 Codex CLI 用的话,请选 HTTP 协议的 IP(端口 2222);主机地址、代理的账号和密码(即 USERNAME 和 PASSWORD)显示在「我的资产」(控制台里放着你买到的全部代理)页面。

在代理 URL 中进行身份验证

如果代理需要账号和密码,请将其直接嵌入到环境变量的 URL 中:

在代理 URL 中进行身份验证:示例

HTTPS_PROXY=http://username:password@host:port

仅为示例:请把占位内容换成你自己的值。

在代理 URL 中进行身份验证(续)

密码可能包含对 URL 有特殊含义的字符(@、:、/、?、#、%)。这些字符需要进行 URL 编码(也叫百分号编码):@ 转换为 %40,: 转换为 %3A,/ 转换为 %2F,依此类推。例如,如果密码是 my@pass:123,在 URL 中应该显示为 my%40pass%3A123。

常见错误及解决方法

错误 407:需要代理身份验证。代理已收到请求,但未接受凭据。请检查 URL 中的账号和密码是否正确,并确保特殊字符已正确转义。如果问题仍然存在,请联系代理管理员确认其所需的身份验证类型。

证书错误。企业代理替换证书时,在运行 codex login 之前把 CODEX_CA_CERTIFICATE 设为公司根证书的 PEM 文件路径(未设置时 Codex 改读 SSL_CERT_FILE)。

超时。如果请求挂起且无法完成,很可能是代理未配置或地址不正确。请使用 env | grep -i proxy 命令检查变量,确保 URL 中包含协议头(http://),且端口和主机可访问。

错误:「Country, region, or territory not supported」。403 表示 OpenAI 不支持请求所在的地区,代理不会改变这一点。OpenAI 提示,在支持列表以外的地区使用其服务可能导致账号被封禁或暂停。

想给 OpenAI API 配代理,见 OpenAI API 代理配置页面;Claude Code 的设置方法类似,见 Claude Code 代理设置指南。

用 Proxy302 怎么做

静态 ISP 代理很适合这种用法:整个租期内 IP 固定、不会轮换,一个地址可以一直固定给一个账号或一个工具使用。现成的预设和完整设置见 OpenAI API 代理页,产品介绍见静态 ISP 代理页面。

用 Proxy302 怎么做:步骤

  1. 第 1 步

    打开「静态 ISP 代理」页面,选择「地区」「租期」和「数量」,再选「协议」HTTP 或 SOCKS5。协议在购买时确定,之后每个 IP 都固定不变。

  2. 第 2 步

    生成 IP 后,打开「我的资产」,逐一复制各 IP 的 HOST(地址)、PORT(端口)、USERNAME(账号)和 PASSWORD(密码)。「连接工具」页(控制台里教你把代理接到各种软件的页面)里有填好你自己连接信息的现成示例。

  3. 第 3 步

    把这些信息填入要用这个 IP 的浏览器配置文件、软件或手机。

  4. 第 4 步

    通过代理访问 https://ipinfo.io/json,核对返回结果中的 country 字段是否与你选择的地区一致。

  5. 第 5 步

    在中国大陆,先在「连接工具」页打开辅助工具,使用代理期间保持开着。

价格与限制

静态 ISP IP 一天 US$0.50、30 天 US$7.99,约合每天 US$0.27,各国价格相同。库存每天都会变化,以下单页面为准。没有免费试用,最小购买量是 1 个 IP、1 天。换 IP 不能解除限制、撤销封号或提高限额。

常见问题

如何在 macOS 上让代理变量永久生效?

将 export HTTPS_PROXY=... 和 export NO_PROXY=... 行添加到 ~/.zshrc 文件(macOS Catalina 及更新版本)或 ~/.bash_profile 文件中,然后重新启动终端。

Codex CLI 是否支持 SOCKS5?

不支持。Codex CLI 的 HTTPS_PROXY/ALL_PROXY 只接受 http:// 代理,请购买 HTTP 协议的 IP(2222 端口)。

为什么 Codex CLI 在 VS Code 中无法识别代理变量?

扩展用 VS Code 自身的环境启动 Codex。如果变量是在 VS Code 打开后才设置的,请完全退出后重新打开,或在已设置变量的终端里运行 code . 启动;Windows 上用 setx 永久设置后重启 VS Code。

是否需要将代理添加到 OpenAI 的 IP 白名单?

仅当你的组织在 OpenAI 启用了 IP 白名单时才需要。请添加代理的出口 IP(通过代理访问 https://ipinfo.io/json 显示的 IP),而不是代理主机地址;这需要静态 IP,动态出口会变化。

参考资料

5
  1. OpenAI API:支持的国家和地区

    官方文档 · 确认日期:

    2026 年 10 月 24 日读取:在所列国家和地区以外访问或提供 OpenAI 服务,可能导致账号被封禁或暂停。

  2. Codex 文档:身份验证

    官方文档 · 确认日期:

    2026 年 10 月 24 日读取:可用 ChatGPT 账号或 API 密钥登录;在企业 TLS 代理后,登录前把 CODEX_CA_CERTIFICATE 设为 PEM 证书文件,未设置时改读 SSL_CERT_FILE。

  3. Codex 源代码(openai/codex):出站代理处理

    官方文档 · 确认日期:

    2026 年 10 月 23 日提交 39850010 的源代码:HTTP 客户端依次读取 HTTPS_PROXY、ALL_PROXY;socks、socks4、socks5 协议被标为不支持,HTTP 客户端编译时没有开启 SOCKS。

    这是源代码,不是用户文档;不同版本的行为可能变化。

  4. Microsoft Learn:setx

    官方文档 · 确认日期:

    2026 年 10 月 24 日读取:语法为 setx <变量> <值>,中间没有等号。

  5. Proxy302 产品事实与价格表

    产品观察 · 确认日期:

    站点的产品事实表(数值已于 2026 年 10 月 18-19 日对照控制台、后端和价格表核对):产品、美元价格(1 PTC = 1 美元)、租期、协议与端口、国家数、数量上限、没有免费试用。

准备好试试了吗?

注册账号、充值一次,就能选动态住宅、静态 ISP 或数据中心 IP,几分钟配进你的浏览器。