VVinaProxy

Rješavanje greške ERR_TUNNEL_CONNECTION_FAILED s proxyjem

Updated:

Za učitavanje https:// stranice putem proxyja, preglednik šalje CONNECT zahtjev i čeka da proxy otvori tunel prema web-mjestu. ERR_TUNNEL_CONNECTION_FAILED se pojavljuje kada proxy na taj zahtjev odgovori greškom umjesto prihvaćanjem. Problem je u tome što vam Chrome ne govori o kojoj je grešci riječ, pa je prvi zadatak otkriti stvarni kod.

Proxyji koji rade s Puppeteerom i Playwrightom

Dva slučaja koja smo reproducirali

Oba su slučaja testirana na testnom proxyju, koji je ovdje prikazan s dokumentacijskom adresom 203.0.113.10:8080 i user123:pass456. U uobičajenom prozoru Chromea slučaj 407 ne pretvara se u grešku tunela; Chrome umjesto toga otvara dijaloški okvir za prijavu s korisničkim imenom i lozinkom za proxy. Greške tunela uzrokovane kodom 407 stoga se uglavnom pojavljuju u alatima za automatizaciju i u aplikacijama koje ne mogu zatražiti unos lozinke.

Proxy na CONNECT odgovara sChrome prikazujecurl prikazuje
407 bez mogućnosti unosa lozinke (headless Chrome)ERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 407
502 jer proxy ne može dosegnuti web-mjestoERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 502

Uzroci, počevši od najvjerojatnijih

  • Skripta za automatizaciju ne šalje vjerodajnice. Zastavica --proxy-server u Chromeu prihvaća samo host i port, a ne user:pass. Headless Puppeteer ili Selenium dobivaju 407 i javljaju neuspjeh tunela.
  • Aplikacija na telefonu iza Wi-Fi proxyja zaštićenog lozinkom. Aplikacija nema prozor za prijavu, pa HTTPS veza puca dok preglednik i dalje radi.
  • Proxy ne može dosegnuti odredište. Vraća 502 na CONNECT; stranica 502 Bad Gateway to detaljno objašnjava.
  • Samo neka web-mjesta ne rade. Odredište blokira promet ili je nedostupno, dok druga web-mjesta rade putem istog proxyja.

Otkrijte stvarni kod jednom curl naredbom

Pokrenite curl -v -x http://user123:[email protected]:8080 https://example.com sa svojim vrijednostima. Pogledajte redak odmah nakon > CONNECT example.com:443 HTTP/1.1: 407 znači da trebate slijediti vodič za 407; 502 upućuje na odredište ili put iza proxyja. Ako radije ne biste koristili terminal, zalijepite liniju u provjeru proxyja, koja za iste situacije prijavljuje auth failed (407) ili HTTP 502.

Rješenja po okruženjima

  • Puppeteer: zadržite --proxy-server=http://host:port pri pokretanju i pozovite page.authenticate({ username, password }) prije navigacije. Potpuni primjer potražite u vodiču za Puppeteer proxy.
  • Playwright: proslijedite proxy: { server, username, password } pri pokretanju preglednika i Playwright će umjesto vas riješiti 407; pogledajte Playwright.
  • Selenium: Chrome ne prihvaća user:pass u naredbenom retku; vodič za Selenium prikazuje izvedive opcije.
  • Chrome na Windowsima: ako se dijaloški okvir za prijavu uopće ne pojavljuje, provjerite blokira li ga proširenje za proxy, a zatim pokušajte ponovno u prozoru bez proširenja.
  • Telefoni: za aplikacije koje zahtijevaju autentificirani proxy upotrijebite proxy aplikaciju koja podržava user:pass, kao što je opisano u vodiču za postavljanje na Androidu.

Korak po korak

  1. 1

    Identificirajte CONNECT odgovor

    Pokrenite curl -v -x s linijom vašeg proxyja ili je zalijepite u provjeru kako biste saznali vraća li proxy 407 ili 502.

  2. 2

    Za 407: ispravno unesite vjerodajnice

    U skriptama upotrijebite funkciju za autentifikaciju biblioteke umjesto unosa user:pass u --proxy-server.

  3. 3

    Za 502: isprobajte drugo web-mjesto

    Učitajte veliko web-mjesto poput example.com putem istog proxyja. Ako radi, problem je u izvornom odredištu.

  4. 4

    Ponovno pokrenite i potvrdite izlazni IP

    Nakon što se tunel otvori, posjetite moj IP u tom istom pregledniku kako biste potvrdili da promet ide putem proxyja.

