Что означает ошибка ERR_CONNECTION_REFUSED
Ошибка ERR_CONNECTION_REFUSED появляется, когда браузер успешно находит сервер по доменному имени, но сервер активно отклоняет попытку установить TCP-соединение. На сетевом уровне это выглядит так: ваш компьютер отправляет пакет SYN на IP-адрес и порт сервера, а в ответ получает пакет RST (сброс), который означает «здесь с вами никто разговаривать не будет».
Это принципиально отличается от других сетевых ошибок:
- ERR_CONNECTION_TIMED_OUT — сервер не отвечает вообще, пакеты молча отбрасываются.
- DNS_PROBE_FINISHED_NXDOMAIN — доменное имя не удалось преобразовать в IP-адрес.
- ERR_CONNECTION_REFUSED — DNS сработал, IP найден, но сервер или промежуточный файрвол явно отвергает соединение.
В разных браузерах сообщение может выглядеть по-разному:
- Chrome, Edge, Brave, Opera: «Не удаётся получить доступ к сайту — сайт [site] не позволяет установить соединение. ERR_CONNECTION_REFUSED».
- Firefox: «Попытка соединения не удалась — Firefox не может установить соединение с сервером».
- Safari: «Safari не может подключиться к серверу».
Независимо от формулировки, причина и способы решения идентичны.
Основные причины возникновения ошибки
Причины ERR_CONNECTION_REFUSED можно разделить на две большие группы: проблемы на стороне сервера и проблемы на стороне клиента (вашего устройства или сети).
На стороне сервера:
- Веб-сервер (Apache, Nginx, Node.js) остановлен, упал или перезапускается.
- Файрвол на сервере блокирует входящие подключения к портам 80 (HTTP) или 443 (HTTPS).
- Сервер перегружен и не принимает новые соединения.
- Сайт временно недоступен для всех посетителей.
На стороне клиента:
- Некорректные настройки прокси — система направляет трафик через прокси-сервер, который выключен или недоступен. Это одна из самых частых причин.
- Устаревший DNS-кеш — сайт переехал на новый IP, но на вашем устройстве всё ещё хранится старый адрес.
- Вмешательство VPN или антивируса — защитное ПО перехватывает соединение и отклоняет его, либо VPN-сервер не может достучаться до сайта.
- Расширения браузера — блокировщики рекламы или расширения приватности могут блокировать подключения к отдельным хостам.
- Файл hosts — домен сопоставлен с неправильным IP (например, 127.0.0.1), и браузер подключается к вашей же машине, которая и отказывает.
- Проблемы с роутером — сбой NAT или переполненная таблица соединений.
Примерно в половине случаев проблема на стороне сервера, в половине — локальная.
Как отличить проблему сервера от локальной неисправности
Прежде чем вносить изменения в настройки системы, важно понять, где именно возникла ошибка. Самый простой способ — проверить доступность сайта с другого устройства и через другую сеть.
Шаг 1. Проверка с другого устройства Откройте проблемный сайт на смартфоне, используя мобильный интернет (Wi-Fi должен быть выключен). Если сайт загружается, проблема локальная — на вашем компьютере или в домашней сети. Если нет — сервер недоступен для всех.
Шаг 2. Использование онлайн-сервисов Сервисы вроде Down For Everyone Or Just Me или встроенные инструменты (например, Port Checker) позволяют проверить, открыт ли порт 80 или 443 для данного домена из внешней сети. Если порты закрыты, веб-сервер лежит или заблокирован файрволом для всех.
Шаг 3. Проверка через командную строку Выполните ping example.com — если ping проходит, а сайт не открывается, машина работает, но веб-сервис мёртв. Если ping не проходит, проблема может быть в DNS или маршрутизации.
Шаг 4. Проверка с другого браузера Если сайт открывается в Firefox, но не в Chrome, причина в настройках или расширениях Chrome. Если не открывается ни в одном браузере — проблема системная.
Если вы уверены, что сайт работает у других, переходите к локальным решениям.
Быстрые решения: перезагрузка, очистка кеша и отключение прокси
Начните с простых действий, которые часто устраняют ошибку без глубокого вмешательства.
1. Перезагрузите роутер и устройство Отключите роутер (и модем, если он отдельный) от питания на 30 секунд, затем включите. Перезагрузите компьютер или телефон. Это очищает таблицу соединений NAT, DNS-кеш и сбрасывает временные сбои.
2. Очистите кеш и cookie браузера В Chrome: меню → «Удалить данные о работе в браузере» → выберите «Всё время» → отметьте «Файлы cookie и другие данные сайтов» и «Изображения и другие файлы, сохранённые в кеше» → «Удалить данные». Альтернатива: нажмите Ctrl+Shift+Del.
3. Очистите DNS-кеш
- Windows:
ipconfig /flushdns(от имени администратора). - macOS:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder. - Linux:
sudo resolvectl flush-caches. - Chrome: откройте
chrome://net-internals/#dnsи нажмите «Clear host cache».
4. Отключите настройки прокси
- Windows: «Параметры» → «Сеть и Интернет» → «Прокси» → выключите «Использовать прокси-сервер».
- macOS: «Системные настройки» → «Сеть» → выберите подключение → «Дополнительно» → «Прокси» → снимите все галочки.
5. Временно отключите VPN и антивирус Отключите VPN-клиент, затем модуль веб-защиты антивируса. Если после этого сайт открылся, добавьте его в исключения антивируса или смените VPN-сервер.
Настройка DNS и смена DNS-сервера
Если DNS-сервер вашего провайдера возвращает устаревшие записи, очистка кеша не поможет — вы просто заново получите тот же неверный IP. Переключение на публичный DNS-сервер даёт актуальные записи и часто ускоряет работу.
Популярные публичные DNS:
- Cloudflare: 1.1.1.1 и 1.0.0.1 (скорость и приватность).
- Google Public DNS: 8.8.8.8 и 8.8.4.4 (надёжность).
- Quad9: 9.9.9.9 (блокировка вредоносных сайтов).
- OpenDNS: 208.67.222.222 и 208.67.220.220 (фильтрация контента).
Как изменить DNS в Windows 11: «Параметры» → «Сеть и Интернет» → ваше подключение → «Свойства оборудования» → «Назначение DNS-сервера» → «Изменить» → выберите «Вручную» → введите предпочитаемый и альтернативный DNS.
Как изменить DNS в macOS: «Системные настройки» → «Сеть» → выберите Wi-Fi → «Подробнее» → «DNS» → добавьте адреса, удалите старые.
Как изменить DNS на Android: «Настройки» → «Подключения» → «Wi-Fi» → нажмите и удерживайте вашу сеть → «Изменить сеть» → «Расширенные настройки» → «IP-настройки» → «Статический» → введите DNS.
Как изменить DNS на iPhone: «Настройки» → «Wi-Fi» → нажмите на значок (i) рядом с вашей сетью → «Настроить DNS» → «Вручную» → добавьте серверы.
После смены DNS очистите DNS-кеш на устройстве и в браузере.
Сброс сетевых настроек и проверка файла hosts
Если простые методы не помогли, можно выполнить сброс сетевого стека. Это исправляет повреждённые настройки TCP/IP, Winsock и другие параметры.
Автоматический сброс сети в Windows 10/11: «Параметры» → «Сеть и Интернет» → «Дополнительные сетевые параметры» → «Сброс сети» → «Сбросить сейчас». Компьютер перезагрузится через 5 минут.
Ручной сброс через командную строку (администратор):
ipconfig /flushdns
ipconfig /release
ipconfig /renew
netsh winsock reset
netsh int ip resetПосле выполнения всех команд перезагрузите компьютер.
Проверка файла hosts Файл hosts находится по пути C:\Windows\System32\drivers\etc\hosts (Windows) или /etc/hosts (macOS/Linux). Откройте его в Блокноте от имени администратора. Удалите все строки, которые не являются комментариями (начинаются с #), особенно те, что связывают домен проблемного сайта с 127.0.0.1 или другим IP. Сохраните файл и проверьте сайт.
Сброс сетевых настроек на macOS: «Системные настройки» → «Сеть» → выберите подключение → нажмите «–» (минус) для удаления, затем «+» для добавления заново. Или используйте команду sudo ifconfig en0 down && sudo ifconfig en0 up.
Исправление ошибки на мобильных устройствах (Android и iOS)
На смартфонах и планшетах ERR_CONNECTION_REFUSED встречается не реже, чем на ПК. Вот что можно сделать.
Общие шаги для Android и iOS:
- Проверьте сайт с другого устройства — если он не открывается нигде, проблема на сервере.
- Переключитесь между Wi-Fi и мобильным интернетом — если на Wi-Fi ошибка есть, а на 4G/5G нет, проблема в домашней сети или роутере. Перезагрузите роутер.
- Отключите VPN — даже если вы не включали его явно, некоторые приложения (например, антивирусы) могут активировать VPN-туннель.
- Очистите данные браузера — в Chrome для Android: «Настройки» → «История» → «Очистить данные браузера» → выберите кэш. В Safari на iPhone: «Настройки» → Safari → «Очистить историю и данные сайтов».
Дополнительно для Android:
- Проверьте настройки экономии трафика и защиты от отслеживания (обычно в «Настройки» → «Подключения» → «Другие настройки сети»).
- Смените DNS вручную: в настройках Wi-Fi выберите «Статический» IP и введите DNS 8.8.8.8 и 8.8.4.4.
Дополнительно для iOS:
- Отключите «Частный узел» (Private Relay) в iCloud: «Настройки» → ваш Apple ID → iCloud → «Частный узел» → выключите.
- Сбросьте сетевые настройки: «Настройки» → «Основные» → «Перенос или сброс iPhone» → «Сброс» → «Сбросить настройки сети». После этого придётся заново ввести пароль от Wi-Fi.
Что делать, если ошибка возникает на вашем собственном сервере
Если вы владелец сайта и посетители сообщают об ERR_CONNECTION_REFUSED, проверьте следующие моменты.
1. Состояние веб-сервера Убедитесь, что служба запущена. Для Apache: systemctl status apache2 (или httpd). Для Nginx: systemctl status nginx. Если служба остановлена, запустите её: systemctl start apache2.
2. Прослушивание портов Выполните netstat -tulnp или ss -tulnp. Убедитесь, что порты 80 (HTTP) и 443 (HTTPS) отображаются в списке. Если нет, проверьте конфигурацию виртуальных хостов.
3. Брандмауэр на сервере Проверьте правила iptables или firewalld. Разрешите входящие соединения на порты 80 и 443:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT4. Хостинг-провайдер Если вы используете виртуальный хостинг, причиной может быть превышение лимитов ресурсов или блокировка аккаунта. Свяжитесь с технической поддержкой.
5. SSL-сертификат Если сертификат истёк или настроен неправильно, некоторые клиенты могут получать отказ. Проверьте срок действия и цепочку сертификатов.
6. Логи ошибок Просмотрите логи веб-сервера (обычно /var/log/apache2/error.log или /var/log/nginx/error.log) — они часто содержат точную причину отказа.
Профилактика: как избежать повторения ошибки
Чтобы ERR_CONNECTION_REFUSED не возвращалась, следуйте нескольким простым рекомендациям.
Для пользователей:
- Регулярно очищайте DNS-кеш и кеш браузера (раз в месяц).
- Используйте надёжные публичные DNS-серверы (Cloudflare или Google) вместо DNS провайдера.
- Не устанавливайте сомнительные расширения браузера — они могут перехватывать трафик.
- Держите антивирус и брандмауэр включёнными, но настройте исключения для доверенных сайтов.
- Если вы часто используете VPN, выбирайте серверы с низкой нагрузкой и проверяйте, не блокирует ли провайдер определённые порты.
Для владельцев сайтов:
- Настройте мониторинг доступности (например, UptimeRobot или Pingdom), чтобы узнавать о сбоях первыми.
- Используйте автоматический перезапуск веб-сервера при падении (systemd, supervisor).
- Регулярно обновляйте SSL-сертификаты и проверяйте конфигурацию брандмауэра.
- При переезде на новый сервер обязательно меняйте DNS-записи и следите за временем распространения (TTL).
Общие советы:
- Если ошибка возникает только на одном сайте, скорее всего, проблема на его стороне — не тратьте время на локальные исправления.
- Если ошибка массовая (не открывается несколько сайтов), ищите причину в настройках сети, прокси или антивирусе.
Вопросы и ответы
В чём разница между ERR_CONNECTION_REFUSED и ERR_CONNECTION_TIMED_OUT?
ERR_CONNECTION_REFUSED означает, что сервер активно отклонил соединение (ответил пакетом RST). ERR_CONNECTION_TIMED_OUT — сервер вообще не ответил, пакеты были потеряны или отброшены без уведомления. Первое говорит о том, что сервер доступен, но не принимает подключения на данном порту; второе — о недоступности сервера или сети.
Может ли антивирус вызывать ошибку ERR_CONNECTION_REFUSED?
Да, особенно антивирусы с функцией проверки HTTPS-трафика. Они создают локальный прокси-сервер, который перехватывает защищённые соединения. Если этот сервис ломается или неправильно настроен, все HTTPS-сайты могут отклоняться. Временно отключите веб-защиту антивируса, чтобы проверить. Если ошибка исчезла, добавьте сайт в исключения.
Почему ошибка ERR_CONNECTION_REFUSED появляется только в одном браузере?
Это указывает на проблему в самом браузере: расширения, кеш, настройки прокси или внутренний DNS-кеш. Попробуйте открыть сайт в режиме инкогнито — если он работает, причина в расширениях. Очистите кеш браузера и DNS-кеш на странице chrome://net-internals/#dns. Также проверьте, не установлено ли в браузере собственное прокси.
Что делать, если ошибка возникает при подключении к localhost?
На localhost ошибка ERR_CONNECTION_REFUSED почти всегда означает, что локальный сервер не запущен или слушает другой порт. Убедитесь, что вы запустили веб-сервер (Apache, Nginx, Node.js) и что он привязан к правильному порту (обычно 80 или 3000). Проверьте командой netstat -an | grep LISTEN, какие порты открыты.
Как очистить DNS-кеш в Chrome отдельно от системы?
Откройте в адресной строке chrome://net-internals/#dns и нажмите кнопку «Clear host cache». Также рекомендуется очистить пулы сокетов на странице chrome://net-internals/#sockets — нажмите «Flush socket pools». Это удалит все кешированные DNS-записи и открытые соединения внутри браузера.
Поможет ли смена DNS-сервера, если сайт не открывается?
Да, если причина в устаревшей DNS-записи у вашего провайдера. Переключение на публичный DNS (например, 1.1.1.1 или 8.8.8.8) заставляет устройство запрашивать актуальные IP-адреса. Это особенно полезно, если сайт недавно переехал на новый сервер. После смены DNS обязательно очистите кеш.
Может ли файл hosts быть причиной ошибки и как его проверить?
Да, если в файле hosts есть запись, связывающая домен с неверным IP (например, 127.0.0.1 example.com), браузер будет пытаться подключиться к локальной машине, которая откажет в соединении. Откройте файл C:\Windows\System32\drivers\etc\hosts (Windows) или /etc/hosts (macOS/Linux) в текстовом редакторе с правами администратора и удалите или закомментируйте (#) все строки, не являющиеся комментариями.