Bez KYC — brak dowodu, selfie i dokumentów. Płać w kryptowalutach: BTC, USDT, USDC, ETH, SOL, LTC
Język: Polski
Rozpocznij

Referencja błędu proxy · Błędy połączenia i TLS

Błędy proxy SOCKS5: kody odpowiedzi, brak wsparcia i DNS

Błąd protokołu lub klienta SOCKS5: dokładny komunikat w każdym narzędziu, możliwe przyczyny w kolejności oraz działające rozwiązanie.

Ostatnia aktualizacja: · 4 min czytania

Szybka odpowiedź

Co oznacza SOCKS5 proxy errors w kontekście proxy?

Błędy SOCKS5 występują w trzech rodzajach: klient nie ma wsparcia SOCKS, serwer odrzucił login i hasło, albo serwer nie dotarł do celu i zwrócił kod odpowiedzi. W CrawlRelay zainstaluj wsparcie SOCKS (dla Python requests: requests[socks]), używaj portu SOCKS5 i preferuj socks5h://, aby DNS rozwiązywał exit, a nie Twoja maszyna.

SOCKS5 proxy errors w skrócie

BłądSOCKS5 proxy errors
TypBłąd protokołu lub klienta SOCKS5
Wysłane przezSerwer SOCKS5 (kody odpowiedzi) lub Twoja biblioteka klienta (brak wsparcia)
Zdefiniowano wSOCKS5: RFC 1928; username/password authentication: RFC 1929
Spróbować ponownie?Zależy od kodu odpowiedzi
Najpierw sprawdźPotwierdź, że klient obsługuje SOCKS5 z uwierzytelnianiem, potem przeczytaj kod odpowiedzi

Co oznacza SOCKS5 proxy errors?

SOCKS5, zdefiniowany w RFC 1928, pośredniczy w połączeniach TCP bez czytania HTTP. Uwierzytelnianie przez login i hasło to osobna krótka wymiana, opisana w RFC 1929. Po uwierzytelnieniu klient prosi o połączenie do hosta i portu, a serwer odpowiada jednobajtowym kodem.

Kod 0x00 oznacza sukces. Kody od 0x01 do 0x08 oznaczają niepowodzenia, od ogólnej awarii serwera do nieobsługiwanego typu adresu. Klienci tłumaczą te kody na własne komunikaty.

Jak wygląda a SOCKS5 error w Python, curl, Node.js i przeglądarkach?

Ten sam błąd wyświetla się inaczej w każdym narzędziu. Oto komunikaty, które warto wyszukać w logach:

  • Python requests bez PySocks: InvalidSchema: Missing dependencies for SOCKS support.
  • curl, odrzucone dane: curl: (97) User was rejected by the SOCKS5 server
  • Odpowiedź 0x01: 'ogólna awaria serwera SOCKS'
  • Odpowiedź 0x04 / 0x05: 'Host niedostępny' / 'Połączenie odrzucone' przez cel
  • Odpowiedź 0x08: 'Nieobsługiwany typ adresu'

Co powoduje a SOCKS5 error?

Najczęściej na początku:

  • Brak wsparcia SOCKS w bibliotece klienta.
  • Złe dane logowania lub niezakodowane URL.
  • Port HTTP używany dla SOCKS lub port SOCKS dla HTTP.
  • Cel odrzucił lub był niedostępny z wyjścia.
  • Lokalny DNS przy socks5://: klient sam rozwiązuje nazwę, co może się nie powieść lub zwrócić zły regionalny adres.

Jak krok po kroku zdiagnozować a SOCKS5 error?

  1. Potwierdź wsparcie SOCKS: w Pythonie pip show pysocks; w Node.js pakiet agenta SOCKS.
  2. Uruchom test curl na porcie SOCKS5 z --socks5-hostname.
  3. Odczytaj kod lub komunikat odpowiedzi.
  4. Porównaj socks5:// i socks5h:// dla tego samego celu.
Przetestuj nie działający URL za pomocą curl (port HTTP, tryb verbose)
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:[email protected]:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL

Jak naprawić a SOCKS5 error?

  • Zainstaluj wsparcie: pip install "requests[socks]"; w Node.js użyj agenta proxy SOCKS.
  • Używaj portu SOCKS5 dla adresów socks5h:// i portu HTTP dla http://.
  • Preferuj socks5h://, aby exit rozwiązywał DNS, co odpowiada lokalnym użytkownikom.
  • Dla kodów 0x04 lub 0x05 przetestuj cel bez proxy; może być niedostępny lub odrzucający połączenia.
  • Dla przeglądarek używaj portu HTTP: Chromium nie wspiera uwierzytelniania SOCKS5.
Python requests przez SOCKS5 (pip install "requests[socks]")
import requests

# socks5h:// sends the hostname to the proxy, so DNS resolves at the exit
proxy = "socks5h://USERNAME:[email protected]:7778"
r = requests.get("https://api.ipify.org", proxies={"http": proxy, "https": proxy}, timeout=(10, 30))
print(r.status_code, r.text)

Czy warto ponawiać próbę po a SOCKS5 error?

Powtarzaj tylko błędy po stronie celu, takie jak host niedostępny czy połączenie odrzucone, i to tylko raz na nowym wyjściu. Błędy uwierzytelnienia i brak wsparcia klienta powtarzają się aż do poprawki konfiguracji.

Jak SOCKS5 proxy errors odnosi się do CrawlRelay?

CrawlRelay serwuje SOCKS5 na własnym porcie, wymienionym poniżej, z tym samym formatem nazwy użytkownika i hasła co port HTTP. Targeting i sesje działają identycznie na obu portach.

Gateway: gw.crawlrelay.com, port 7777 (HTTP, HTTPS przez CONNECT) i port 7778 (SOCKS5). Format nazwy użytkownika: USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}. Powiązane: Nie można połączyć się z proxy · poradnik curl · poradnik Python.

SOCKS5 proxy errors: pytania, które zadają deweloperzy

Jaka jest różnica między socks5:// a socks5h://?

Przy socks5:// klient sam rozwiązuje nazwę hosta na adres IP i wysyła IP do proxy. Przy socks5h:// wysyła nazwę hosta, a po stronie proxy następuje rozwiązywanie. Używaj socks5h:// do scrapowania: DNS odbywa się na wyjściu, więc otrzymujesz te same regionalne odpowiedzi, które dostają lokalni użytkownicy.

Czy powinienem używać proxy SOCKS5 czy HTTP do scrapowania?

Do stron WWW oba działają, a proxy HTTP są prostsze: każda biblioteka HTTP i przeglądarka je obsługuje z uwierzytelnianiem. Używaj SOCKS5 do protokołów innych niż HTTP lub narzędzi, które obsługują tylko SOCKS. Przeglądarki oparte na Chromium nie mogą uwierzytelniać się przez SOCKS5, więc tam używaj portu HTTP.

Dlaczego curl wyświetla komunikat 'User was rejected by the SOCKS5 server'?

Serwer SOCKS5 odrzucił wymianę nazwy użytkownika i hasła. Sprawdź dane logowania, zakoduj znaki specjalne w URL i potwierdź, że używasz portu SOCKS5. Ten sam login i hasło powinny działać na porcie HTTP, jeśli konto jest aktywne.

Inne błędy proxy w tym odniesieniu

Kody statusu HTTP

Błędy w przeglądarce i kliencie

Błędy połączenia i TLS

Proxy rezydencjalne z dokumentacją opisującą przypadki błędów

CrawlRelay proxy rezydencjalne od 0,50 USD/GB, ruch, który nigdy nie wygasa.

Od 0,50 USD/GB · bez KYC

Rozpocznij