VVinaProxy

Fiks ERR_TUNNEL_CONNECTION_FAILED med proxy

Updated:

For å laste en https://-side via en proxy sender nettleseren en CONNECT-forespørsel og venter på at proxyen åpner en tunnel til nettstedet. ERR_TUNNEL_CONNECTION_FAILED oppstår når proxyen svarer med en feil i stedet for å godta forespørselen. Ulempen er at Chrome ikke forteller deg hvilken feil det gjelder, så første steg er å finne den faktiske koden.

Proxyer som fungerer med Puppeteer og Playwright

To tilfeller vi gjenskapte

Begge ble kjørt mot en testproxy, her omskrevet med dokumentasjonsadressen 203.0.113.10:8080 og user123:pass456. I et vanlig Chrome-vindu blir ikke 407-tilfellet til en tunnelfeil; Chrome åpner i stedet et påloggingsvindu for proxyens brukernavn og passord. Tunnelfeil forårsaket av en 407 dukker derfor hovedsakelig opp i automatiseringsverktøy og i apper som ikke kan be om passord.

Proxy svarer CONNECT medChrome visercurl viser
407 uten mulighet til å angi passord (headless Chrome)ERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 407
502 fordi proxyen ikke når nettstedetERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 502

Årsaker, mest sannsynlige først

  • Et automatiseringsskript sender ingen påloggingsinformasjon. Chromes --proxy-server-flagg godtar kun vert og port, ikke bruker:passord. Headless Puppeteer eller Selenium mottar en 407 og rapporterer en tunnelfeil.
  • En mobilapp bak en passordbeskyttet Wi-Fi-proxy. Appen har ingen påloggingsdialog, så HTTPS slutter å virke mens nettleseren fortsatt fungerer.
  • Proxyen når ikke målet. Den returnerer 502 til CONNECT; 502 Bad Gateway-siden dekker dette grundig.
  • Kun enkelte nettsteder feiler. Destinasjonen blokkerer eller er nede, mens andre nettsteder fungerer via samme proxy.

Finn den faktiske koden med én curl-kommando

Kjør curl -v -x http://user123:[email protected]:8080 https://example.com med dine egne verdier. Se på linjen rett etter > CONNECT example.com:443 HTTP/1.1: en 407 betyr at du bør følge 407-guiden; en 502 peker mot destinasjonen eller ruten bak proxyen. Hvis du foretrekker å slippe terminalen, kan du lime inn linjen i proxy-sjekkeren, som rapporterer auth failed (407) eller HTTP 502 for de samme situasjonene.

Løsninger etter miljø

  • Puppeteer: behold --proxy-server=http://host:port ved oppstart og kall page.authenticate({ username, password }) før navigering. Komplett eksempel i Puppeteer proxy-veiledningen.
  • Playwright: send inn proxy: { server, username, password } når du starter nettleseren, så svarer Playwright på 407 for deg; se Playwright.
  • Selenium: Chrome godtar ikke bruker:passord på kommandolinjen; Selenium-veiledningen viser fungerende alternativer.
  • Chrome på Windows: hvis påloggingsvinduet aldri vises, kontroller om en proxy-utvidelse blokkerer det, og prøv igjen i et vindu uten utvidelser.
  • Mobiler: for apper som krever en autentisert proxy, bruk en proxy-app som støtter bruker:passord slik det beskrives i Android-oppsettsguiden.

Trinn for trinn

  1. 1

    Identifiser CONNECT-svaret

    Kjør curl -v -x med din proxy-linje, eller lim den inn i sjekkeren, for å finne ut om proxyen returnerer 407 eller 502.

  2. 2

    For 407: oppgi påloggingsinformasjon riktig

    I skript bør du bruke bibliotekets autentiserings-hook i stedet for å legge bruker:passord inn i --proxy-server.

  3. 3

    For 502: prøv et annet nettsted

    Last et stort nettsted som example.com via samme proxy. Hvis det fungerer, er det den opprinnelige destinasjonen som er problemet.

  4. 4

    Kjør på nytt og bekreft utgående IP

    Når tunnelen åpnes, besøk min IP i samme nettleser for å bekrefte at trafikken går gjennom proxyen.

