Нередко при вводе в адресной строке браузера адреса нужного нам сайта можно увидеть сообщение о его недоступности вместе с выводом названия ошибки типа Name error, NXDOMAIN или DNS_PROBE_FINISHED_NXDOMAIN. В соответствии со спецификацией RFC 2308 ошибки такого рода выводятся в случае, если в системе доменных имён DNS отсутствуют сведения о запрашиваемом домене. Это может соответствовать действительности, а может и не соответствовать, всё зависит от причины возникновения ошибки. Разберёмся с тем, какие могут причины возникновения подобной ситуации, и укажем порядок действий для их устранения.
Организация хранения и обновления учётных записей доменного реестра
Ранее нами уже рассматривалась структура системы доменных имён, в которой все DNS-записи о доменах хранятся в реестрах соответствующей доменной зоны. За ведение такого реестра отвечает конкретная компания, которая отслеживает все возникающие изменения в списке доменных имён и поддерживает его актуальность.
Сложная структура системы DNS предполагает наличие нескольких уровней DNS-серверов для управления доменами. В частности, это уровни Центрального реестра и Интернет-провайдера. Если на каком-то из них возникает ошибка или задержка, то это тотчас же отражается на работе веб-ресурса. Кроме того, на каждом из DNS уровней имеется кэш, который в большинстве случаев обновляется в течение одних-двух суток в зависимости от установленных настроек параметра TTL (time-to-live). Поэтому, ресурс становится доступным в сети только после полного обновления кэша на каждом из DNS уровней.
Причины отсутствия доступа к домену в сети
Можно выделить несколько категорий причин отсутствия доступа к домену в сети. Приведём их здесь:
- Инерционность системы DNS;
- Закончился активный период жизненного цикла доменного имени;
- Сброшены настройки NS-серверов на уровне регистратора;
- Домен не существует или удалён из реестра.
Рассмотрим более детально каждую из категорий указанных причин недоступности веб-ресурса в сети.
Инерционность системы DNS
Ошибки этой категории возникают в случае внесения каких-либо изменений в учётные данные домена, требующих обновления последних. Такими изменениями, к примеру, могут быть следующие:
- Первичная регистрация доменного имени;
- Перевод домена из неактивной фазы жизненного цикла в активную;
- Смена DNS-серверов или их состава в аккаунте регистратора;
- Смена регистратора.
При выполнении любого из указанных действий активируется процесс внесения изменений в базы данных DNS-серверов, результаты которого станут видны только лишь после обновления кэша на каждом уровне системы, о чём уже говорилось выше. Этот процесс обычно занимает от 24-х до 72-х часов времени в зависимости от настроек конкретного сервера.
При необходимости, можно значительно сократить период неработоспособности веб-ресурса. Для этого нужно выполнить ряд команд и / или настроек на вашем локальном устройстве. Это позволит выяснить истинную причину отсутствия доступа, очистить кэш и возобновить работу ресурса путём подключения к альтернативным серверам. Продемонстрируем выполнение указанных действий.
Прежде всего, необходимо очистить кэш браузера. Обычно эта операция не вызывает сложностей у рядовых пользователей. Для её выполнения достаточно выбрать команду меню браузера под названием «Очистить историю посещений», установив при этом период в несколько последних дней.
Действия по очистке DNS-кэша будут зависеть от типа операционной системы устройства. Так, в среде Windows действия будут следующими: открыть терминал и запустить на выполнение команду ipconfig с соответствующим параметром. Сделаем это на нашей машине:
> ipconfig /flushdns
Результат выполнения команды показан ниже.
Как видим, результат позитивный – кэш успешно сброшен.
В случае, если это не помогло, и сайт по-прежнему недоступный, задержка, вероятнее всего, в DNS-кэше вашего Интернет-провайдера. Чтобы обойти эту «преграду», можно воспользоваться конфигурационным файлом hosts, в котором нужно прописать IP-адрес вашего сервера, предоставленного хостинг-провайдером. Осуществим это на практике.
Для этого откроем файл и внесём туда следующую строку:
178.20.157.229 mydoman.com
Здесь 178.20.157.229 – IP-адрес нашего сервера; mydoman.com – наш сайт.
Сохраним внесённые изменения и закроем файл. Если после этого сайт заработал, значит, задержка была в кэше Интернет провайдера.
Вообще же, для того, чтобы выяснить, повлиял ли на задержку в работе сайта сервер Интернет-провайдера, можно воспользоваться более современным подходом.
Если причина неработоспособности веб-ресурса в сервере провайдера, то он будет доступным в сети при подключении через альтернативные DNS-сервера или Proxy.
Выяснить доступность сайта в сети можно, пропинговав его адрес с помощью известного программного средства. Сделаем это на нашей машине под управлением Windows, введя в терминале следующую команду:
> ping mydoman.com
Мы видим, что обмен пакетами между адресами происходит нормально, потерь нет, а, значит, сайт доступен в сети. В этом случае, наши действия могут быть следующими:
- Внести изменения в локальный файл hosts, как мы уже сделали ранее;
- Подключить сайт к сети через онлайн-Proxy сервер;
- Временно установить альтернативные DNS-сервера.
Подключить сайт к сети через онлайн-Proxy сервер можно с помощью соответствующих веб-ресурсов, которых немало в сети. К примеру, это может быть сайт https://www.proxysite.com/, на главной странице которого с помощью меню можно выбрать тип и местонахождение сервера. В нашем случае, выбран сервер, находящийся на территории Европы. При нажатии на кнопку GO в правой части окна активируется процесс подключения.
Временно установить альтернативные DNS-сервера, что также обычно не вызывает сложностей. В этом случае лучше воспользоваться серверами проверенных компаний, например, таких, как Google или Cloudflare. Это связано с поддержкой последних технологии DoH, что позволяет использовать серверы даже в случае блокировки некоторых портов вашим провайдером.
Установим для нашего ресурса DNS-сервера от компании Google. Для этого необходимо открыть окно свойств протокола TCP и прописать их там, как показано ниже. После этого нужно перейти по адресу https://developers.google.com/speed/public-dns/cache и заполнить там поля соответствующей формы.
После выполнения указанных действий ресурс станет доступным в сети.
Закончился активный период жизненного цикла доменного имени
В случае, если домен находится в одной из неактивных фаз жизненного цикла – Hold, Redemption Period или Pending Delete, он будет недоступным в сети и не может быть активирован техническими средствами. Как правило, для его восстановления необходимо произвести оплату за следующий год (или больше). Однако, это касается только фаз Hold и Redemption Period. Для фазы Pending Delete восстановление уже невозможно.
Сброшены настройки NS-серверов на уровне регистратора
Нередко случаются ситуации, когда в вашем аккаунте на сайте регистратора доменных имён сбрасываются настройки серверов, после чего сайт становится недоступным. Для исправления ситуации нужно зайти в свой аккаунт и по новому прописать адреса серверов, предоставленные вашим хостинг-провайдером. Такой аккаунт будет иметь вид, показанный ниже.
В данном случае, указаны адреса трёх NS-серверов для сайта chernigov-grad.info.
Домен не существует или удалён из реестра
Довольно часто распространена ситуация, когда при вводе имени сайта в адресной строке браузера допускается ошибка в его имени. В результате браузер посылает запрос по адресу, который может и не существовать. А, значит, придёт соответствующий ответ с сервера.
В случае окончания периода Pending Delete запись о домене полностью удаляется из реестра и, поэтому, естественно, домен больше не может быть доступным. Более, того, на протяжении нескольких десятков дней, он даже не будет доступным для новой регистрации. Только по истечении указанного периода, его снова можно будет зарегистрировать, то есть, начать новый жизненный цикл.