Как отличить сбой DNS от полной потери связи
DNS переводит имена сайтов в числовые адреса. Если он не отвечает, устройство может быть вполне подключено к интернету, но браузер не найдёт ни одного сайта. Для человека картина выглядит одинаково: «интернета нет». Различие обнаруживается двумя простыми проверками.
Первая — обращение по IP-адресу. Если команда ping по адресу публичного сервера проходит, канал работает. Вторая — обращение по имени. Если по адресу пакеты идут, а по имени «не удаётся найти узел», значит, разрешение имён не работает. Порядок использования команды описан в материале о команде ping, а определение DNS есть в словаре.
Итого получается три состояния: нет связи с роутером (проблема локальной сети), нет связи с интернетом (проблема линии или подключения к провайдеру) и нет разрешения имён (проблема DNS). Диагностика помогает быстро определить, в какой из них вы находитесь.
Диагностика по шагам
Двигайтесь от ближнего к дальнему. Так проще всего локализовать сбой.
- Проверьте, есть ли связь с роутером: откройте его веб-интерфейс по адресу шлюза или выполните ping этого адреса.
- Выполните ping по IP-адресу известного публичного сервера. Если ответы приходят, соединение с интернетом есть.
- Выполните ping по имени сайта. Если приходит сообщение о невозможности найти узел, проблема в DNS.
- Проверьте на устройстве, какие DNS-серверы получены: их можно увидеть командой вывода сетевых параметров.
- Если на устройстве прописан адрес роутера, зайдите в настройки роутера и посмотрите, какие DNS-серверы получены от провайдера.
- Проверьте другое устройство в той же сети. Если на нём всё работает, проблема в первом устройстве.
Если пункт 2 не работает, ищите проблему в подключении к провайдеру, а не в DNS: посмотрите статус WAN, индикаторы на роутере и кабель. Некоторые сбои DNS «маскируются» под общий отказ интернета, поэтому этот порядок экономит время.
Где может находиться причина
Причины разделяются по уровню, и от него зависит решение.
| Где проблема | Признаки | Что делать |
|---|---|---|
| Кэш на устройстве | Один компьютер не открывает сайт, другие открывают | Очистить кэш DNS, перезапустить браузер |
| Настройки устройства | Прописан несуществующий DNS-сервер | Вернуть автоматическое получение |
| Роутер | Все устройства в сети без имён, по IP всё работает | Перезагрузить, сменить DNS в настройках |
| DNS-серверы провайдера | Не отвечают у всех клиентов провайдера | Указать другие DNS или обратиться в поддержку |
| Фильтрация или программы | Проблема с отдельными сайтами | Проверить расширения, защитное ПО |
Если проблема возникает время от времени, подозревайте перегруженные DNS-серверы провайдера или роутер, у которого не хватает ресурсов. О последнем говорится в материале о процессоре и памяти. Отдельный класс ошибок — сообщения браузера вроде «DNS_PROBE_FINISHED», их разбор есть в разделе ошибок.
Как сменить DNS на роутере и на устройстве
Если по всем признакам сбой в DNS, попробуйте указать другие серверы. Есть два варианта: изменить настройку на роутере, чтобы новые адреса получили все устройства, или на конкретном компьютере или телефоне.
На роутере найдите в настройках подключения к интернету (раздел WAN) поле DNS-серверов. Обычно можно выбрать автоматическое получение от провайдера или указать адреса вручную. Введите адреса серверов, которым вы доверяете, сохраните настройки и перезагрузите роутер. После этого устройства получат новые значения при следующем обновлении аренды адреса, иногда достаточно переподключиться к сети.
Не оставляйте поле пустым и не вводите адреса случайным образом: неверные значения оставят сеть без разрешения имён. Если вы не уверены, вернитесь к автоматическому режиму. Запишите прежние значения, чтобы иметь возможность откатиться. Если после смены DNS сайты открываются, проблема была в прежних серверах.
Когда обращаться к провайдеру
Есть ситуации, когда самостоятельные меры исчерпаны. Чтобы обращение было эффективным, соберите факты.
- Опишите, что именно не работает: сайты по имени, по IP, у всех устройств или у одного.
- Сообщите результат ping по адресу и по имени, а также какие DNS получены роутером.
- Укажите, что вы уже сделали: перезагрузка, смена DNS, проверка на другом устройстве.
- Уточните время начала проблемы и не оставлены ли какие-либо изменения в настройках.
Если все устройства теряют имена, а по IP связь есть, и смена DNS на другие адреса решила проблему, значит, серверы провайдера действительно недоступны в этот момент. Тогда можно оставить альтернативные серверы или вернуться к автоматическим настройкам после восстановления. Дополнительно посмотрите системный журнал роутера: там иногда видны сообщения о получении параметров от провайдера. См. материал о журнале.
Признаки, которые выдают проблему DNS в браузере
Иногда о сбое DNS можно догадаться ещё до диагностики командами. Браузер в таких случаях показывает характерные сообщения: страница не найдена, сервер не отвечает, не удаётся определить адрес узла. Разные браузеры формулируют это по-разному, а коды вида DNS_PROBE_FINISHED указывают на неудачную попытку разрешить имя.
Дополнительные наблюдения помогают отличить DNS от других причин:
- часть сайтов открывается (те, что уже есть в кэше), а новые нет;
- мессенджеры и приложения, которые ходят по IP или используют собственные серверы, продолжают работать;
- на телефоне в мобильной сети всё открывается, а по Wi-Fi нет;
- сообщение появляется сразу, без долгого ожидания.
Если сайты долго «крутятся» и потом выдают тайм-аут, причина скорее в канале, а не в DNS. Различие важно: чтобы не менять настройки, которые не виноваты. Для разбора браузерных сообщений загляните в раздел ошибок.
Напоследок отметим: если вы часто меняете DNS вручную и забыли, какие значения указывали, лучше вернуться к автоматическому получению и проверить работу. Многие «странные» проблемы возникают именно из-за устаревшего адреса DNS-сервера, который когда-то прописали и забыли. Ведите короткий журнал изменений в настройках сети, тогда и через полгода вы поймёте, что менялось.