静态住宅代理可让浏览器或应用通过一个相对稳定、与 ISP 网络相关联的出口 IP 访问网络。可靠的最短流程是:复制五项连接参数、配置一个客户端、向 IP 查询接口发送请求,并通过多次检查确认返回预期的同一出口。下面的命令均使用占位符,只需替换成自己的连接参数。
配置前需要记录的参数
在 MIYAIP 后台打开已购买的静态代理记录,找到协议、主机、端口、用户名、密码、目标地区和到期时间。即使导出记录采用冒号分隔格式,客户端也可能要求分别填写各字段。
字段 | 读取位置 | 使用前检查 |
|---|---|---|
协议 | 已购买代理记录 | 严格使用页面显示的 HTTP 或 SOCKS5 |
主机和端口 | 连接端点 | 不要把代理端口与本地转发端口混淆 |
用户名和密码 | 认证字段 | 复制时不要带空格,并把两项都视为密钥 |
国家或州 | 分配详情 | 与工作负载所需地区核对 |
到期时间 | 套餐详情 | 排查客户端前先确认代理仍有效 |
从配置到请求与验证
1. 确认代理分配和客户端要求
选择与已授权任务匹配的地区,确认客户端支持 HTTP、SOCKS5 或两者,并支持用户名和密码认证。记录套餐到期时间,避免日后把过期误判成网络故障。
2. 复制连接参数
从已购买的代理记录中复制每个字段。如果后台导出为一行,请按以下顺序读取,且不要把真实值提交到仓库。
PROXY_HOST:PROXY_PORT:PROXY_USER:PROXY_PASSWORD
MIYAIP 后台中的连接字段;完整代理格式、代理域名、IP 地址、端口、用户名、密码和出口 IP 均已脱敏。 3. 把参数保存在脚本之外
在当前 Shell 中设置环境变量,或从密钥管理工具加载。本文后续命令使用以下变量名。
export PROXY_SCHEME="http" export PROXY_HOST="YOUR_PROXY_HOST" export PROXY_PORT="YOUR_PROXY_PORT" export PROXY_USER="YOUR_PROXY_USER" export PROXY_PASSWORD="YOUR_PROXY_PASSWORD"在 PowerShell 中使用 $env:PROXY_HOST 等同名变量。测试结束后清除当前 Shell 中的值。
4. 记录直连 IP 作为基线
先在不使用代理的情况下查询 IP。它是后续证明请求确实经过代理线路的对照值。
curl --fail --show-error --silent https://api.ipify.org5. 使用 curl 通过代理发送请求
根据购买记录选择对应命令。--proxy-user 将凭据与代理端点分开;curl 中的 socks5h 会通过 SOCKS5 代理解析目标域名。
curl --fail --show-error --silent \ --proxy "http://${PROXY_HOST}:${PROXY_PORT}" \ --proxy-user "${PROXY_USER}:${PROXY_PASSWORD}" \ https://api.ipify.orgcurl --fail --show-error --silent \ --proxy "socks5://${PROXY_HOST}:${PROXY_PORT}" \ --proxy-user "${PROXY_USER}:${PROXY_PASSWORD}" \ https://api.ipify.orgcurl --fail --show-error --silent \ --proxy "socks5h://${PROXY_HOST}:${PROXY_PORT}" \ --proxy-user "${PROXY_USER}:${PROXY_PASSWORD}" \ https://api.ipify.orgWindows PowerShell 如果把 curl 映射为其他命令,请显式调用 curl.exe。
6. 配置浏览器或支持代理的客户端
新建隔离的浏览器配置文件,选择相同协议,并把主机、端口、用户名和密码分别填入对应字段。首次验证时停用其他 VPN 或系统代理,先运行客户端自带的代理检查,再打开获准使用的 IP 查询页面并与购买记录核对。
7. 使用 Python 验证
先安装带 SOCKS 支持的 requests,再运行下方脚本。HTTP 使用 requests 默认传输即可;socks5h 需要此安装命令包含的 PySocks 扩展。
python -m pip install "requests[socks]==2.*"from datetime import datetime, timezone import os import sys import time from urllib.parse import quote import requests required = ["PROXY_HOST", "PROXY_PORT", "PROXY_USER", "PROXY_PASSWORD"] missing = [name for name in required if not os.getenv(name)] if missing: raise SystemExit(f"Missing environment variables: {', '.join(missing)}") scheme = os.getenv("PROXY_SCHEME", "http").lower() if scheme not in {"http", "socks5h"}: raise SystemExit("PROXY_SCHEME must be http or socks5h") user = quote(os.environ["PROXY_USER"], safe="") password = quote(os.environ["PROXY_PASSWORD"], safe="") host = os.environ["PROXY_HOST"] port = os.environ["PROXY_PORT"] proxy_url = f"{scheme}://{user}:{password}@{host}:{port}" proxies = {"http": proxy_url, "https": proxy_url} endpoint = os.getenv("IP_CHECK_URL", "https://api.ipify.org?format=json") interval = int(os.getenv("VERIFY_INTERVAL_SECONDS", "30")) def get_ip(proxy_config=None): with requests.Session() as session: session.trust_env = False response = session.get(endpoint, proxies=proxy_config, timeout=20) response.raise_for_status() return response.status_code, response.json()["ip"] print(f"verified_at_utc={datetime.now(timezone.utc).isoformat()}") print(f"client=Python {sys.version.split()[0]}, requests {requests.__version__}") direct_ip = "unavailable" try: direct_status, direct_ip = get_ip() print(f"direct_status={direct_status}") except requests.RequestException as error: print(f"direct_check_failed={type(error).__name__}", file=sys.stderr) print(f"direct_ip={direct_ip}") try: exits = [] for attempt in range(3): status, exit_ip = get_ip(proxies) exits.append(exit_ip) print(f"t+{attempt * interval}s status={status} exit_ip={exit_ip}") if attempt < 2: time.sleep(interval) print(f"same_exit={len(set(exits)) == 1}") differs = "unavailable" if direct_ip == "unavailable" else direct_ip != exits[0] print(f"direct_differs_from_exit={differs}") except requests.RequestException as error: print(f"proxy_check_failed={type(error).__name__}", file=sys.stderr) raise SystemExit(1)8. 判断多次检查结果
直连 IP 应与代理出口不同;在有效套餐期间,三次代理检查通常应返回已分配的静态出口。如果 same_exit 为 false,先排除其他代理或 VPN,再与后台当前记录核对,并向服务商确认是否发生运行替换。
真实验证输出(已脱敏)
curl 是一组独立的历史验证:于 2026-09-05T08:46:06Z 使用 curl 8.16.0,通过 http、socks5 和 socks5h 均返回 HTTP 200,直连与 HTTP 代理出口不同。上方 Python 示例于 2026-10-01T06:27:18.086644+00:00 在 Windows 11、Python 3.13.5、requests 2.32.4 环境中,使用后台现有 US/CA 静态代理完整执行。直连及三次 HTTP 代理请求均返回 200,三次代理出口一致且与直连出口不同。两组记录的凭据与地址均已脱敏。
真实验证输出(已脱敏)
curl_verified_at_utc=2026-09-05T08:46:06Z
curl=8.16.0
curl_http_status=200
curl_socks5_status=200
curl_socks5h_status=200
curl_direct_and_http_exit_differed=true
python_verified_at_utc=2026-10-01T06:27:18.086644+00:00
operating_system=Windows 11
client=Python 3.13.5, requests 2.32.4
proxy_scheme=http
proxy_endpoint=PROXY_HOST_REDACTED:PROXY_PORT_REDACTED
requested_location=US / CA (dashboard allocation, not a geolocation measurement)
wait_between_proxy_requests_seconds=30
direct_status=200
direct_ip=IP_REDACTED_1
t+0s status=200 exit_ip=IP_REDACTED_2
t+30s status=200 exit_ip=IP_REDACTED_2
t+60s status=200 exit_ip=IP_REDACTED_2
same_exit=True
direct_differs_from_exit=True
proxy_request_elapsed_seconds=1.698,32.795,63.891
proxy_series_completed=true三次 Python 代理检查分别创建新的 Requests 会话,请求之间等待 30 秒。Session.trust_env=False 避免直连基线和代理检查继承环境代理设置;访问 HTTPS 目标时使用该套餐的 HTTP 代理端点。结果验证了这条代理在本次时间窗口内的表现,不能据此推断长期可用性,也没有独立验证后台所示地区。复测时应保留 UTC 时间、操作系统、实际客户端版本、协议、脱敏端点、间隔、状态码及出口比较,绝不能保留凭据。
按症状排查
症状 | 准确检查项 | 下一步 |
|---|---|---|
407 Proxy Authentication Required | 重新复制用户名和密码;检查字段顺序、套餐状态和 IP 白名单;使用 --proxy-user 重试 | 必要时重置凭据;向客服仅提供 UTC 时间和脱敏错误 |
连接超时 | 核对协议、主机和端口;检查 DNS 与出站防火墙;停用冲突 VPN;使用 curl --connect-timeout 10 --max-time 30 | 尝试服务商推荐网关,再提交不含凭据的时间与目标信息 |
代理请求仍返回直连 IP | 在同一 Shell 分别运行直连和代理命令;添加 curl -v 确认连接的是代理主机;检查系统代理优先级 | 先修正选中的浏览器配置或路由,再测试目标页面 |
国家或州不匹配 | 用两个获准的 IP 数据库对照后台分配;确认所选地区,并区分国家级与州级结果 | 定位属于估计值;如果偏差影响已授权任务,申请复核或替换 |
常见问题
应该选择 HTTP 还是 SOCKS5?
选择已购买端点和客户端共同支持的协议。HTTP 足以处理浏览器和 Web 请求;SOCKS5 更通用,curl 中的 socks5h 还能通过代理解析目标域名。
为什么出口 IP 与购买记录不一致?
先检查网关、协议、端口、认证格式、本地转发规则和 VPN。确认代理线路无误后,再与后台当前记录比较,因为服务商可能因运行原因替换分配。
静态住宅 IP 会永久不变吗?
不会。它在有效分配期间通常保持稳定,但可能到期或按服务商政策替换。重要的已授权流程开始前,应检查到期时间并再次验证出口。
一个代理可以共享给多个环境吗?
应先检查服务商的并发与使用规则。即使技术上可复用,也应隔离无关环境和凭据。
从一个已验证的静态 IP 开始
先配置一个端点,验证出口 IP 和地区,并运行小规模、已获授权的任务,确认稳定后再扩展到更多浏览器环境或应用。
