Residential-Proxys

Einrichten von Residential Proxys in cURL und Postman

Beide Tools handhaben Proxys gut, und beide haben eine Einstellung, die stillschweigend alles zum Absturz bringt. Hier ist die funktionierende Konfiguration für jedes der beiden, und wie man den Rest debuggt.

Chris Collins

Chris Collins

31. August 2026 · 6 Min. Lesezeit

Bevor ein Proxy in die Nähe von Anwendungscode kommt, lohnt es sich, aus einem inspizierbaren Tool heraus zu belegen, dass er funktioniert. cURL und Postman sind die beiden Werkzeuge, zu denen die meisten Entwickler greifen, und beide handhaben Proxys gut, sobald sie konfiguriert sind, aber jedes hat eine Einstellung, die bei Übersehen zu verwirrendem Verhalten führt. Hier ist die funktionierende Konfiguration für beide, die relevanten Debugging-Flags und die Fallstricke.

Die Verbindungsdetails sind überall gleich: Host p.shifter.io, Port 443, und ein Benutzername, der Ihr Targeting trägt. Die Formatreferenz findet sich unter how to connect to a residential proxy.

cURL

Die gesamte Konfiguration ist ein einziges Flag.

curl -x customer-USERNAME:PASSWORD@p.shifter.io:443 https://ipinfo.io/json

-x und --proxy sind dasselbe. Führen Sie das zweimal aus, und die Adresse sollte sich unterscheiden, was Anmeldedaten und Rotation in einem Schritt bestätigt.

Targeting steckt im Benutzernamen, sodass sich sonst nichts am Befehl ändert:

# Deutscher Exit
curl -x customer-USERNAME-country-de:PASSWORD@p.shifter.io:443 https://ipinfo.io/json

# Sticky Session, zehn Minuten
curl -x customer-USERNAME-country-de-sid-abc123-ttl-600:PASSWORD@p.shifter.io:443 https://ipinfo.io/json

Anmeldedaten aus dem Shell-Verlauf heraushalten

Ein Passwort direkt in die URL einzubetten, landet in Ihrem Verlauf und in jeder Prozessliste. Zwei bessere Optionen:

# Anmeldedaten getrennt übergeben
curl -x p.shifter.io:443 -U customer-USERNAME-country-de:PASSWORD https://ipinfo.io/json

# oder aus der Umgebung
export PROXY_USER="customer-USERNAME-country-de"
export PROXY_PASS="..."
curl -x p.shifter.io:443 -U "$PROXY_USER:$PROXY_PASS" https://ipinfo.io/json

Beachten Sie, dass -U Proxy-Anmeldedaten sind und -u Anmeldedaten für die Zielseite. Die beiden zu verwechseln ist eine häufige Ursache für einen 407 bei einem völlig korrekten Passwort.

Wissenswerte Debugging-Flags

# den Proxy-Handshake sehen und ob die Authentifizierung erfolgreich war
curl -v -x customer-USERNAME:PASSWORD@p.shifter.io:443 https://ipinfo.io/json

# Zeitaufschlüsselung: wo die Latenz tatsächlich entsteht
curl -o /dev/null -s -w "connect: %{time_connect}s  ttfb: %{time_starttransfer}s  total: %{time_total}s\n" \
  -x customer-USERNAME:PASSWORD@p.shifter.io:443 https://example.com

Das zweite ist der schnellste Weg, um eine langsame Proxy-Verbindung von einem langsamen Ziel zu unterscheiden, was die erste Weiche in why requests time out ist und der Ausgangspunkt für reducing latency.

SOCKS5 in cURL, und die Falle

Wenn Sie SOCKS5 statt HTTP verwenden, spielt das Schema eine größere Rolle, als es aussieht:

# leckt DNS: Ihr Rechner löst den Hostnamen auf
curl -x socks5://customer-USERNAME:PASSWORD@p.shifter.io:443 https://example.com

# korrekt: der Proxy löst ihn auf
curl -x socks5h://customer-USERNAME:PASSWORD@p.shifter.io:443 https://example.com

Das h ist der gesamte Unterschied, und es falsch zu machen bedeutet, dass Ihre DNS-Anfragen von Ihrem eigenen Standort ausgehen, was regional falsche Ergebnisse liefern kann. Details in preventing DNS leaks.

Ein Flag, das niemals in Produktion gehört

--proxy-insecure deaktiviert die Zertifikatsprüfung auf der Proxy-Strecke. Es ist gelegentlich nützlich, um zu bestätigen, dass ein TLS-Fehler ein Zertifikatsproblem ist und nicht etwas anderes, und es darf niemals in etwas Dauerhaftem auftauchen.

Postman

Postmans Proxy-Unterstützung ist solide, wird aber in den Anwendungseinstellungen konfiguriert und nicht pro Anfrage, was jene überrascht, die es auf der Anfrage selbst erwarten.

Konfiguration

Öffnen Sie Settings, dann den Tab Proxy. Schalten Sie die Systemproxy-Option aus und aktivieren Sie die benutzerdefinierte Proxy-Konfiguration. Setzen Sie den Proxy-Server auf p.shifter.io und den Port auf 443, aktivieren Sie sowohl HTTP als auch HTTPS, aktivieren Sie dann die Proxy-Authentifizierung und geben Sie Ihren Benutzernamen ein, einschließlich etwaiger Targeting-Flags, sowie Ihr Passwort.

Diese Konfiguration gilt global für die Postman-App, was man im Hinterkopf behalten sollte: Einmal gesetzt, läuft jede Anfrage in jeder Collection über den Proxy, bis Sie ihn wieder ausschalten. Wenn Sie gleichzeitig interne Dienste testen, werden diese ebenfalls geroutet, was normalerweise nicht gewünscht ist.

