Camoufox Proxy i GeoIP: Twój adres IP wyjściowy to odcisk palca

Włącz geoip, a Camoufox wyprowadzi twoją strefę czasową, lokalizację, współrzędne i fałszywy adres WebRTC z adresu IP wyjściowego proxy. To sprawia, że błędnie oznaczone proxy jest bardziej widoczne niż brak proxy.

Większość poradników dotyczących proxy Camoufox kończy się na dwóch linijkach, które ustawiają proxy i geoip=True. Konsekwencją jest to, czego nikt nie zapisuje: z włączonym geoip, Camoufox wyprowadza twoją strefę czasową, lokalizację, szerokość i długość geograficzną oraz fałszywy adres WebRTC z adresu IP wyjściowego proxy. Proxy przestaje być przeskokiem sieciowym i staje się źródłem prawdy dla całej tożsamości. Podaj mu błędnie oznaczone lub zrecyklingowane wyjście, a Camoufox zbuduje idealnie spójny odcisk palca wokół kłamstwa — silniejszy sygnał niż brak fałszowania. Oto konfiguracja, błędy, które ludzie wklejają do Google, luka SOCKS5 i jak najpierw sprawdzić wyjście.

Co geoip faktycznie wyprowadza z twojego proxy

Camoufox to wersja Firefox z funkcją anty-detect, która opiera się na Playwright's Python API, więc konfiguracja proxy ma kształt Playwright. Warstwa geo to to, co ją wyróżnia. Zgodnie z dokumentacją projektu, geoip=True (lub docelowy adres IP) sprawia, że Camoufox używa szerokości, długości geograficznej, strefy czasowej, kraju i lokalizacji docelowego IP oraz fałszuje adres IP WebRTC — a następnie idzie dalej, obliczając język przeglądarki na podstawie rozkładu użytkowników języka w tym regionie, zamiast domyślnie przyjmować oficjalny język kraju. Wyszukiwania są przeprowadzane w bazie danych w formacie MaxMind, która jest dostarczana jako opcjonalny dodatek:

pip install -U "camoufox[geoip]"
python -m camoufox fetch

Dodatek [geoip] jest opcjonalny tylko w sensie pakowania — dokumentacja nazywa go mocno zalecanym, jeśli używasz proxy, i to jest niedopowiedzenie. Bez niego masz przeglądarkę stealth działającą na strefie czasowej i lokalizacji twojego komputera, podczas gdy jej IP twierdzi, że znajduje się w innym kraju. Oto minimalna działająca konfiguracja z uwierzytelnioną bramą HTTP:

from camoufox.sync_api import Camoufox

with Camoufox(
    geoip=True,
    humanize=True,          # cursor movement, not a fingerprint setting
    headless=False,
    proxy={
        "server": "http://gate.quantumproxies.io:PORT",
        "username": "USER",
        "password": "PASS",
    },
) as browser:
    page = browser.new_page()
    page.goto("https://httpbin.org/ip")
    print(page.text_content("body"))   # should be the exit IP, not yours

Zwróć uwagę na kształt słownika proxy: dane uwierzytelniające umieszcza się w osobnych polach username i password, nigdy wewnątrz URL server. To jest dziedziczone z Playwright i to jest powód, dla którego uwierzytelnione proxy są tutaj bezproblemowe — bez rozszerzenia, bez dialogu uwierzytelniania do odrzucenia. Asynchroniczne API jest identyczne przez AsyncCamoufox. Jak to się ma do innych stosów stealth, zobacz naszą mapę wsparcia dla uwierzytelnionych proxy w ramach anty-detect.

Dlaczego złe proxy cię demaskuje

