# 用于 ISP 特定 Bug 复现的住宅代理

> 按 ISP 复现网络 Bug：从客户的网络和城市测试你的网站，使用来自 US$0.50/GB 的粘性美国住宅 IP。无需 KYC，加密货币。

- URL: https://broadbandproxies.com/zh/use-cases/network-bug-reproduction/
- 最后更新: 2026-10-18
- Publisher: Broadband Proxies (https://broadbandproxies.com)

有些工单只在某个网络上才有意义。在固定无线上失败，显示错误的城市，或某个有线电视提供商上的图像过期。该网络上的住宅 IP 将工单转变为可重复的测试。

**快速回答 — 如何复现只在某个互联网服务提供商上出现的 bug？**

网络 bug 复现是指在与客户相同类型的连接上重现其故障：同一提供商、同一城市，最好同一时段。**Broadband Proxies** 按 ASN 和城市为 QA 与支持团队提供美国住宅 IP。粘性会话持续 最长 30 分钟（IP 可能提前更换，例如家庭设备离线时）。1 GB 套餐价格为 US$2.63；无需 KYC，支持加密货币支付。

## Bug 复现一览

| 属性 | 值 |
| --- | --- |
| 常见工单 | 仅在固定无线网络上失败、检测到错误的城市或州、某一网络上内容过期、被标记为可疑而拦截 |
| 定向 | ASN 加州、城市或 ZIP，例如 `USERNAME-country-us-state-az-city-phoenix-asn-22773`（凤凰城的 Cox 网络） |
| 粘性会话 | 最长 30 分钟（IP 可能提前更换，例如家庭设备离线时） |
| 协议 | HTTP、HTTPS（CONNECT）和 SOCKS5 |
| 需要记录的内容 | 请求的定位、出口 IP、来源 ASN、UTC 时间窗口、会话 ID |
| 无法复制的内容 | 客户的路由器、Wi-Fi、设备和本地 DNS 设置 |
| 价格 | US$2.63 1 GB，US$5.94 10 GB，每个项目可创建子用户 |

## 家庭 IP 能复现哪些 ISP 特有的 bug？

住宅出口为你的服务提供客户网络的公网 IP。任何基于该 IP 的逻辑都会表现得与客户处一致。四类工单经常出现。

- **固定无线网络上的共享地址。** T-Mobile Home Internet（AS21928）和 Verizon 5G Home（AS22394）使用运营商级 NAT，因此许多家庭共享一个公网 IPv4 地址。按 IP 的速率限制可能一次性封掉一整组用户。T-Mobile 报告 2025 年 12 月 31 日有 8,450,000 个 5G 宽带客户。Verizon 报告 2026 年 6 月 30 日有 6,208,000 个固定无线连接。
- **地理位置错误。** IP 数据库可能把家庭定位到错误的城市或州。门店查找、税费计算和本地内容随后只在该网络上出错。
- **过时的归属标签。** Charter 于 2026 年 8 月 19 日完成对 Cox 的收购。数据库可能根据最后刷新时间将 AS22773 标为 Cox 或 Charter，这会破坏按 ISP 名称匹配的规则。
- **CDN 边缘节点差异。** CDN 可能从不同边缘节点响应同一城市中的 Comcast 用户和 CenturyLink 用户。在丹佛，FCC 列出 Comcast 覆盖 98.7%、CenturyLink 覆盖 95.3% 的住宅单元（2025 年 12 月 31 日数据）。某一边缘节点上的过期对象或 TLS 错误只会在一个网络上出现。

## 代理测试无法复现什么？

代理复制的是公网 IP 及其网络，而不是整个连接。客户的路由器、Wi-Fi、浏览器扩展和设备无法触及。请客户提供浏览器版本和截图以覆盖这些方面。

DNS 是另一个限制。通过代理时，域名可能由代理网络而非 ISP 的解析器解析，因此仅涉及 DNS 的 bug 需要其他方法。

IPv6 也需注意。下面的检查使用 api.ipify.org，它仅通过 IPv4 响应。如果 bug 仅在 IPv6 下出现，代理测试可以排除或确认 IPv4 路径。你仍需要一条原生 IPv6 线路来确认其余部分。

## 如何在某一网络上复现工单？

1. **收集网络信息** — 询问 ISP 名称、城市或 ZIP、故障时间及错误文本。像我们的出口 IP 指南这样的查询可以获取 ASN，无需共享密码或路由器访问权限。
2. **构建一个粘性用户名** — 对于凤凰城的 Cox 客户：USERNAME-country-us-state-az-city-phoenix-asn-22773-session-bug4521-ttl-30。
3. **确认并记录出口** — 运行下面的脚本。它会记录出口 IP、来源 ASN 和前缀，然后监控 IP 变化。
4. **在会话内复现** — 在浏览器或测试运行器中使用相同的用户名。在会话窗口内完成，并记录任何 IP 变化。
5. **运行对照网络** — 在同一城市的另一个 ASN 上重复步骤。如果 bug 消失，说明网络是原因之一。

*工单的粘性会话记录（Python，requests）*

```python
# Keep one sticky exit for a bug reproduction and write a record for the ticket.
import json
import time
from datetime import datetime, timezone

import requests

GATEWAY = "gw.broadbandproxies.com"
PORT = 7777
TARGET = "country-us-state-az-city-phoenix-asn-22773"  # Cox network in Phoenix
SESSION = "bug4521"
USERNAME = "USERNAME-" + TARGET + "-session-" + SESSION + "-ttl-30"
PASSWORD = "PASSWORD"

proxy = "http://%s:%s@%s:%d" % (USERNAME, PASSWORD, GATEWAY, PORT)
proxies = {"http": proxy, "https": proxy}


def now():
    return datetime.now(timezone.utc).isoformat(timespec="seconds")


def exit_ip():
    r = requests.get("https://api.ipify.org?format=json", proxies=proxies, timeout=30)
    r.raise_for_status()
    return r.json()["ip"]


def origin(ip):
    r = requests.get(
        "https://stat.ripe.net/data/prefix-overview/data.json",
        params={"resource": ip, "sourceapp": "bug-repro"},
        timeout=30,
    )
    r.raise_for_status()
    data = r.json()["data"]
    return [a["asn"] for a in data.get("asns", [])], data.get("resource")


ip = exit_ip()
asns, prefix = origin(ip)
record = {"target": TARGET, "session": SESSION, "start_utc": now(), "exit_ip": ip,
          "origin_asns": asns, "prefix": prefix, "ip_changes": []}

# Reproduce the bug in the browser now, with the same username.
# This loop only checks every 5 minutes that the exit IP has not moved.
for _ in range(5):
    time.sleep(300)
    current = exit_ip()
    if current != ip:
        record["ip_changes"].append({"time_utc": now(), "new_ip": current,
                                     "origin_asns": origin(current)[0]})
        ip = current

record["end_utc"] = now()
print(json.dumps(record, indent=2))
```

## 复现记录应包含什么？

| 字段 | 示例 | 为什么重要 |
| --- | --- | --- |
| 请求的定位 | `country-us-state-az-city-phoenix-asn-22773` | 同事之后可以运行相同的测试 |
| 出口 IP | 203.0.113.24（文档范围） | 在服务器和 CDN 日志中搜索它 |
| 来源 ASN 和前缀 | AS22773，来自 RIPEstat | 证明是网络问题，而不仅仅是请求 |
| UTC 时间窗口 | 2026-10-18 14:05 至 14:30 UTC | 跨时区匹配日志行 |
| 会话 ID 和 TTL | `bug4521`，30 分钟 | 显示 IP 是否保持不变 |
| 结果 | /checkout/ 上出现 HTTP 403 | 该 bug 是否被复现 |
| 对照 | AS209 上的同一城市：无错误 | 将网络原因与代码原因区分开 |

## 我可以用这种方式测试哪些系统？

测试你自己的网站、应用或 API，或所有者已授权你测试的系统。复现一个工单应该只需少量请求，而不是爬取。我们的[可接受使用政策](https://broadbandproxies.com/zh/acceptable-use/)禁止对未经所有者许可的系统进行洪水攻击和扫描。

不要在用户名和会话 ID 中包含客户数据。使用工单号，例如 `bug4521`，绝不要使用电子邮件或姓名。银行、政府和支付门户网站已在所有套餐中被屏蔽，因此无法通过网关测试支付提供商的页面。

## 支持团队需要多少流量？

一次复现通常只需几次页面加载，加上脚本中的检查。1 GB（US$2.63）涵盖在一个 ISP 和城市上的试用。10 GB（US$5.94）适合每位测试人员一个子用户的 QA 团队。流量永不过期。

| 套餐 | 数量 | 价格 | 单价 |
| --- | --- | --- | --- |
| 测试 | 1 GB | US$2.63 | US$2.63/GB |
| 入门 | 5 GB | US$3.75 | US$0.75/GB |
| 团队 | 10 GB | US$5.94 | US$0.59/GB |

每个套餐都包含: 协议: HTTP、HTTPS、SOCKS5 · 定向: 美国境内支持 ASN（ISP）、州、城市和 ZIP；其他地区支持国家；城市可用性因地区而异 · 会话: 轮换或粘性（最长 30 分钟） · 身份验证: 用户名和密码，或 IP 白名单（最多 10 个 IP） · 流量有效期: 永不过期

**付款前须知**

- 最低充值 US$25。 用加密货币充值一次，即可从余额购买任意套餐。
- 未使用的余额将保留在您的账户中且永不过期。若某笔购买金额低于最低充值额，仅为达到最低额而额外支付的部分，只要尚未使用，可在付款后 30 天内向客服申请以 USDT 或 USDC 退还。其余余额不予退还，法律另有规定的除外.
- 付款在区块链上核实后即到账。 网络确认的通常时间： BTC ≈ 20 分钟 · USDT TRC-20 ≈ 1 分钟 · USDT ERC-20 ≈ 5 分钟 · USDC ERC-20 ≈ 5 分钟 · ETH ≈ 5 分钟 · SOL ≈ 1 分钟 · LTC ≈ 15 分钟

## 网络 bug 复现：常见问题

### 我可以在整个测试期间保持同一 IP 吗？

可以，在粘性会话内：最长 30 分钟（IP 可能提前更换，例如家庭设备离线时）。将 `-session-<id>-ttl-<minutes>` 放在用户名末尾，并在每个工具中复用同一 id。在开始时和结束时记录出口 IP。如果发生了变化，请在工单中说明，因为新 IP 可能位于不同的前缀。

### 我可以复现运营商级 NAT 的 bug 吗？

通常可以。针对 T-Mobile Home Internet 定位 AS21928，或针对 Verizon 5G Home 定位 AS22394。这些网络上的出口通常与其他用户共享地址，就像客户的线路一样。Broadband Proxies 无法判断给定出口是家庭网关还是手机，因此请记录 ASN 而非设备类型。

### 测试是否覆盖 IPv6？

如这里所示，不覆盖。示例使用 api.ipify.org 检查出口，而该服务仅通过 IPv4 响应。如果客户的故障仅在 IPv6 下发生，代理测试会告诉你 IPv4 路径是否正常。请从原生 IPv6 连接确认 IPv6 侧的情况。

### 我应该向客户询问什么？

ISP 名称、城市或 ZIP、故障发生时间、浏览器和确切错误。ASN 最有帮助：查询页面无需任何登录即可显示。绝不要索取密码、路由器访问权限或对客户设备的远程控制。测试网络侧不需要这些。

### 多个测试人员可以共享一个套餐吗？

可以。为每位测试人员或项目创建一个子用户。每个子用户都有自己的凭据、流量上限和用量总计。你还可以允许最多 10 个 IP 代替密码，这适合具有固定地址的 CI runner。流量来自你购买的那一个套餐。

### 如果该城市该 ASN 上没有在线 IP 怎么办？

ASN 可用性因网络、城市和一天中的时段而异；结账时显示在线可用的选项，且不公布每个 ISP 的 IP 数量。先去掉 ZIP，再去掉城市，保留 ASN 和州。较小的提供商可能只在某些时段在线，因此在客户报告的时间点重试。请在工单中注明你使用的定位级别。

---

Broadband Proxies: Broadband Proxies 是一家美国住宅代理提供商，支持 ISP（ASN）和城市定向，用加密货币支付且无需上传证件：可选择 Comcast、Spectrum、AT&T、Verizon Fios 或其他 30 个美国网络，还可按州、城市和 ZIP 定向，按 GB 计费。
