五分钟跑通第一个请求
从控制台拿到凭据,用 curl 发一个请求,确认出口 IP 已经变成目标地区。
这一篇的目标只有一个:确认凭据是通的、出口 IP 真的变了。参数怎么组、地区怎么选、错误怎么查,都在后面各自的篇里。
先拿到四个值
在控制台的 代理生成器 里创建一个代理账号,会拿到用户名和密码;网关地址和端口显示在同一页。
| 值 | 哪里拿 | 说明 |
|---|---|---|
GATEWAY_HOST | 控制台 · 代理生成器 | 按机房给出,可能有多个,选延迟低的 |
| 端口 | 控制台 · 代理生成器 | 默认 58971,HTTP 与 SOCKS5 共用这一个端口 |
| 用户名 | 创建代理账号时生成 | 地区和会话参数拼在它后面 |
| 密码 | 创建代理账号时生成 | 只作认证用,不承载参数 |
发一个最短的请求
先不要带任何地区参数,用最短的形式确认凭据本身是通的。返回的 IP 就是你这次的出口。
curl -x http://USERNAME:PASSWORD@GATEWAY_HOST:58971 \
https://api.ipify.org?format=json
拿到一个 JSON 里的 IP,就说明认证、路由、计费这条链路全部通了。
再指定一个国家
地区参数拼在用户名后面,不是单独的请求头,也不在密码里。下面这条要求出口落在美国,并且十分钟内保持同一个 IP。
curl -x 'http://USERNAME-country-US-session-demo1-time-10:PASSWORD@GATEWAY_HOST:58971' \
https://api.ipify.org?format=json
三件事现在就值得记住,它们是新手最常踩的:
country必须是两位大写字母。写us会被拒,不是被忽略。session和time必须成对出现。只给一个会被拒。- 参数必须按固定顺序排列,顺序是
country → state/region → city → asn → os → session → time。乱序是拒绝,不是忽略。
完整的参数清单和转义规则看 用户名参数完整参考。
同一个端口也是 SOCKS5
不用换端口。网关按 TCP 首字节判断协议:0x05 走 SOCKS5,否则按 HTTP 解析。
curl -x 'socks5h://USERNAME-country-JP:PASSWORD@GATEWAY_HOST:58971' \
https://api.ipify.org?format=json