Ofte stilte spørsmål

Hvorfor laster http-sider mens https-sider feiler?

Vanlig http krever ingen CONNECT; proxyen videresender forespørselen direkte. Kun https åpner en tunnel, så tunnelfeil oppstår bare der.

Hva forårsaker ERR_TUNNEL_CONNECTION_FAILED på Android?

Oftest en app som ikke kan sende brukernavn og passord til en Wi-Fi-proxy. Prøv samme side i Chrome for Android; hvis Chrome kan be om innlogging og laste siden, ligger problemet i appen.

Kan jeg legge bruker:passord inn i --proxy-server?

Nei. Chrome ignorerer påloggingsinformasjon i det flagget, noe som fører til en 407 og tunnelfeil. Autentiser via Puppeteer, Playwright eller en utvidelse i stedet.

Vil bytte til SOCKS5 fjerne tunnelfeilen?

Kun dersom bestillingen din er SOCKS5. VinaProxy tilbyr både HTTP(S) og SOCKS5; velg protokollen bestillingen din viser i kontrollpanelet, ettersom feil samsvar fører til andre feil.

Proxyer som fungerer med Puppeteer og Playwright

VinaProxy-proxyer bruker standard innlogging med bruker:passord som populære automatiseringsbiblioteker støtter rett ut av boksen.

Se priser

Related articles

Proxy-feil
Slik løser du 407 Proxy Authentication Required
En 407 Proxy Authentication Required-feil betyr at proxyen svarte, men avviste innloggingen. Se reelle curl-data, vanlige årsaker og løsninger per app.
Proxy-feil
502 Bad Gateway-proxyfeil: Finn ut hvem som sendte den
En 502 Bad Gateway via proxy betyr at en mellomserver ikke fikk gyldig svar. Finn ut om feilen ligger hos proxyen eller nettstedet, med ekte curl-utdata.
Proxy-oppsett
Slik setter du opp en autentisert proxy i Puppeteer (Node.js)
Konfigurer autentiserte HTTP(S)-proxyer i Node.js Puppeteer med oppstartsflagget --proxy-server og await page.authenticate(). Kopier fungerende eksempler.
Proxy-oppsett
Hvordan sette opp proxy i Playwright (nettleser- og kontekstautentisering)
Konfigurer autentiserte HTTP(S)-proxyer i Playwright for Node.js og Python, og kjør flere isolerte statiske IP-er i ulike BrowserContexts. Kopier eksemplene.
Proxy-oppsett
Hvordan sette opp en autentisert proxy i Selenium WebDriver
Konfigurer HTTP(S)-proxyer med brukernavn og passord i Selenium WebDriver via selenium-wire eller en onAuthRequired-utvidelse for Chrome. Se koden her.
Gratisverktøy
Proxy-sjekker: Sjekk proxyene dine på nett
Gratis proxy-sjekker: lim inn opptil 100 proxyer som ip:port:user:pass og sjekk status, utgående IP og forsinkelse på nett. Lær hva hver feilmelding betyr.
Proxy-oppsett
Slik konfigurerer du proxy i Google Chrome
Konfigurer VinaProxy HTTP(S)-proxyer i Google Chrome uten å endre hele OS-IP-en, ved hjelp av utvidelser, --proxy-server-flagg eller egne brukerprofiler.
Proxy-oppsett
Slik konfigurerer du proxy på Windows 10 og Windows 11
Konfigurer VinaProxy HTTP(S)-proxyer på Windows 10 og Windows 11 med WinINET-systeminnstillinger, PowerShell-miljøvariabler eller netsh winhttp.