Često postavljana pitanja

Zašto se http stranice učitavaju, a https stranice ne rade?

Običan http ne zahtijeva CONNECT; proxy izravno prosljeđuje zahtjev. Samo https otvara tunel, pa se greške tunela pojavljuju samo tamo.

Što uzrokuje ERR_TUNNEL_CONNECTION_FAILED na Androidu?

Najčešće aplikacija koja ne može proslijediti korisničko ime i lozinku Wi-Fi proxyju. Isprobajte istu stranicu u Chromeu za Android; ako Chrome zatraži prijavu i učita je, problem je u aplikaciji.

Mogu li navesti user:pass unutar --proxy-server?

Ne. Chrome zanemaruje vjerodajnice u toj zastavici, što dovodi do greške 407 i problema s tunelom. Umjesto toga izvršite autentifikaciju putem Puppeteera, Playwrighta ili proširenja.

Hoće li prelazak na SOCKS5 ukloniti grešku tunela?

Samo ako je vaša narudžba SOCKS5. VinaProxy nudi i HTTP(S) i SOCKS5; odaberite protokol koji je naveden za vašu narudžbu na nadzornoj ploči, jer nepodudaranje uzrokuje druge greške.

Proxyji koji rade s Puppeteerom i Playwrightom

VinaProxy proxyji koriste standardnu user:pass prijavu koju popularne biblioteke za automatizaciju podržavaju bez dodatnih prilagodbi.

Pogledajte cijene

Related articles

Proxy greške
Kako riješiti 407 Proxy Authentication Required
Pogreška 407 Proxy Authentication Required znači da je proxy odbio vašu prijavu. Pogledajte stvarni curl ispis, najčešće uzroke i rješenja po aplikacijama.
Proxy greške
Proxy pogreške 502 Bad Gateway: saznajte tko ih šalje
Pogreška 502 Bad Gateway putem proxyja znači izostanak valjanog odgovora poslužitelja. Saznajte tko je kriv, proxy ili web-stranica, uz stvarne curl primjere.
Postavljanje proxyja
Kako postaviti autentificirani proxy u Puppeteeru (Node.js)
Konfigurirajte autentificirane HTTP(S) proxyje u Puppeteeru uz --proxy-server i await page.authenticate(). Kopirajte provjerene primjere koda.
Postavljanje proxyja
Kako postaviti proxy u Playwrightu (autentifikacija preglednika i po kontekstu)
Podesite autentificirane HTTP(S) proxyje u Playwrightu za Node.js i Python te pokrenite izolirane statičke IP-ove u BrowserContextima. Kopirajte primjere.
Postavljanje proxyja
Kako postaviti proxy s autentifikacijom u Selenium WebDriveru
Konfigurirajte HTTP(S) proxyje s autentifikacijom u Selenium WebDriveru pomoću selenium-wire ili Chrome onAuthRequired ekstenzije. Pogledajte kôd.
Besplatni alati
Proxy checker: provjerite svoje proxyje online
Besplatan proxy checker: zalijepite do 100 proxyja u formatu ip:port:user:pass i online provjerite status, izlazni IP i latenciju. Saznajte značenje grešaka.
Postavljanje proxyja
Kako konfigurirati proxy u pregledniku Google Chrome
Konfigurirajte VinaProxy HTTP(S) proxyje u Chromeu bez promjene IP-a cijelog OS-a pomoću proširenja, --proxy-server zastavica ili zasebnih korisničkih profila.
Postavljanje proxyja
Kako konfigurirati proxy na sustavima Windows 10 i Windows 11
Konfigurirajte VinaProxy HTTP(S) proxyje na Windows 10 i Windows 11 putem postavki sustava WinINET, PowerShell varijabli okruženja ili naredbe netsh winhttp.