Domain IP Lookup

Два принципиально разных сценария

dig / nslookup

Все детали протокола, скрипты, офлайн

Веб-инструмент

Без настройки, массовые проверки, можно делиться

Практические руководства

Исправьте «Server DNS Address Could Not Be Found»

7 мин чтенияАвтор: Domain IP Lookup Team

Звонок обычно звучит так: «Интернет сломался, но только для одного сайта». Chrome показывает серую страницу, маленького динозавра и слова Server DNS address could not be found, а под ними более мелким шрифтом — DNS_PROBE_FINISHED_NXDOMAIN. Всё остальное загружается нормально. Человек на том конце провода уже дважды перезагрузил роутер.

Я исправлял эту ошибку больше раз, чем могу сосчитать, и она почти никогда не означает того, чего боятся люди. С Chrome всё в порядке, и сайт обычно никуда не исчезал. Ваш компьютер запросил адрес сайта, и где-то по цепочке ответ вернулся в виде «такого места нет». Эта цепочка — кэш браузера, кэш операционной системы, роутер, резолвер провайдера — состоит из нескольких звеньев, и любое из них может оказаться лжецом. Вся работа — найти, какое именно.

Первый вопрос: сайт недоступен для всех или только для вас?

Прежде чем трогать хоть одну настройку, возьмите телефон. Отключите Wi-Fi, чтобы телефон использовал мобильные данные, и откройте сайт. Вы только что провели самый полезный тест во всём этом руководстве, потому что за пять секунд сменили весь сетевой путь.

  • Сайт загружается через мобильные данные. С сайтом всё в порядке. Что-то между вашим компьютером и резолвером провайдера даёт вам неверный ответ, и всё, что ниже, это исправит.
  • Сайт не открывается и там. Попробуйте ещё один сайт, которым пользуетесь каждый день. Если он загружается, проблема, скорее всего, на стороне сайта: истекла регистрация домена, неудачно изменили DNS или хостинг всё отключил. С вашего стула это не исправить.
  • Не открывается ничего и нигде. Это уже не эта ошибка; это само подключение. Другая проблема, другое руководство.

Если вы хотите тот же ответ с большим охватом, чем даёт телефон, средство проверки распространения DNS запрашивает публичные резолверы в нескольких странах и показывает, согласны ли они насчёт адреса сайта. Если резолверы по всему миру возвращают NXDOMAIN, у сайта настоящая проблема с DNS. Если все они спокойно возвращают адрес, неверный ответ рождается где-то рядом с вами.

Что на самом деле означает эта ошибка

DNS — это поиск, который превращает имя вроде example.com в числовой адрес, к которому браузер на самом деле подключается. Эта ошибка означает, что поиск вернулся пустым не случайно: резолвер активно сообщил, что имени не существует. Именно это означает NXDOMAIN, а наше объяснение того, что означает NXDOMAIN, подробно разбирает сам ответ.

Вот часть, на которой люди спотыкаются: «не существует» может быть правдивым ответом о сайте, который удалили, или устаревшим ответом, который ваше собственное оборудование сохранило в кэше раньше и продолжает повторять. Сообщение об ошибке выглядит одинаково в обоих случаях. Поэтому исправления ниже бьют по кэшам и резолверам, а не по самому браузеру: переустанавливать Chrome из-за этого — всё равно что покупать новый телефон из-за того, что у одного контакта сменился номер.

Сопоставьте симптом с причиной

СимптомВероятная причинаБыстрая проверка
Один сайт не открывается, всё остальное работаетУстаревший кэш или плохая запись в файле hostsОткройте сайт на телефоне через мобильные данные
Все сайты не открываются с той же ошибкойВаш резолвер или DNS роутера недоступенСмените адрес резолвера на компьютере
Не открывается только при подключённом VPNDNS у VPN сломан или заблокированОтключите VPN и перезагрузите страницу
Вчера работало, сломалось после переезда сайтаСтарый ответ всё ещё в кэше рядом с вамиПроверьте сайт в средстве проверки распространения
Снова ломается через день после исправленияРоутер раздаёт мёртвый резолверСравните настройки DNS роутера и компьютера