Die Einstellung, die Dinge kaputt macht

Unter Settings dann General gibt es SSL certificate verification. Wenn Sie über den Proxy Zertifikatsfehler bekommen und diese Option ausschalten, denken Sie daran, dass Sie die Prüfung für alles deaktiviert haben, was Postman tut, nicht nur für die geproxyte Anfrage. Schalten Sie sie danach wieder ein. Wenn Sie überhaupt Zertifikatsfehler sehen, lohnt es sich, das zu verstehen, statt es einfach abzuschalten.

Targeting wechseln ohne erneutes Eintippen

Da das Targeting im Benutzernamen steckt, bedeutet ein Länderwechsel das Bearbeiten eines einzigen Feldes. Postman-Variablen machen das weniger mühsam: Definieren Sie eine Umgebung mit einer Variable für den Proxy-Benutzernamen, dann wechseln Sie die Umgebung, um den Markt zu wechseln. Der Proxy-Einstellungsdialog akzeptiert die Variablensyntax, sodass customer-USERNAME-country-{{market}} es ermöglicht, das Land durch Wechseln der aktiven Umgebung zu ändern, statt jedes Mal die Einstellungen zu öffnen.

Überprüfen, ob es funktioniert

Senden Sie ein GET an https://ipinfo.io/json und lesen Sie die Antwort. Sie sollte eine Adresse im angepeilten Land melden, nicht Ihre eigene. Senden Sie es zweimal ohne sid im Benutzernamen, und die Adresse sollte sich ändern.

Wenn die Adresse Ihre eigene ist, wird der Proxy überhaupt nicht angewendet: Prüfen Sie, ob die benutzerdefinierte Proxy-Konfiguration tatsächlich aktiviert ist und sowohl HTTP als auch HTTPS angehakt sind.

Der Collection Runner

Für Tests mit etwas größerem Volumen führt der Collection Runner eine Collection wiederholt über dieselbe Proxy-Konfiguration aus. Fügen Sie eine Verzögerung zwischen den Durchläufen hinzu, statt auf voller Geschwindigkeit zu laufen, denn eine Serie identischer Anfragen ist der schnellste Weg, ein Ziel dazu zu bringen, nicht mehr zu antworten, siehe rate limiting and throttling.

Wenn etwas fehlschlägt

Vier Antworten decken fast alles ab, und jede weist auf etwas Bestimmtes hin.

407 bedeutet, dass Anmeldedaten abgelehnt wurden oder ein Flag im Benutzernamen fehlerhaft ist, da ein nicht erkannter Wert den gesamten Benutzernamen unparsbar macht. Testen Sie zuerst den bloßen Benutzernamen ohne Flags; wenn das funktioniert, fügen Sie sie einzeln wieder hinzu. Vollständiger Weg in fixing 407 errors.

502 bedeutet, dass Ihre Anmeldedaten in Ordnung waren, aber in diesem Moment nichts Ihrem Filter entsprach. Weiten Sie ihn aus, oder gehen Sie von Stadt auf Land zurück.

509 bedeutet, dass das Plan-Bandbreitenkontingent erschöpft ist und Overage deaktiviert ist.

Connection refused oder ein Hängenbleiben bedeutet, dass Sie das Gateway nie erreicht haben. Prüfen Sie nc -vz p.shifter.io 443, bevor Sie ein Proxy-Problem annehmen, und stellen Sie sicher, dass Sie nicht auf einen veralteten Host zeigen.

Der umfassendere Index findet sich in common residential proxy errors.

Von Tools zu Code

Sobald beide Tools funktionieren, übertragen sich dieselben vier Werte direkt in alles, was Sie bauen, und die clientseitigen Muster finden sich in using residential proxies with Python. Eine Sache überträgt sich nicht: In Anwendungscode bedeutet Verbindungswiederverwendung, dass Anfragen, die durch einen bestehenden Tunnel gesendet werden, dieselbe Exit-Adresse behalten, was genau wie eine fehlgeschlagene Rotation aussieht. Diese Überraschung wird in IP not rotating behandelt.

Fazit

In cURL ist das Ganze -x, mit -U, um Anmeldedaten aus der URL herauszuhalten, -v, um den Handshake zu sehen, und -w, um herauszufinden, ob Langsamkeit am Proxy oder am Ziel liegt; wenn Sie SOCKS5 verwenden, nutzen Sie socks5h, damit DNS beim Proxy aufgelöst wird. In Postman liegt die Konfiguration in den Anwendungseinstellungen statt bei der Anfrage, sodass sie global gilt, bis Sie sie deaktivieren, und der SSL-Verifizierungsschalter gilt app-weit statt anfragespezifisch. In beiden Fällen steckt das Targeting im Benutzernamen, sodass ein Länderwechsel niemals bedeutet, Host, Port oder etwas anderes zu ändern. Belegen Sie in einem inspizierbaren Tool, dass es funktioniert, bevor Sie es in Code einbauen, und lesen Sie die Fehler anhand des Statuscodes.

Das Gateway hinter all dem sind residential proxies, ein Host und ein Anmeldedatenpaar über jedes Land und jeden Session-Modus hinweg, abgerechnet pro GB, sodass das Testen nur die tatsächlich genutzte Bandbreite kostet.

Bereit, loszulegen?

Testen Sie Shifters Residential-Proxys, 205M+ IPs, 195+ Länder, ab $0.75/GB.

Jetzt starten