DNS_PROBE_FINISHED_NXDOMAIN: что означает ошибка и как её исправить
Эта громоздкая надпись в Chrome переводится просто: «спросил у DNS адрес такого домена — DNS ответил, что домена не существует». NXDOMAIN = non-existent domain. Ошибка интересна тем, что бывает и мелочью на вашем компьютере, и катастрофой владельца сайта — от опечатки до истёкшего домена. Разбираем обе стороны по шагам.
Что произошло на самом деле
Первое, что делает браузер с любым адресом, — превращает имя домена в IP через DNS. Ошибка NXDOMAIN означает, что DNS-система честно поискала и вернула официальный ответ: такого имени нет. Не «сервер не отвечает», не «сайт сломан» — имени не существует с точки зрения того DNS-сервера, который отвечал. И тут два принципиально разных случая: либо имени действительно нет (опечатка, домен удалён или истёк), либо имя есть, но конкретно ваш DNS-резолвер о нём не знает или врёт (устаревший кэш, кривой DNS-сервер). Диагностика — это разделение одного от другого.
Если вы посетитель: от опечатки до смены DNS
| Шаг | Зачем |
|---|---|
| 1. Проверить адрес по буквам | Банально, но опечатка в домене — причина номер один: NXDOMAIN честно сообщает, что «сайт.рф» с ошибкой не существует |
| 2. Открыть сайт с телефона через мобильный интернет | Если открылся — проблема в DNS вашей сети/устройства, идём дальше. Если нет — похоже, беда у самого домена |
| 3. Сбросить DNS-кэш | Windows: ipconfig /flushdns; Chrome: chrome://net-internals/#dns → Clear host cache |
| 4. Сменить DNS-сервер | Прописать публичный DNS (77.88.8.8 или 8.8.8.8) в настройках сети — резолвер провайдера или роутера бывает и медленным, и «забывчивым» |
| 5. Проверить hosts и VPN | Строки в hosts и DNS внутри VPN-туннеля перекрывают нормальный резолвинг |
Если NXDOMAIN отдаёт ваш собственный домен — это тревога
Для владельца сайта NXDOMAIN — одна из самых страшных ошибок, потому что означает проблему не с сервером, а с самим именем. Причин по существу четыре, и все проверяются за пять минут.
Домен истёк. Самый частый и самый обидный сценарий: дата paid-till прошла, льготный период кончается или кончился, регистратор снял делегирование. Проверяется одной командой whois — смотрите поля paid-till и state; как их читать, мы разбирали в статье про whois. Если увидели просрочку — продлевайте немедленно: после освобождения имя уйдёт перехватчикам за секунды.
Сломаны NS-серверы. Домен оплачен, но серверы, отвечающие за его зону, не отвечают или не знают про домен: DNS-хостинг отключил услугу за неуплату, зону удалили при переезде, NS у регистратора указывают в пустоту. Диагноз ставит dig NS вашдомен.ru +trace — он покажет, на каком звене цепочки делегирования теряется ответ.
Удалена или не создана нужная запись. Сам домен резолвится, а поддомен — нет: NXDOMAIN на www.вашдомен.ru при живом апексе означает, что записи для www просто нет в зоне. Классика после переезда DNS — перенесли главные записи, забыли поддомены. Полный чек-лист — в статье про проверку DNS-записей.
Изменения ещё расходятся. Вы недавно меняли NS или переносили зону — и часть резолверов мира ещё держит старый ответ в кэше (в том числе отрицательный: «домена нет» тоже кэшируется). Это единственный безобидный случай: он проходит сам по мере истечения TTL.
# Быстрая диагностика владельца, по порядку: whois вашдомен.ru | grep -E 'paid-till|state' # не истёк ли dig NS вашдомен.ru +short # отвечают ли NS dig вашдомен.ru @8.8.8.8 +short # что видит внешний мир dig www.вашдомен.ru @8.8.8.8 +short # не забыт ли www
Коварная деталь NXDOMAIN: резолверы запоминают и ответ «домена нет» — на время, заданное в SOA-записи зоны. Поэтому даже после починки часть посетителей будет видеть ошибку ещё десятки минут, а вы — получать противоречивые жалобы «уже работает / всё ещё нет». Это не рецидив, это доживает кэш.
Читаем dig +trace: где именно обрывается цепочка
Команда dig вашдомен.ru +trace проходит путь разрешения имени с самого верха и показывает, на каком звене теряется ответ. Читается по трём контрольным точкам: корневые серверы должны отдать список серверов зоны .ru; серверы .ru — отдать NS-записи вашего домена (если здесь пусто — домен не делегирован: истёк или снят регистратором); ваши NS — отдать A-запись (если делегирование есть, а ответа нет — зона сломана или пуста на DNS-хостинге). Три взгляда — три разных виновника: регистратор, DNS-хостинг или содержимое зоны. С этим диагнозом обращение в поддержку решается на порядок быстрее, чем с «у нас сайт пропал».
| Где оборвалось в +trace | Диагноз | Куда идти |
|---|---|---|
| Зона .ru не отдала NS домена | Домен не делегирован: истёк, заблокирован, снят | Регистратор (и whois для подтверждения) |
| NS указаны, но не отвечают | DNS-хостинг лежит или услуга отключена | DNS-хостинг |
| NS отвечают, но записи нет | Зона пустая или запись удалена | Панель DNS: восстановить записи |
Почему NXDOMAIN нельзя ловить руками
У этой ошибки худшее сочетание свойств: она отключает сайт целиком (вместе с почтой на домене), а наступает по причинам, которые копятся незаметно — счёт за домен на заброшенной почте, DNS-хостинг, отключивший бесплатный тариф, забытая запись при переезде. При этом у вас сайт может ещё открываться за счёт кэша, когда для новых посетителей он уже не существует. Ловить это нужно с двух сторон: следить за сроком домена по whois и ежедневно сверять DNS-записи с эталоном — обе задачи по определению машинные.
Пруфен закрывает оба контура: проверка домена ежедневно следит за сроком оплаты и статусом делегирования, а проверка DNS-записей — за тем, что зона отвечает и записи не изменились. Предупреждение приходит заранее — в Email, Telegram, Макс или звонком, — пока проблема стоит ноль рублей и пять минут времени.
Частые вопросы
Ошибка есть только в Chrome, в другом браузере сайт открывается. Как так? У Chrome собственный DNS-кэш и свои настройки Secure DNS (DNS-over-HTTPS) — он может спрашивать другой резолвер, чем остальная система. Очистите кэш в chrome://net-internals/#dns и проверьте настройку «Безопасный DNS».
Сайт работал час назад, теперь NXDOMAIN у всех. Что случилось? Похоже на событие уровня домена: снятие делегирования регистратором, удаление зоны, сбой DNS-хостинга. Начните с whois: state и paid-till сузят диагноз за минуту.
Чем NXDOMAIN отличается от ERR_CONNECTION_REFUSED? NXDOMAIN — не нашлось адреса (проблема имени). CONNECTION_REFUSED — адрес есть, но на порту отказ (проблема сервера). Разные слои — разные виновники и разное лечение.
По IP сервер открывается, по домену — NXDOMAIN. О чём это говорит? О том, что сервер и сайт в полном порядке, а сломано именно имя: смотрите whois и NS-серверы. Это, кстати, самый быстрый способ отделить проблему домена от проблемы хостинга: IP отвечает — значит, хостинг ни при чём.
Влияет ли NXDOMAIN на SEO? Сильнее всех прочих ошибок: для робота домен перестаёт существовать. Короткий эпизод переживаем, но затяжной NXDOMAIN ведёт к выпадению сайта из индекса — а после истечения домена к этому добавляется риск потерять само имя.