Исправления в том порядке, в котором я их действительно пробую

  1. Очистите кэш DNS

    В Windows откройте командную строку и выполните ipconfig /flushdns. На Mac это sudo dscacheutil -flushcache в Терминале. Это выбрасывает сохранённые ответы компьютера, включая неверный, и заставляет выполнить новый поиск. Это занимает десять секунд и ничему не вредит, поэтому это всегда мой первый шаг.

  2. Перейдите на публичный резолвер

    Если очистка ничего не изменила, неверный ответ приходит сверху. Смените DNS-серверы компьютера на публичный резолвер, например 1.1.1.1 или 8.8.8.8, и перезагрузите страницу. Если сайт оживёт, лжецом был резолвер провайдера: оставьте настройку как есть или держите её, пока провайдер не разберётся сам.

  3. Проверьте файл hosts

    Файл hosts полностью перекрывает DNS. Если строка в нём связывает имя сайта со старым адресом — оставленная старым программным обеспечением, прошлым экспериментом или чем-то, что вы вставили годы назад и забыли, — смена резолвера не поможет, потому что компьютер даже не спрашивает. Откройте файл, найдите имя сайта и удалите или закомментируйте любую найденную строку.

  4. Перезагрузите роутер, один раз

    Роутеры тоже кэшируют ответы, а дешёвые делают это плохо. Одна перезагрузка очищает этот кэш и заново устанавливает соединение. Я говорю «один раз», потому что перезагрузка четыре раза подряд, в чём звонящие часто признаются, делает ровно то же, что и одна перезагрузка.

  5. Отключите VPN и проверьте снова

    VPN перенаправляет ваши DNS-запросы на свои серверы. Если они недоступны, неверно настроены или туннель наполовину умер, пока соединение оставалось активным, поиск имён будет завершаться ошибкой, хотя всё выглядит подключённым. Отключите полностью — не на паузу, а именно отключите — и перезагрузите страницу.

Две вещи, в которые люди клянутся, но которые редко помогают

Переустановка браузера. У браузера есть свой небольшой кэш, конечно, но эта ошибка возникает из-за сбоя поиска на уровне системы, а свежая установка наследует тот же резолвер, тот же файл hosts и тот же роутер. Вы потратите двадцать минут на восстановление закладок, чтобы вернуться к динозавру.

Вторая — это «подождите 48 часов», повторяемое как заклинание. Ожидание действительно исправляет один сценарий: сайт на самом деле недавно изменил свой DNS, и старый ответ всё ещё вытекает из кэшей по всему миру. Наше руководство по диагностике ошибки «сайт недоступен» отделяет эту игру в ожидание от неисправностей, которые вы можете исправить сами. Но если сайт сегодня загружается на вашем телефоне, ожидание вашу сеть не починит — а пять шагов выше починят, обычно за десять минут.

Когда ошибку показывает только один браузер

Вот вариант, который часами уводит людей по ложному пути: сайт не открывается в Chrome, но прекрасно загружается в другом браузере — на той же машине, в той же сети, в ту же минуту. Один этот факт одним махом исключает ваш роутер, вашего провайдера и сам сайт. Разница живёт внутри самого браузера.

Современные браузеры всё чаще выполняют собственные запросы, вместо того чтобы доверять системе. В Chrome есть настройка Secure DNS, которая может отправлять запросы по зашифрованному соединению к резолверу, выбранному самим браузером, в обход того, что настроен на вашем компьютере; в Firefox есть похожая функция со своими значениями по умолчанию. Если этот выбранный браузером путь сломан — или просто хранит устаревший ответ, который остальная часть вашей системы уже забыла, — вы получаете эту ошибку ровно в одной программе, пока всё остальное работает. Настройка безопасного DNS браузера на использование системного резолвера — или его отключение — это двухминутная проверка, которая всё проясняет.