Systemy anty-bot rzadko polują na pojedynczą złą wartość. Polują na sprzeczności — dwa sygnały, które nie mogą być jednocześnie prawdziwe dla tego samego człowieka. Przeglądarka raportująca Europe/Rome z IP, które geolokalizuje się do Ohio, to jeden z nich. Funkcja geoip Camoufox istnieje, aby zabić tę klasę sprzeczności, i robi to dobrze. Haczyk polega na tym, że zawsze rozwiązuje sprzeczność na korzyść IP. Jeśli baza danych mówi, że twoje wyjście jest w Niemczech, ale adres jest zrecyklingowanym zakresem centrum danych, który połowa internetu już oznaczyła jako proxy, Camoufox sumiennie ubierze twoją przeglądarkę jako niemieckiego użytkownika domowego siedzącego na ASN, którego żaden niemiecki użytkownik domowy nigdy nie używał.

To sprawia, że jakość wyjścia jest problemem odcisków palców, a nie tylko blokowania. Dwa sprawdzenia należą do każdego uruchomienia: prawdziwy ASN i kraj wyjścia oraz czy IP już ma ocenę oszustwa lub proxy. Nasz darmowy sprawdzacz jakości IP odpowiada na oba, a proxy rezydencyjne na prawdziwych zakresach ISP w ponad 200 krajach to to, co sprawia, że wyprowadzona tożsamość jest w ogóle wiarygodna. Nic z tego nie zwalnia cię z warstwy poniżej — silnik nadal emituje uścisk dłoni TLS, a odcisk palca JA3/JA4 odczytuje go, zanim twoje fałszywe wartości zostaną kiedykolwiek wysłane.

Schemat przepływu pokazujący rezydencyjny adres IP wyjściowy zasilający wyszukiwanie geoip Camoufox, które wyprowadza strefę czasową, lokalizację, współrzędne i adres WebRTC, zanim odcisk palca zostanie wstrzyknięty
Z włączonym geoip, pięć sygnałów tożsamości jest obliczanych z jednego wejścia: adresu IP wyjściowego. Wybierz to wejście źle, a cały łańcuch jest spójnie błędny.

Błędy proxy Camoufox, które faktycznie napotkasz

Trzy awarie dominują w trackerze problemów, a żadna z nich nie oznacza, że twoje dane uwierzytelniające są błędne:

Czyste obejście dla pierwszego i trzeciego przypadku jest udokumentowane, ale niedostatecznie używane: geoip akceptuje adres IP, a nie tylko True. Rozwiąż wyjście samodzielnie przez to samo proxy, a następnie przekaż Camoufox odpowiedź. Całkowicie pomijasz wewnętrzne wyszukiwanie, a jako bonus możesz zarejestrować, na którym wyjściu działała każda sesja:

import requests
from camoufox.sync_api import Camoufox

HOST = "gate.quantumproxies.io:PORT"
USER, PASS = "USER-session-a1b2", "PASS"     # sticky session id in the username

PROXY = {"server": f"http://{HOST}", "username": USER, "password": PASS}
url = f"http://{USER}:{PASS}@{HOST}"          # percent-encode odd characters

# 1) resolve the exit through the same gateway and session
exit_ip = requests.get(
    "https://api.ipify.org", proxies={"http": url, "https": url}, timeout=15
).text.strip()

# 2) hand Camoufox the address instead of letting it discover one
with Camoufox(geoip=exit_ip, proxy=PROXY, humanize=True) as browser:
    page = browser.new_page()
    page.goto("https://browserscan.net")
    print("session exit:", exit_ip)

Dwa szczegóły mają znaczenie. Użyj sticky session, aby IP rozwiązane w kroku pierwszym było nadal wyjściem w kroku drugim — przy rotacji na żądanie są to różne adresy, a wyprowadzone geo jest błędne od pierwszego załadowania strony. I zakoduj procentowo dane uwierzytelniające zawierające @, : lub #: forma słownika jest odporna, forma URL nie.

Camoufox i SOCKS5: luka WebRTC i uwierzytelniania

SOCKS5 to miejsce, gdzie użytkownicy Camoufox utknęli, a powód jest ciekawszy niż brakująca funkcja. Problem #368 przedstawia to dokładnie: bez proxy, które obsługuje UDP, WebRTC może cię ujawnić. WebRTC negocjuje przez UDP, proxy HTTP są tylko TCP, a SOCKS5 to jedyny powszechny protokół z trybem skojarzenia UDP — dlatego ludzie chcą go tutaj szczególnie. Odpowiedzią Camoufox jest fałszowanie adresu WebRTC z danych geoip zamiast trasowania ścieżki multimediów, co pokrywa powszechny wyciek. Opcja block_webrtc usuwa powierzchnię całkowicie, kosztem wyglądania jak przeglądarka z wyłączonym WebRTC.

