Proxy timeout hibák: a kapcsolat megakad, majd feladja
Updated:
Az időtúllépés bosszantóbb a többi hibánál, mivel semmit sem árul el: nincs elutasítás, nincs jelszókérés, csupán csend, amíg a szoftver fel nem adja. A csomagok általában elindulnak valahova és eltűnnek, vagy a proxy fogadja a kapcsolatot, de nem válaszol időben. A feladat kideríteni, hogy melyik lépésnél következik be a csend.
Három mért timeout-kimenet
Beállítottunk egy tesztproxyt, amely fogadja a TCP-kapcsolatokat, de soha nem válaszol, majd lefuttattuk ugyanazt a kérést kétféle időkorláttal (a cím átírva: 203.0.113.10:8080, user123:pass456):
- A
curl --connect-timeout 10 -x http://user123:[email protected]:8080 https://example.comeredménye:curl: (28) Proxy CONNECT aborted due to timeout. Ez a korlát kizárólag a kapcsolódási fázisra vonatkozik. - A
-m 10kapcsolóra váltva (amely a teljes adatátvitelre vonatkozó korlát) az eredmény:curl: (28) Connection timed out after 10002 milliseconds. - Az ugyanarra a proxyra irányított Chromium az
ERR_TIMED_OUThibát jelzi; a proxy checker pedigtimeouteredményt ad.
Lehetséges okok a valószínűség sorrendjében
- A hálózata észrevétlenül blokkolja a proxy portját. Az irodai, szállodai és egyetemi Wi-Fi hálózatok az elutasítás helyett gyakran egyszerűen eldobják a szokatlan portokra érkező csomagokat, így a végtelenségig várhat.
- Túl rövid a kódban beállított timeout. Egy távoli országban lévő proxynál a kézfogás valamivel több időt vesz igénybe; egy 2–3 másodperces korlát megszakíthat egy egyébként hibátlanul működő proxyt is.
- A proxy vagy a céloldal túlterhelt. A proxy fogadja a kapcsolatot, de a weboldal válaszára vár, így a türelme előbb fogy el.
- Hibás IP-cím. Egy elgépelés miatt elérhetetlen címre küldött kérés elutasítás helyett csendet eredményez.
Megoldások környezet szerint
- Windows/Chrome: próbálja ki ugyanazt a proxyt a telefonja mobilinternetén keresztül. Ha a timeout megszűnik, az eredeti hálózat blokkol; olvassa el a proxy és a tűzfal ellenőrzése című részt.
- Antidetect böngészők: a proxy-ellenőrző gomb általában fix várakozási idővel működik. Próbálja meg néhányszor újra, és ha csak bizonyos profiloknál jelentkezik a hiba, hasonlítsa össze a proxy beállítási sorát egy működőével.
- Telegram: ha a proxy engedélyezése után a kapcsolat a kapcsolódási fázisban ragad, az gyakran szintén timeout; tesztelje a proxyt az ellenőrzőben, mielőtt módosítaná a Telegram beállításait.
- Python requests: adja át a
timeout=(10, 30)paramétert, ami 10 másodpercet jelent a kapcsolódásra és 30 másodpercet az adatok olvasására. Kezelje külön arequests.exceptions.ConnectTimeoutés arequests.exceptions.ReadTimeoutkivételeket, hogy lássa, hol akad el a folyamat, és korlátlan várakozás helyett állítson be néhány időzített újrapróbálkozást. - curl: használja a
--connect-timeoutkapcsolót a kapcsolódási lépés önálló mérésére, és a-mkapcsolót a teljes parancs futásidejének korlátozására.
Timeout vagy egyszerűen csak lassú?
A lassú proxy válaszol, csupán késve. A proxy-sebességteszt megmutatja a valós válaszidőket; ha ezek megközelítik a szoftverében beállított timeoutot, növelje a korlátot, vagy válasszon a célhoz közelebbi országban lévő proxyt. Ha az ismételt tesztek során sem érkezik válasz, valódi időtúllépésről van szó, és a következő lépés egy hibajegy nyitása az ellenőrző eredményével.
Lépésről lépésre
- 1
Erősítse meg a timeoutot az ellenőrzővel
Illessze be a proxy adatait a proxy-ellenőrzőbe. A
timeouteredmény azt jelenti, hogy a várakozási időn belül nem érkezett válasz. - 2
Váltson hálózatot a hiba behatárolásához
Próbálja újra mobilinterneten keresztül. Ha működik, az eredeti hálózat vagy annak tűzfala okozza a problémát.
- 3
Mérje meg a válaszidőt
Futtassa a proxy-sebességtesztet, hogy kiderüljön, a proxy lassú vagy egyáltalán nem válaszol.
- 4
Hangolja az időtúllépéseket és az újrapróbálkozásokat a szoftverben
Növelje a kapcsolódási korlátot körülbelül 10 másodpercre, állítson be újrapróbálkozásokat, majd futtassa újra a feladatot.
Gyakran ismételt kérdések
A proxy timeout azt jelenti, hogy a proxy nem működik?
Nem feltétlenül. Sok időtúllépést az okoz, hogy a felhasználó hálózata blokkolja a portot. Mielőtt levonná a következtetést, tesztelje egy másik hálózatról.
Milyen timeoutot érdemes beállítani a proxykhoz a kódban?
Körülbelül 10 másodperc a kapcsolódásra és 30 másodperc az olvasásra ésszerű kiindulópont. A távoli proxyk vagy a nagyobb méretű oldalak esetében ennél többre lehet szükség.
Miért csak bizonyos weboldalaknál lép fel timeout a proxyn keresztül?
Ebben az esetben a proxy működik, és a céloldal lassú vagy blokkol. Ha az oldal a csend helyett 502-es hibát ad, tekintse meg a 502 Bad Gateway leírást.
Miben különbözik az időtúllépés az elutasított kapcsolattól?
Az elutasítás azonnal visszatér; a timeout megvárja az időkorlát lejártát. Tekintse meg a kapcsolódást elutasító proxyszerver című cikket.
Válasszon a piacához közeli proxyt
A VinaProxy vietnámi, egyesült államokbeli, japán, dél-koreai, szingapúri, brit és hongkongi IP-címeket kínál, így mindig közel maradhat a céljához.
Árak megtekintése