Dùng thử
1 GB
2,63 US$
2,63 US$/GB
- Kiểm tra một ISP ở một thành phố trước
- Nhắm mục tiêu theo ASN, bang, thành phố và ZIP
- HTTP, HTTPS, SOCKS5
Trường hợp sử dụng · QA và hỗ trợ
Một số ticket chỉ có ý nghĩa trên một mạng. Nó lỗi trên mạng không dây cố định, hiện sai thành phố, hoặc một hình ảnh bị cũ trên một nhà cung cấp cáp. Một IP gia đình trên mạng đó biến ticket thành bài kiểm thử bạn có thể lặp lại.
Trả lời nhanh
Làm thế nào để tôi tái hiện một lỗi chỉ xảy ra trên một nhà cung cấp internet?
Tái hiện lỗi mạng nghĩa là lặp lại sự cố của khách hàng từ cùng loại kết nối: cùng nhà cung cấp, cùng thành phố, lý tưởng nhất là cùng giờ. Broadband Proxies cung cấp cho đội QA và hỗ trợ IP nhà tại Mỹ theo ASN và thành phố. Phiên sticky kéo dài tối đa 30 phút (IP có thể thay đổi sớm hơn, ví dụ nếu thiết bị gia đình mất kết nối). Gói 1 GB có giá 2,63 US$; không cần KYC và thanh toán bằng crypto.
| Các ticket điển hình | Chỉ lỗi trên fixed wireless, nhận diện sai thành phố hoặc bang, nội dung cũ trên một mạng, bị chặn là đáng ngờ |
|---|---|
| Nhắm mục tiêu | ASN cộng bang, thành phố hoặc ZIP, ví dụ USERNAME-country-us-state-az-city-phoenix-asn-22773 (mạng Cox ở Phoenix) |
| Phiên sticky | tối đa 30 phút (IP có thể thay đổi sớm hơn, ví dụ nếu thiết bị gia đình mất kết nối) |
| Giao thức | HTTP, HTTPS (CONNECT) và SOCKS5 |
| Cần ghi log gì | Targeting đã yêu cầu, IP thoát, ASN gốc, khung giờ UTC, id phiên |
| Điều nó không thể sao chép | Router, Wi-Fi, thiết bị và cài đặt DNS cục bộ của khách hàng |
| Giá | 2,63 US$ cho 1 GB, 5,94 US$ cho 10 GB, sub-user theo dự án |
Một IP thoát dân cư cho dịch vụ của bạn IP công cộng của mạng khách hàng. Mọi logic dựa trên IP đó sẽ hoạt động đúng như với khách hàng. Bốn loại ticket thường gặp.
Proxy sao chép IP công cộng và mạng của nó, không phải toàn bộ kết nối. Router, Wi-Fi, tiện ích trình duyệt và thiết bị của khách hàng nằm ngoài tầm với. Hãy yêu cầu phiên bản trình duyệt và ảnh chụp màn hình để bù đắp những phần đó.
DNS là một giới hạn khác. Qua proxy, tên có thể được phân giải bởi mạng proxy thay vì resolver của ISP, nên lỗi chỉ liên quan DNS cần một phương pháp khác.
IPv6 cũng cần lưu ý. Đoạn kiểm tra bên dưới dùng api.ipify.org, chỉ trả lời qua IPv4. Nếu lỗi chỉ xuất hiện qua IPv6, bài test proxy có thể loại trừ hoặc xác nhận đường IPv4. Bạn vẫn cần một đường IPv6 gốc để xác nhận phần còn lại.
Thu thập thông tin về mạng
Hỏi tên ISP, thành phố hoặc ZIP, thời điểm lỗi và nội dung lỗi. Một tra cứu như hướng dẫn IP thoát của chúng tôi cho ra ASN mà không cần chia sẻ mật khẩu hay quyền truy cập router.
Tạo username cố định (sticky)
Với khách hàng Cox ở Phoenix: USERNAME-country-us-state-az-city-phoenix-asn-22773-session-bug4521-ttl-30.
Xác nhận và ghi log IP thoát
Chạy script bên dưới. Nó ghi lại IP thoát, ASN gốc và prefix, sau đó theo dõi thay đổi IP.
Tái hiện trong phiên
Dùng cùng username trong trình duyệt hoặc test runner. Hoàn thành trong cửa sổ phiên, và ghi chú mọi thay đổi IP.
Chạy một mạng đối chứng
Lặp lại các bước trên một ASN khác trong cùng thành phố. Nếu lỗi biến mất, mạng là một phần nguyên nhân.
# 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))| Trường | Ví dụ | Vì sao điều đó quan trọng |
|---|---|---|
| Targeting đã yêu cầu | country-us-state-az-city-phoenix-asn-22773 | Đồng nghiệp có thể chạy lại cùng bài test sau này |
| IP thoát | 203.0.113.24 (dải tài liệu) | Tìm trong log server và CDN của bạn |
| ASN gốc và prefix | AS22773, từ RIPEstat | Chứng minh mạng, không chỉ yêu cầu |
| Khung giờ UTC | 2026-10-18 14:05 đến 14:30 UTC | Khớp các dòng log giữa các múi giờ |
| Id phiên và TTL | bug4521, 30 phút | Hiển thị IP có giữ nguyên hay không |
| Kết quả | HTTP 403 trên /checkout/ | Lỗi, tái hiện được hay không |
| Đối chứng | Cùng thành phố trên AS209: không lỗi | Tách nguyên nhân do mạng khỏi nguyên nhân do mã |
Kiểm thử trang web, ứng dụng hoặc API của chính bạn, hoặc hệ thống mà chủ sở hữu đã yêu cầu bạn kiểm thử. Việc tái hiện một ticket thường chỉ cần vài request chứ không phải cả một đợt crawl. Chính sách sử dụng hợp lý của chúng tôi cấm việc dội request và quét các hệ thống khi chưa có sự cho phép của chủ sở hữu.
Không đưa dữ liệu khách hàng vào username hay session id. Hãy dùng mã ticket như bug4521, tuyệt đối không dùng email hay tên. Các trang ngân hàng, chính phủ và cổng thanh toán bị chặn trên mọi gói, nên không thể kiểm thử trang của bên cung cấp thanh toán qua gateway.
Một lần tái hiện thường chỉ gồm vài lần tải trang cộng với các bước kiểm tra trong script. 1 GB (2,63 US$) đủ cho một lần dùng thử trên một ISP và thành phố. 10 GB (5,94 US$) phù hợp cho đội QA với mỗi tester một sub-user. Lưu lượng không bao giờ hết hạn.
1 GB
2,63 US$
2,63 US$/GB
5 GB
3,75 US$
0,75 US$/GB
10 GB
5,94 US$
0,59 US$/GB
Trong mọi gói: Giao thức: HTTP, HTTPS, SOCKS5 · Nhắm mục tiêu: ASN (ISP), tiểu bang, thành phố và ZIP tại Mỹ; quốc gia ở nơi khác; độ khả dụng theo thành phố có thể khác nhau · Phiên: Xoay hoặc cố định (tối đa 30 phút) · Xác thực: Tên đăng nhập và mật khẩu, hoặc danh sách IP được phép (tối đa 10 IP) · Hạn dùng lưu lượng: Không bao giờ hết hạn
Có, trong một phiên sticky: tối đa 30 phút (IP có thể thay đổi sớm hơn, ví dụ nếu thiết bị gia đình mất kết nối). Thêm -session-<id>-ttl-<minutes> vào cuối username và dùng lại cùng id đó trong mọi công cụ. Ghi lại IP đầu ra lúc bắt đầu và lúc kết thúc. Nếu IP đã thay đổi, hãy ghi rõ trong ticket, vì IP mới có thể nằm trên một prefix khác.
Thường là có. Nhắm tới AS21928 cho T-Mobile Home Internet hoặc AS22394 cho Verizon 5G Home. Các IP đầu ra trên những mạng đó thường dùng chung địa chỉ với người dùng khác, giống như đường mạng của khách hàng. Broadband Proxies không thể cho biết một IP đầu ra cụ thể là gateway tại nhà hay điện thoại, nên hãy ghi ASN thay vì loại thiết bị.
Không, như ví dụ ở đây. Ví dụ kiểm tra IP đầu ra bằng api.ipify.org, mà dịch vụ này chỉ trả lời qua IPv4. Nếu lỗi của khách hàng chỉ xảy ra qua IPv6, bài test proxy cho bạn biết đường IPv4 có ổn hay không. Hãy xác nhận phía IPv6 từ một kết nối IPv6 gốc.
Tên ISP, thành phố hoặc ZIP, thời điểm lỗi, trình duyệt và thông báo lỗi chính xác. ASN là hữu ích nhất: một trang tra cứu sẽ hiển thị nó mà không cần đăng nhập. Tuyệt đối không hỏi mật khẩu, quyền truy cập router hay điều khiển từ xa thiết bị của khách hàng. Những thứ đó không cần thiết để kiểm thử phía mạng.
Có. Tạo một sub-user cho mỗi tester hoặc mỗi dự án. Mỗi sub-user có thông tin đăng nhập, hạn mức lưu lượng và tổng mức sử dụng riêng. Bạn cũng có thể cho phép tối đa 10 IP thay vì dùng mật khẩu, phù hợp với các CI runner có địa chỉ cố định. Lưu lượng đều lấy từ gói duy nhất bạn đã mua.
Độ khả dụng của ASN thay đổi theo mạng, thành phố và thời điểm trong ngày; trang thanh toán hiển thị những gì đang online, và không công bố số lượng IP cho từng ISP. Bỏ ZIP trước, rồi đến thành phố, và giữ ASN cùng tiểu bang. Một nhà cung cấp nhỏ hơn có thể chỉ online vào một số giờ nhất định, nên hãy thử lại vào đúng thời điểm trong ngày mà khách hàng báo lỗi. Ghi trong ticket mức độ nhắm mục tiêu mà bạn đã dùng.
1 GB 2,63 US$ · bao gồm ASN · không cần KYC
Bắt đầu