VVinaProxy

Прокси арқылы ERR_TUNNEL_CONNECTION_FAILED қатесін түзету

Updated:

https:// бетін прокси арқылы жүктеу үшін браузер CONNECT сұрауын жібереді және проксидің сайтқа туннель ашуын күтеді. ERR_TUNNEL_CONNECTION_FAILED қатесі прокси сұрауды қабылдаудың орнына оған қатемен жауап берген кезде пайда болады. Мәселе мынада: Chrome нақты қандай қате екенін көрсетпейді, сондықтан алдымен нақты кодты анықтау қажет.

Puppeteer және Playwright-пен жұмыс істейтін проксилер

Біз қайталап көрген екі жағдай

Екі жағдай да құжаттамалық 203.0.113.10:8080 мекенжайы және user123:pass456 деректерімен көрсетілген сынақ проксиінде тексерілді. Қалыпты Chrome терезесінде 407 жағдайы туннель қатесіне айналмайды; оның орнына Chrome проксидің пайдаланушы аты мен паролін сұрайтын кіру терезесін ашады. Сондықтан 407 себеп болған туннель қателері көбінесе автоматтандыру құралдарында және пароль енгізуді сұрай алмайтын қолданбаларда кездеседі.

Прокси CONNECT сұрауына мына жауапты қайтарадыChrome көрсетедіcurl көрсетеді
407 пароль енгізу мүмкіндігі жоқ (headless Chrome)ERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 407
502 себебі прокси сайтқа қол жеткізе алмайдыERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 502

Себептері, ең ықтималынан бастап

  • Автоматтандыру скрипті кіру деректерін жібермейді. Chrome браузерінің --proxy-server жалаушасы user:pass емес, тек хост пен портты қабылдайды. Headless Puppeteer немесе Selenium 407 қатесін алып, туннель ақауын хабарлайды.
  • Парольмен қорғалған Wi-Fi проксиі арқылы жұмыс істейтін телефон қолданбасы. Қолданбада кіру терезесі жоқ, сондықтан браузер жұмыс істеп тұрғанымен, HTTPS істен шығады.
  • Прокси мақсатты сайтқа қол жеткізе алмайды. Ол CONNECT сұрауына 502 жауабын қайтарады; бұл туралы толығырақ 502 Bad Gateway бетінде жазылған.
  • Тек кейбір сайттар ашылмайды. Мақсатты сайт бұғатталған немесе істемей тұр, ал басқа сайттар дәл сол прокси арқылы жұмыс істейді.

Нақты кодты бір curl командасымен анықтау

curl -v -x http://user123:[email protected]:8080 https://example.com командасын өз мәндеріңізбен іске қосыңыз. > CONNECT example.com:443 HTTP/1.1 жолынан кейінгі жолға қараңыз: 407 болса, 407 нұсқаулығын орындау керек; ал 502 мақсатты ресурсқа немесе проксиден кейінгі бағытқа байланысты мәселені көрсетеді. Егер терминалды пайдаланғыңыз келмесе, жолды прокси тексеру құралына қойыңыз, ол дәл осындай жағдайларда auth failed (407) немесе HTTP 502 нәтижесін хабарлайды.

Әр ортаға арналған шешімдер

  • Puppeteer: іске қосу кезінде --proxy-server=http://host:port қалдырыңыз және бетке өтуден бұрын page.authenticate({ username, password }) шақырыңыз. Толық мысал Puppeteer прокси нұсқаулығында.
  • Playwright: браузерді іске қосқанда proxy: { server, username, password } жіберіңіз, сонда Playwright 407 жауабын өзі өңдейді; Playwright бөлімін қараңыз.
  • Selenium: Chrome пәрмен жолында user:pass қабылдамайды; тиімді шешімдер Selenium нұсқаулығында көрсетілген.
  • Windows жүйесіндегі Chrome: егер кіру терезесі мүлдем шықпаса, прокси кеңейтімі оны бұғаттап тұрған-тұрмағанын тексеріп, кеңейтімдері жоқ терезеде қайталап көріңіз.
  • Телефондар: аутентификацияны қажет ететін прокси үшін user:pass қолдайтын прокси қолданбасын пайдаланыңыз, бұл Android баптау нұсқаулығында сипатталған.

