Chyby proxy timeout: spojení zamrzne a nakonec selže
Updated:
Timeout je více frustrující než ostatní chyby, protože nic neřekne: žádné odmítnutí, žádná výzva k zadání hesla, jen ticho, dokud to váš software nevzdá. Obvykle vaše pakety někam dorazí a zmizí, nebo proxy přijme spojení a neodpoví včas. Úkolem je zjistit, v jakém kroku k tomuto tichu dochází.
Tři naměřené výstupy timeoutu
Nastavili jsme testovací proxy, která přijímá TCP spojení a nikdy neodpoví, a poté jsme spustili stejný požadavek se dvěma typy časových limitů (adresa upravena na 203.0.113.10:8080, user123:pass456):
curl --connect-timeout 10 -x http://user123:[email protected]:8080 https://example.comvrátícurl: (28) Proxy CONNECT aborted due to timeout. Tento limit pokrývá pouze fázi připojování.- Při nahrazení za
-m 10(limit pro celý přenos) vrátícurl: (28) Connection timed out after 10002 milliseconds. - Chromium nasměrované na stejnou proxy hlásí
ERR_TIMED_OUT; proxy checker hlásítimeout.
Příčiny, od nejpravděpodobnějších
- Vaše síť potichu blokuje port proxy. Kancelářské, hotelové a školní Wi-Fi sítě často zahazují pakety směřující na neobvyklé porty, místo aby je odmítly, takže čekáte donekonečna.
- Timeout ve vašem kódu je příliš krátký. Proxy ve vzdálené zemi potřebuje na handshake o něco více času; limit 2–3 sekundy může odříznout i zcela funkční proxy.
- Proxy nebo cílový server je přetížený. Proxy přijme spojení, ale čeká na webovou stránku, a vaše trpělivost vyprší dříve.
- Špatná IP adresa. Překlep, kvůli kterému požadavek skončí na neodpovídající adrese, způsobí ticho namísto odmítnutí.
Řešení podle prostředí
- Windows/Chrome: vyzkoušejte stejnou proxy přes mobilní data v telefonu. Pokud timeout zmizí, spojení blokuje původní síť; přečtěte si kontrolu proxy a firewallu.
- Antidetect prohlížeče: tlačítko pro kontrolu proxy má obvykle pevně stanovenou dobu čekání. Zkuste to několikrát znovu, a pokud selžou jen některé profily, porovnejte jejich proxy řádek s funkčním.
- Telegram: stav zaseknutý na připojování po zapnutí proxy je často také timeout; před úpravou nastavení v Telegramu otestujte proxy v kontrolním nástroji.
- Python requests: předejte
timeout=(10, 30), což znamená 10 sekund na připojení a 30 sekund na čtení. Ošetřeterequests.exceptions.ConnectTimeoutarequests.exceptions.ReadTimeoutodděleně, abyste viděli, kde spojení zamrzne, a raději přidejte několik opakovaných pokusů s prodlevou než neomezený timeout. - curl: použijte
--connect-timeoutpro změření samotného kroku připojení a-mpro omezení celého příkazu.
Timeout, nebo jen pomalé spojení?
Pomalá proxy stále odpovídá, jen se zpožděním. Test rychlosti proxy ukazuje reálné časy odezvy; pokud se blíží nastavenému timeoutu ve vašem softwaru, zvyšte limit nebo zvolte proxy v zemi blíže k cíli. Pokud opakované testy nepřinesou žádnou odpověď, jde o skutečný timeout a dalším krokem je založení ticketu s výsledkem kontroly.
Krok za krokem
- 1
Ověřte timeout pomocí kontrolního nástroje
Vložte řádek s proxy do proxy checkeru. Výsledek
timeoutznamená, že v časovém limitu nedorazila žádná odpověď. - 2
Změňte síť pro zúžení problému
Zkuste to znovu přes mobilní data. Pokud to funguje, problém je v původní síti nebo jejím firewallu.
- 3
Změřte dobu odezvy
Spusťte test rychlosti proxy, abyste zjistili, zda je proxy pomalá, nebo vůbec neodpovídá.
- 4
Upravte timeouty a opakování ve svém softwaru
Zvyšte limit pro připojení přibližně na 10 sekund, přidejte opakování a spusťte úlohu znovu.
Často kladené otázky
Znamená proxy timeout, že je proxy nefunkční?
Nemusí to tak být. Mnoho timeoutů je způsobeno tím, že síť uživatele blokuje daný port. Před vyvozením závěrů proveďte test z jiné sítě.
Jaký timeout mám pro proxy nastavit v kódu?
Rozumným výchozím bodem je přibližně 10 sekund na připojení a 30 sekund na čtení. Vzdálené proxy nebo náročné stránky mohou vyžadovat více.
Proč dochází k timeoutu přes proxy jen u některých webů?
V tom případě proxy funguje a cíl je pomalý nebo spojení blokuje. Pokud web namísto ticha vrátí kód 502, podívejte se na 502 Bad Gateway.
Jak se timeout liší od odmítnutého spojení?
Odmítnutí se vrátí okamžitě, zatímco timeout čeká až do vypršení limitu. Viz proxy server odmítá spojení.
Vyberte si proxy blízko svého trhu
VinaProxy nabízí IP adresy ve Vietnamu, USA, Japonsku, Jižní Koreji, Singapuru, Velké Británii a Hongkongu, takže můžete zůstat blízko svému cíli.
Zobrazit ceník