Uwierzytelnione SOCKS5 to trudniejsza luka. Dyskusja #334 to użytkownik pytający o sztuczkę i zgłaszający, że jedyną rzeczą, która zadziałała, było uruchomienie lokalnego serwera proxy do przekierowania ruchu przeglądarki do punktu końcowego SOCKS5 z loginem i hasłem. To nadal jest stan gry i pozostawia ci trzy opcje, w kolejności preferencji:

Uzyskaj punkty końcowe SOCKS5 z białą listą IP

Lista kontrolna porównująca spójną tożsamość Camoufox zbudowaną na zweryfikowanym wyjściu rezydencyjnym z sygnałami sprzecznymi z błędnie oznaczonego proxy
Tryb awarii to nie brakująca wartość. To pewna wartość, która nie zgadza się z IP za nią.

Lista kontrolna przed uruchomieniem, zanim zaufasz geoip

Często zadawane pytania

Jak ustawić proxy w Camoufox?

Przekaż słownik w stylu Playwright do konstruktora Camoufox(): proxy={"server": "http://host:port", "username": "USER", "password": "PASS"}. Dane uwierzytelniające należą do osobnych pól, a nie do URL serwera. Dodaj geoip=True obok, aby strefa czasowa, lokalizacja i współrzędne były wyprowadzane z tego wyjścia zamiast z twojego komputera.

Czy Camoufox obsługuje proxy SOCKS5?

Słownik proxy akceptuje serwer socks5://, ale uwierzytelnione SOCKS5 to znany punkt bólu — dyskusja #334 zgłasza lokalny przekaźnik jako jedyną niezawodną trasę, a pełne wsparcie dla SOCKS5 to nadal otwarte żądanie ulepszenia (#368). Praktycznym rozwiązaniem jest biała lista IP, która całkowicie usuwa wymóg danych uwierzytelniających, lub użycie portu HTTP bramy.

Co robi geoip=True w Camoufox?

Wyszukuje adres IP wyjściowy w bazie danych w formacie MaxMind i używa wyniku do ustawienia szerokości, długości geograficznej, strefy czasowej, kraju i lokalizacji przeglądarki, fałszuje adres WebRTC i wybiera prawdopodobny język dla regionu. Wymaga zainstalowanego dodatku camoufox[geoip]. Możesz również przekazać ciąg IP zamiast True, aby pominąć krok samodzielnego odkrywania.

Dlaczego otrzymuję InvalidProxy: Failed to connect to proxy?

Ponieważ wstępne sprawdzenie geoip nie mogło dotrzeć do publicznego API IP przez twoje proxy. Te punkty końcowe są HTTPS, więc proxy musi obsługiwać tunelowanie CONNECT; brama, która tylko przekazuje zwykłe HTTP, zawodzi tutaj, podczas gdy wydaje się działać gdzie indziej. Przetestuj z żądaniem HTTPS przez to samo proxy lub rozwiąż wyjście samodzielnie i przekaż je jako geoip="1.2.3.4".

Opcja geoip Camoufox to najlepszy argument w ekosystemie za wydawaniem pieniędzy na jakość IP zamiast na więcej kodu unikania. Rozwiązuje najtrudniejszą część spójności odcisków palców — sprawienie, by przeglądarka zgadzała się z siecią — automatycznie, pod warunkiem, że sieć mówi prawdę. Kup wyjście najpierw, a potem włącz geoip. Jeśli potrzebujesz Chromium zamiast Firefox, ta sama dyscyplina przenosi się do naszego przewodnika konfiguracji proxy Patchright. To jest techniczne doradztwo, a nie porada prawna: skrob w ramach prawa i warunków celu.

Uruchom Camoufox na zweryfikowanych wyjściach rezydencyjnych