Обратное разделение не менее информативно: все браузеры терпят неудачу, но запрос из командной строки проходит успешно, что указывает на нечто общее для браузеров — настройки системного резолвера, файл hosts, саму сеть. Одна программа против всех программ — самый быстрый из известных мне способов найти слой, который держит неправильный ответ, и поэтому мой первый вопрос в таких звонках никогда не касается настроек. Он звучит так: «это не работает везде или только здесь?»

Резолверы можно также опрашивать по одному, вместо того чтобы гадать. Команда вроде nslookup example.com 1.1.1.1 запрашивает ответ у одного конкретного резолвера, игнорируя ваши значения по умолчанию. Спросите свой обычный резолвер, затем спросите публичный. Если публичный резолвер возвращает адрес, а ваш возвращает NXDOMAIN, вы поймали лжеца с поличным — и вы знаете, состоит ли оставшаяся работа в очистке кэша, в ожидании или в окончательной смене настройки.

Тот же сбой в других местах носит другие костюмы, что сбивает с толку людей, ищущих помощи. Chrome на Android называет это ERR_NAME_NOT_RESOLVED, Firefox говорит, что сервер не найден, а Safari сообщает, что не может найти сервер. Разные слова — одно и то же событие под ними: запрос вернулся с ответом, что имя не существует. Если исправление в руководстве по любому из этих сообщений на самом деле касается кэшей или резолверов, оно применимо и к вашему: переведите название ошибки, сохраните метод.

Когда это действительно не ваша проблема

Иногда мой ответ на таких звонках таков: дело в них, а не в вас. У домена, регистрация которого истекла, забирают серверы имён, и каждый резолвер на планете начинает отвечать NXDOMAIN — та же самая ошибка, только теперь она говорит правду. Владелец сайта в разгар миграции тоже может опубликовать сломанную запись и уронить имя для всех разом.

Признак — постоянство. Ваш телефон не открывает сайт, телефон соседа не открывает, и локальные приёмы из нашего руководства по исправлению ошибок DNS_PROBE_FINISHED в Windows ничего не меняют — в то время как публичные резолверы по всему миру согласны, что адреса нет. В этот момент закройте вкладки настроек. С вашей стороны ремонтировать больше нечего; сайт вернётся, когда владелец исправит запись, или не вернётся вовсе.

Нужно проверить публичные DNS-адреса домена? Воспользуйтесь инструментом Domain IP Lookup.

Часто задаваемые вопросы

Читайте также

Четыре исхода — четыре разных дальнейших шага

NXDOMAINИмени не существует: повторять бессмысленно
TIMEOUTОтвет не пришёл вовремя: часто временная ошибка
SERVFAILСервер не смог обработать запрос: иногда временная ошибка
REFUSEDОтклонено политикой: редко сбой, редко временно
Устранение неполадок

ERR_NAME_NOT_RESOLVED: что означает ошибка и как её исправить

Что значит ERR_NAME_NOT_RESOLVED в Chrome и как исправить её на компьютере, Android и iPhone: таблица симптомов и проверки DNS.

6 мин чтения

Четыре уровня, проверяемые по порядку

DNS

разрешение имени

Транспорт

TCP-соединение

TLS

проверка сертификата

Приложение

ответ по HTTP

Устранение неполадок

Диагностика ошибки «Не удаётся получить доступ к сайту»: послойная проверка

Разберите ошибку «Не удаётся получить доступ к сайту» по шагам: определите тип ошибки, затем проверьте DNS, маршрут, TCP, TLS и HTTP через dig, curl и openssl.

8 мин чтения

Четыре исхода — четыре разных дальнейших шага

NXDOMAINИмени не существует: повторять бессмысленно
TIMEOUTОтвет не пришёл вовремя: часто временная ошибка
SERVFAILСервер не смог обработать запрос: иногда временная ошибка
REFUSEDОтклонено политикой: редко сбой, редко временно
Устранение неполадок

Как исправить DNS_PROBE_FINISHED_NXDOMAIN в Windows: найдите сбойный уровень

Как исправить DNS_PROBE_FINISHED_NXDOMAIN в Chrome на Windows: по порядку проверяем браузер, Windows, роутер и провайдера, с точными командами.

8 мин чтения