Testen
1 GB
2,63 $
2,63 $/GB
- Prüfe zuerst einen ISP in einer Stadt
- Targeting nach ASN, Bundesstaat, Stadt und ZIP
- HTTP, HTTPS, SOCKS5
Anwendungsfall · QA und Support
Manche Tickets ergeben nur in einem Netzwerk Sinn. Es schlägt bei Fixed Wireless fehl, die falsche Stadt erscheint, oder ein Bild ist bei einem Kabelanbieter veraltet. Eine Heim-IP in diesem Netzwerk macht aus dem Ticket einen Test, den du wiederholen kannst.
Kurze Antwort
Wie reproduziere ich einen Fehler, der nur bei einem bestimmten Internetanbieter auftritt?
Die Reproduktion von Netzwerkfehlern bedeutet, das Versagen eines Kunden von derselben Art von Verbindung aus zu wiederholen: derselbe Anbieter, dieselbe Stadt, idealerweise zur selben Stunde. Broadband Proxies gibt QA- und Support-Teams US-Heim-IPs nach ASN und Stadt. Sticky Sessions halten bis zu 30 Minuten (die IP kann sich früher ändern, z. B. wenn das Heimgerät offline geht). Ein 1-GB-Tarif kostet 2,63 $; es gibt kein KYC und die Zahlung erfolgt in Krypto.
| Typische Tickets | Schlägt nur bei Fixed Wireless fehl, falsche Stadt oder Bundesstaat erkannt, veraltete Inhalte in einem Netzwerk, als verdächtig blockiert |
|---|---|
| Targeting | ASN plus Bundesstaat, Stadt oder ZIP, z. B. USERNAME-country-us-state-az-city-phoenix-asn-22773 (Cox-Netzwerk in Phoenix) |
| Sticky Sessions | bis zu 30 Minuten (die IP kann sich früher ändern, z. B. wenn das Heimgerät offline geht) |
| Protokolle | HTTP, HTTPS (CONNECT) und SOCKS5 |
| Was protokolliert werden sollte | Angefragtes Targeting, Exit-IP, Origin-ASN, UTC-Zeitfenster, Session-ID |
| Was es nicht kopieren kann | Den Router, das WLAN, das Gerät und die lokalen DNS-Einstellungen des Kunden |
| Preis | 2,63 $ für 1 GB, 5,94 $ für 10 GB, Unterbenutzer pro Projekt |
Ein Residential-Exit gibt Ihrem Dienst die öffentliche IP des Kundennetzes. Jede Logik, die an dieser IP hängt, verhält sich wie beim Kunden. Vier Arten von Tickets tauchen häufig auf.
Ein Proxy kopiert die öffentliche IP und ihr Netzwerk, nicht die gesamte Verbindung. Der Router, das WLAN, Browser-Erweiterungen und das Gerät des Kunden bleiben außer Reichweite. Fragen Sie nach Browserversion und Screenshot, um diese abzudecken.
DNS ist eine weitere Grenze. Über einen Proxy werden Namen möglicherweise vom Proxy-Netzwerk statt vom Resolver des ISP aufgelöst, daher brauchen reine DNS-Fehler eine andere Methode.
Auch IPv6 erfordert Sorgfalt. Die Prüfung unten nutzt api.ipify.org, das nur über IPv4 antwortet. Tritt ein Fehler nur über IPv6 auf, kann ein Proxy-Test den IPv4-Pfad ein- oder ausschließen. Um den Rest zu bestätigen, brauchen Sie weiterhin eine native IPv6-Leitung.
Sammeln Sie die Netzwerkfakten
Fragen Sie nach dem ISP-Namen, der Stadt oder ZIP, dem Zeitpunkt des Fehlers und dem Fehlertext. Eine Abfrage wie unser Exit-IP-Leitfaden liefert die ASN, ohne Passwörter oder Routerzugriff zu teilen.
Erstellen Sie einen Sticky-Benutzernamen
Für einen Cox-Kunden in Phoenix: USERNAME-country-us-state-az-city-phoenix-asn-22773-session-bug4521-ttl-30.
Bestätigen und protokollieren Sie den Exit
Führen Sie das folgende Skript aus. Es zeichnet die Exit-IP, die Origin-ASN und das Präfix auf und überwacht dann IP-Änderungen.
Reproduzieren Sie innerhalb der Session
Verwenden Sie denselben Benutzernamen im Browser oder Test-Runner. Schließen Sie innerhalb des Session-Fensters ab und notieren Sie jede IP-Änderung.
Führen Sie ein Kontrollnetzwerk aus
Wiederholen Sie die Schritte auf einer anderen ASN in derselben Stadt. Verschwindet der Fehler, ist das Netzwerk Teil der Ursache.
# 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))| Feld | Beispiel | Warum sie wichtig ist |
|---|---|---|
| Angefragtes Targeting | country-us-state-az-city-phoenix-asn-22773 | Ein Kollege kann denselben Test später ausführen |
| Exit-IP | 203.0.113.24 (Dokumentationsbereich) | Durchsuchen Sie Ihre Server- und CDN-Logs danach |
| Origin-ASN und Präfix | AS22773, aus RIPEstat | Belegt das Netzwerk, nicht nur die Anfrage |
| UTC-Zeitfenster | 2026-10-18 14:05 bis 14:30 UTC | Passt Logzeilen über Zeitzonen hinweg ab |
| Session-ID und TTL | bug4521, 30 Minuten | Zeigt an, ob die IP gleich geblieben ist |
| Ergebnis | HTTP 403 auf /checkout/ | Der Bug, reproduziert oder nicht |
| Kontrolle | Gleiche Stadt auf AS209: kein Fehler | Trennt Netzwerkursachen von Code-Ursachen |
Teste deine eigene Website, App oder API oder ein System, dessen Betreiber dich darum gebeten hat. Ein Ticket zu reproduzieren sollte ein paar Anfragen brauchen, keinen Crawl. Unsere Acceptable Use Policy verbietet Floods und Scans von Systemen ohne Erlaubnis des Betreibers.
Halte Kundendaten aus Benutzernamen und Session-IDs heraus. Verwende eine Ticketnummer wie bug4521, niemals eine E-Mail-Adresse oder einen Namen. Websites von Banken, Behörden und Zahlungsportalen sind in jedem Tarif gesperrt, daher lassen sich Seiten von Zahlungsanbietern nicht über das Gateway testen.
Eine einzelne Reproduktion sind oft ein paar Seitenaufrufe plus die Prüfungen im Skript. 1 GB (2,63 $) deckt einen Test bei einem ISP und in einer Stadt ab. 10 GB (5,94 $) passt zu einem QA-Team mit einem Sub-User pro Tester. Der Traffic verfällt nie.
1 GB
2,63 $
2,63 $/GB
5 GB
3,75 $
0,75 $/GB
10 GB
5,94 $
0,59 $/GB
In jedem Plan: Protokolle: HTTP, HTTPS, SOCKS5 · Targeting: ASN (ISP), Bundesstaat, Stadt und ZIP in den USA; im Ausland Land; Stadtverfügbarkeit variiert · Sitzungen: Rotierend oder sticky (bis zu 30 Minuten) · Authentifizierung: Benutzername und Passwort oder eine IP-Allowlist (bis zu 10 IPs) · Traffic-Ablauf: Läuft nie ab
Ja, innerhalb einer Sticky-Session: bis zu 30 Minuten (die IP kann sich früher ändern, z. B. wenn das Heimgerät offline geht). Setze -session-<id>-ttl-<minutes> ans Ende des Benutzernamens und verwende dieselbe ID in jedem Tool. Protokolliere die Exit-IP am Anfang und am Ende. Hat sie sich geändert, erwähne das im Ticket, denn eine neue IP kann auf einem anderen Prefix liegen.
Oft ja. Ziele auf AS21928 für T-Mobile Home Internet oder AS22394 für Verizon 5G Home. Exits in diesen Netzen teilen sich Adressen meist mit anderen Nutzern, so wie die Leitung des Kunden. Broadband Proxies kann nicht erkennen, ob ein gegebener Exit ein Home-Gateway oder ein Telefon ist, also notiere die ASN statt des Gerätetyps.
Nicht wie hier gezeigt. Das Beispiel prüft den Exit mit api.ipify.org, was nur über IPv4 antwortet. Wenn der Fehler des Kunden nur über IPv6 auftritt, sagt dir der Proxy-Test, ob der IPv4-Pfad in Ordnung ist. Bestätige die IPv6-Seite über eine native IPv6-Verbindung.
Den ISP-Namen, die Stadt oder Postleitzahl, den Zeitpunkt des Fehlers, den Browser und die genaue Fehlermeldung. Am meisten hilft die ASN: Eine Lookup-Seite zeigt sie ohne Login an. Frage niemals nach Passwörtern, Router-Zugriff oder Fernsteuerung des Kundengeräts. Das ist für den Test der Netzwerkseite nicht nötig.
Ja. Lege für jeden Tester oder jedes Projekt einen Sub-User an. Jeder Sub-User hat eigene Zugangsdaten, ein eigenes Traffic-Limit und eigene Nutzungssummen. Du kannst statt eines Passworts auch bis zu 10 IPs freigeben, was zu CI-Runnern mit festen Adressen passt. Der Traffic stammt aus dem einen Tarif, den du gekauft hast.
ASN-Verfügbarkeit variiert je nach Netzwerk, Stadt und Tageszeit; die Kasse zeigt, was online ist, und es wird keine IP-Anzahl pro ISP veröffentlicht. Lass zuerst die Postleitzahl weg, dann die Stadt, und behalte die ASN mit dem Bundesstaat. Ein kleinerer Anbieter ist vielleicht nur zu bestimmten Stunden online, also versuche es zur Tageszeit erneut, zu der der Kunde den Fehler gemeldet hat. Notiere im Ticket, welche Targeting-Stufe du verwendet hast.
1 GB 2,63 $ · ASN inklusive · ohne KYC
Jetzt loslegen