ERR_TUNNEL_CONNECTION_FAILED: что значит и как исправить

Advertisement
Что такое ERR_TUNNEL_CONNECTION_FAILED?
ERR_TUNNEL_CONNECTION_FAILED — ошибка Chrome и Edge, которая возникает только тогда, когда браузер работает через прокси-сервер. В исходном коде Chromium сетевая ошибка -111 описана так: «Не удалось установить туннельное соединение через прокси» (A tunnel connection through the proxy could not be established). Отдельной страницы ошибки для неё нет, поэтому вы видите общую: «Не удается получить доступ к сайту. Веб-страница по адресу …, возможно, временно недоступна или была перемещена на новый веб-адрес», а под ней — ERR_TUNNEL_CONNECTION_FAILED.
Этот общий текст вводит в заблуждение. С сайтом обычно всё в порядке. Сбой произошёл на шаг раньше — между браузером и прокси, который должен пересылать ваш трафик.
Многие, кто видит эту ошибку, даже не подозревают, что пользуются прокси. Его может незаметно включить VPN-приложение, расширение браузера, скрипт автонастройки в сети или рекламное ПО, поэтому первым делом нужно выяснить, какой прокси Chrome использует на самом деле.
Как работает прокси-туннель (и почему он не открывается)
HTTPS-трафик зашифрован от начала до конца, поэтому обычный веб-прокси не может его прочитать. Вместо этого браузер просит прокси открыть «сырой» туннель специальным запросом:
CONNECT example.com:443 HTTP/1.1
Host: example.com:443
HTTP/1.1 200 Connection established <- туннель открыт, HTTPS идёт через него
HTTP/1.1 403 Forbidden <- или прокси отказывает: ERR_TUNNEL_CONNECTION_FAILEDЕсли прокси отвечает чем угодно, кроме успеха, — например, 403, потому что сайт заблокирован, или 502, потому что сам прокси не может достучаться до сайта, — Chrome сдаётся и показывает ERR_TUNNEL_CONNECTION_FAILED.
Advertisement
Причины ERR_TUNNEL_CONNECTION_FAILED
| Причина | Типичный признак |
|---|---|
| Устаревшие или неверные настройки прокси в Windows или macOS | Не открывается ни один HTTPS-сайт ни в одном браузере |
| Прокси- или VPN-расширение в Chrome | Chrome не открывает сайт, Firefox открывает; в режиме инкогнито всё работает |
| Автонастройка прокси (PAC/WPAD), указывающая на неработающий прокси | Ошибка только в одной сети, часто в корпоративной |
| Рабочий или школьный прокси блокирует сайт | Не открываются лишь некоторые сайты, всё остальное работает |
| Прокси-сервер не работает или перегружен | Затронуты все пользователи сети |
| Рекламное или вредоносное ПО, которое прописало прокси | Незнакомый прокси появляется снова и снова |
Решение 1: посмотрите, какой прокси Chrome использует на самом деле
Откройте chrome://net-internals/#proxy в адресной строке, нажмите Re-apply settings и Clear bad proxies (эта служебная страница Chrome есть только на английском), затем обновите сайт. Сам прокси эта страница больше не показывает. Чтобы увидеть действующие настройки прокси (effective proxy settings), которые использует Chrome, включая скрипт автонастройки, сохраните журнал на странице chrome://net-export и откройте его в NetLog viewer (netlog-viewer.appspot.com), в разделе Proxy.
Если там написано «Use DIRECT connections» или прокси не указан, дело не в прокси, и стоит проверить, не блокирует ли сайт ваша сеть. Если там указан прокси или PAC-скрипт, которого вы не узнаёте, переходите к решениям 2 и 3, чтобы выяснить, откуда он взялся. Поможет и What Is My IP: если показанные местоположение или провайдер не ваши, трафик идёт через прокси или VPN.
Advertisement
Решение 2: отключите системный прокси (если вы им не пользуетесь)
Chrome и Edge используют настройки прокси операционной системы. Если вы не пользуетесь прокси намеренно, выключите его:
Windows 11: Параметры → Сеть и Интернет → Прокси-сервер. В разделе «Настройка прокси вручную» выключите Использовать прокси-сервер. В разделе «Автоматическая настройка прокси» оставьте включённым Определять параметры автоматически, но выключите Использовать сценарий настройки, если только его не выдала ваша организация.
macOS: Системные настройки → Сеть → ваше подключение → Подробнее… → Прокси. Выключите все прокси, включая автоматическую настройку прокси, если она вам не нужна.
:: В Windows есть ещё отдельный прокси для системных служб (WinHTTP)
netsh winhttp show proxy
netsh winhttp reset proxyРешение 3: проверьте расширения, VPN-приложения и политики Chrome
Расширения: откройте
chrome://settings/system. Если прокси управляет расширение, Chrome покажет пометку об этом и кнопку, чтобы его отключить. В остальных случаях отключайте прокси- и VPN-расширения на страницеchrome://extensionsпо одному.VPN-приложения: некоторые VPN-приложения работают как локальный прокси, а не как полноценный VPN. Полностью закройте приложение, а не просто отключитесь от сервера, затем обновите страницу.
Политики: откройте
chrome://policy. Если там есть политики прокси, например ProxyMode, ProxyServer или ProxyPacUrl, прокси принудительно задаёт ваша организация или установленная программа, и менять его нужно в источнике (или через IT-отдел).
Advertisement
Решение 4: сбросьте сетевые настройки и очистите кеш DNS
Если с настройками прокси всё в порядке, а ошибка не исчезает, сбросьте сетевую конфигурацию. В Windows выполните команды ниже в командной строке от имени администратора и перезагрузите компьютер; на Mac удалите и заново добавьте сеть и очистите кеш DNS.
ipconfig /flushdns
netsh winsock reset
netsh int ip reset
netsh winhttp reset proxyРешение 5: в рабочей или школьной сети спросите, прежде чем обходить прокси
В корпоративных и школьных сетях прокси часто обязателен, и многие используют его, чтобы блокировать целые категории сайтов. Если ERR_TUNNEL_CONNECTION_FAILED появляется только на некоторых сайтах, а всё остальное работает, прокси почти наверняка блокирует эти сайты намеренно.
Отключение прокси в таких сетях обычно не помогает, потому что прямые соединения тоже заблокированы. Спросите IT-отдел, можно ли разрешить сайт, или откройте его из другой сети.
Advertisement
Администраторам прокси
Чтобы увидеть, как именно прокси отвечает на запрос CONNECT, воспроизведите его с помощью curl на клиентской машине:
curl -v -x http://proxy.example.com:3128 https://example.com/ -o /dev/null
# Успех: "HTTP/1.1 200 Connection established"
# Ошибка: "CONNECT tunnel failed, response 403"
# (старые версии curl: "Received HTTP code 403 from proxy after CONNECT")403 указывает на правило доступа, 407 — на аутентификацию, а 502/503 — на то, что прокси не может достучаться до адресата (проверьте DNS и исходящий файрвол самого прокси). В конфигурации Squid по умолчанию правило http_access deny CONNECT !SSL_ports запрещает CONNECT на любой порт, которого нет в списке SSL_ports (по умолчанию это 443), поэтому HTTPS-сайты на портах вроде 8443 не открываются, пока вы их не добавите. Проверить снаружи, доступен ли вообще порт адресата, можно с помощью Port Checker от DNS Robot.
ERR_TUNNEL_CONNECTION_FAILED и похожие ошибки
| Ошибка | Код | Что не сработало |
|---|---|---|
| ERR_TUNNEL_CONNECTION_FAILED | -111 | Прокси не смог или не захотел открыть HTTPS-туннель |
| ERR_PROXY_CONNECTION_FAILED | -130 | Chrome не смог подключиться к самому прокси-серверу |
| ERR_CONNECTION_RESET | -101 | Открытое соединение оборвано TCP-сбросом |
| ERR_NAME_NOT_RESOLVED | -105 | DNS не нашёл домен |
Связанные руководства: ERR_CONNECTION_RESET, ERR_NETWORK_CHANGED и ERR_NAME_NOT_RESOLVED.
Ваш трафик идёт через прокси?
What Is My IP от DNS Robot показывает публичный IP-адрес, провайдера и местоположение, которые видят сайты. Если они не совпадают с вашим подключением, на пути стоит прокси или VPN.
Попробовать What Is My IPAdvertisement
Часто задаваемые вопросы
Это значит, что Chrome работает через прокси-сервер, а прокси не смог или не захотел открыть туннель, нужный для HTTPS-сайта. В Chromium это сетевая ошибка -111. С самим сайтом обычно всё в порядке: проблема в прокси или в настройках прокси.