网络代理
在代理或受限网络环境下使用 Tron
概述
在企业内网或特殊网络环境中,直接访问 AI API 可能受到限制。Tron 支持通过多种方式配置网络代理,确保在受限环境下正常工作。
注意
企业防火墙可能需要配置 SSL 检查例外,否则即使配置了代理也可能出现证书错误。请联系你的网络管理员获取具体配置方法。
HTTP/HTTPS 代理
Tron 遵循标准的代理环境变量规范。你可以通过设置 HTTP_PROXY 和 HTTPS_PROXY 环境变量来配置代理:
export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=http://proxy.example.com:8080
如果代理需要身份验证,可以在 URL 中包含用户名和密码:
export HTTPS_PROXY=http://username:password@proxy.example.com:8080
如需永久生效,将上述命令添加到 ~/.bashrc 或 ~/.zshrc 文件中。
排除地址
使用 NO_PROXY 环境变量可以指定不需要经过代理的域名或 IP 地址,多个地址用逗号分隔:
export NO_PROXY=localhost,127.0.0.1,internal.company.com
也支持通配符形式排除整个域名后缀,例如 *.company.com。
自定义证书
在企业内网环境中,代理服务器可能使用自签名的 SSL 证书。你可以通过 NODE_EXTRA_CA_CERTS 环境变量指定额外的 CA 证书文件路径:
export NODE_EXTRA_CA_CERTS=/path/to/company-ca.crt
证书文件需要是 PEM 格式。如果有多个证书,可以将它们合并到同一个文件中。
配置文件方式
除了环境变量,也可以在 Tron 的配置文件 ~/.config/tron/config.json 中设置代理:
json
{
"proxy": {
"url": "http://proxy.example.com:8080",
"noProxy": ["localhost", "127.0.0.1", "*.internal.com"],
"caCert": "/path/to/company-ca.crt"
}
}
配置文件中的代理设置优先级低于环境变量,适合作为默认配置。
连接测试
配置完代理后,使用 tron --check 命令验证网络连接是否正常:
tron --check
正在检测网络连接...
✓ 代理连接正常 (http://proxy.example.com:8080)
✓ API 端点可达 (platform.troncode.cn)
✓ 网络配置验证通过
常见错误说明:
- ECONNREFUSED:代理地址或端口不正确,请检查
HTTPS_PROXY配置 - CERT_HAS_EXPIRED / UNABLE_TO_VERIFY_LEAF_SIGNATURE:SSL 证书问题,需配置
NODE_EXTRA_CA_CERTS - 407 Proxy Authentication Required:代理需要身份验证,在代理 URL 中添加用户名密码
- ETIMEDOUT:连接超时,检查防火墙规则或代理地址是否可达