Қадам бойынша

  1. 1

    CONNECT жауабын анықтаңыз

    Проксидің 407 немесе 502 қайтаратынын білу үшін прокси жолыңызбен curl -v -x пәрменін іске қосыңыз немесе оны тексеру құралына қойыңыз.

  2. 2

    407 үшін: кіру деректерін дұрыс беріңіз

    Скрипттерде user:pass мәнін --proxy-server ішіне жазудың орнына кітапхананың аутентификация функциясын пайдаланыңыз.

  3. 3

    502 үшін: басқа сайтты көріңіз

    Сол прокси арқылы example.com сияқты үлкен сайтты ашыңыз. Егер ол жұмыс істесе, мәселе бастапқы сайтта.

  4. 4

    Қайта іске қосып, шығыс IP-ді тексеріңіз

    Туннель ашылғаннан кейін трафиктің прокси арқылы өтіп жатқанын растау үшін сол браузерде менің IP-ім бетіне кіріңіз.

Жиі қойылатын сұрақтар

Неге http беттері жүктеліп, https беттері ашылмайды?

Қарапайым http протоколына CONNECT қажет емес; прокси сұрауды тікелей бағыттайды. Тек https туннель ашады, сондықтан туннель қателері тек сонда пайда болады.

Android-те ERR_TUNNEL_CONNECTION_FAILED пайда болуына не себеп?

Көбінесе пайдаланушы аты мен парольді Wi-Fi проксиіне бере алмайтын қолданба себеп болады. Сол бетті Android-ке арналған Chrome арқылы ашып көріңіз; егер Chrome деректерді сұрап, оны жүктей алса, мәселе қолданбада.

user:pass мәнін --proxy-server ішіне жазуға бола ма?

Жоқ. Chrome бұл жалаушадағы тіркелгі деректерін елемейді, бұл 407 қатесіне және туннель ақауына әкеледі. Оның орнына Puppeteer, Playwright немесе кеңейтім арқылы аутентификация жасаңыз.

SOCKS5 протоколына ауысу туннель қатесін жоя ма?

Егер тапсырысыңыз SOCKS5 болса ғана. VinaProxy HTTP(S) және SOCKS5 екеуін де ұсынады; бақылау тақтасында тапсырысыңызда көрсетілген протоколды таңдаңыз, өйткені сәйкессіздік басқа қателерді тудырады.

Puppeteer және Playwright-пен жұмыс істейтін проксилер

VinaProxy проксилері танымал автоматтандыру кітапханалары бірден қолдайтын стандартты user:pass логинін пайдаланады.

Бағаларды көру

Related articles

Прокси қателері
407 Proxy Authentication Required қатесін қалай түзетуге болады
407 Proxy Authentication Required қатесі проксидің жауап беріп, логинді қабылдамағанын білдіреді. Нақты curl нәтижесі, себептері мен шешу жолдарын қараңыз.
Прокси қателері
Проксидегі 502 Bad Gateway қателері: оны кім жібергенін анықтаңыз
Прокси арқылы шыққан 502 Bad Gateway аралық сервердің дұрыс жауап алмағанын білдіреді. Нақты curl мысалдарымен қатенің проксиден не сайттан екенін анықтаңыз.
Проксиді баптау
Puppeteer (Node.js) ішінде аутентификациялы проксиді қалай баптау керек
Node.js Puppeteer-де --proxy-server жалаушасы мен await page.authenticate() арқылы аутентификациялы HTTP(S) проксиін баптаңыз. Дайын мысалдарды көшіріп алыңыз.
Проксиді баптау
Playwright-те проксиді қалай баптауға болады (Браузер және контекст бойынша аутентификация)
Playwright-те Node.js пен Python үшін HTTP(S) проксиді баптап, BrowserContexts арқылы оқшауланған статикалық IP-лерді қосыңыз. Мысалдарды көшіріп алыңыз.
Проксиді баптау
Selenium WebDriver-де аутентификацияланған проксиді қалай баптауға болады
selenium-wire немесе Chrome onAuthRequired кеңейтімімен Selenium WebDriver-де логин:құпия сөзбен аутентификацияланатын HTTP(S) проксиін баптаңыз. Кодты көріңіз.
Тегін құралдар
Прокси тексеру: проксилеріңізді онлайн тексеріңіз
Тегін прокси тексеру: 100-ге дейін проксиді ip:port:user:pass түрінде қойып, күйін, шығыс IP мен кідірісін онлайн тексеріңіз. Әр қатенің мәнін біліңіз.
Проксиді баптау
Google Chrome-да проксиді қалай баптау керек
Кеңейтімдер, --proxy-server жалаушалары немесе бөлек профильдер арқылы бүкіл ОЖ IP-ін өзгертпей, Google Chrome-да VinaProxy HTTP(S) проксиін баптаңыз.
Проксиді баптау
Windows 10 және Windows 11 жүйесінде проксиді қалай баптау керек
WinINET жүйелік параметрлері, PowerShell айнымалылары немесе netsh winhttp арқылы Windows 10 және 11 жүйесінде VinaProxy HTTP(S) проксилерін баптаңыз.