DNS сайта LinuxWeb

BIND: зона не загружается — ошибка синтаксиса, serial и named-checkzone

  • Обновлено
  • Чтение ≈ 2 минуты

Краткий ответ

Проверьте зону named-checkzone, увеличьте serial и выполните rndc reload.

В этой статье
  1. Что означает сообщение
  2. Причины и признаки
  3. Пошаговое решение
  4. На что обратить внимание

#Что означает сообщение

Сообщение
Zone not loaded

Проверьте зону named-checkzone, увеличьте serial и выполните rndc reload.

#Причины и признаки

Возможная причинаКак узнатьЧто делать
Ошибка синтаксисаОтдельно проверьте фактор «Ошибка синтаксиса» в момент, когда возникает описанная неисправность; сравните с работой исправного устройства или настройки. Отслеживайте результат по журналу нужной службы, не по соседним сайтам.Если проверка подтверждает «Ошибка синтаксиса», исправьте только относящийся к нему элемент, сохранив прежнее значение и возможность возврата.
Не увеличен serialОтдельно проверьте фактор «Не увеличен serial» в момент, когда возникает описанная неисправность; сравните с работой исправного устройства или настройки.Если проверка подтверждает «Не увеличен serial», исправьте только относящийся к нему элемент, сохранив прежнее значение и возможность возврата.
Нет NSОтдельно проверьте фактор «Нет NS» в момент, когда возникает описанная неисправность; сравните с работой исправного устройства или настройки.Если проверка подтверждает «Нет NS», исправьте только относящийся к нему элемент, сохранив прежнее значение и возможность возврата.
Права на файлСравните права текущего пользователя и ограничения именно для нужной операции, файла или устройства; посмотрите сообщение об отказе.Измените только необходимое разрешение, если это одобрено владельцем системы, вместо предоставления полных прав всем пользователям.

#Пошаговое решение

  1. Найдите ошибку конфигурации namedАдминистратору BIND: на DNS-сервере по SSH выполните sudo named-checkconf и посмотрите точное сообщение об ошибке файла и строки. Затем проверьте конфигурацию конкретной зоны и путь к файлу в named.conf либо подключаемых файлах. До правок сделайте копию файла зоны и конфигурации. Не изменяйте одновременно serial, права и DNSSEC, пока не выявлена причина отказа.
  2. Проверьте конкретную DNS-зонуВыполните sudo named-checkzone example.com /путь/к/файлу/зоны, подставив реальную зону и фактический путь из конфигурации. Исправьте указанную синтаксическую ошибку: например, пропущенную точку в абсолютном имени, скобку или тип записи. Снова выполните named-checkzone и убедитесь, что проверка завершается OK; только после этого увеличьте SOA serial при изменении содержимого.
  3. Сверьте файл, права доступа и serialЕсли синтаксис корректен, проверьте, доступен ли процессу named файл зоны для чтения, и совпадает ли путь в конфигурации с расположением файла. Просмотрите sudo journalctl -u named -b --no-pager | tail -80 либо журнал вашей установки (на Debian служба может называться bind9). Не меняйте права каталога рекурсивно без причины. На вторичных серверах отдельно проверяйте serial и успешность переноса зоны.
  4. Проверьте SOA после перезагрузки зоныПосле успешных проверок конфигурации выполните sudo rndc reload example.com, заменив домен на конкретную зону, либо используйте штатный способ перезагрузки вашей установки. Проверьте ответ у авторитетного сервера через dig @АДРЕС_NS example.com SOA +norecurse; заглушку замените реальным адресом. Если вывод и SOA serial не обновились, изучите журнал BIND: HTTP-коды сайтов к загрузке DNS-зоны отношения не имеют.

#На что обратить внимание

Не переписывайте SOA и NS вслепую: ошибки делегирования не устраняются простой перезагрузкой. После загрузки сравните ответ авторитетного сервера с ожидаемым набором записей.

Linux · Терминал (Bash)Команда
Проверка зоны.
named-checkzone example.com /etc/bind/db.example.com

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.