Назад | Перейти на главную страницу

Как включить файл в файл зоны (с помощью директивы $ INCLUDE) на сервере имен nsd

Я хочу включить файл в файл зоны в реализации сервера имен nsd, используя $INCLUDE директива.

Когда я перезагружаю зону с nsd-control reload <zone> В файле журнала я заметил ошибку о том, что не нашел включаемый файл.

Кто-нибудь знает, как включить файл в определение файла зоны? Кажется, что у NSD отсутствует подробная документация (например, BIND).

На основании вашего комментария:

Собственно, я использую эту директиву: $INCLUDE /usr/local/etc/nsd/zones/forward/COMMON. Я хочу, чтобы в общем файле были такие вещи, как записи SOA и NS, MX, которые одинаковы для всех зон / подзон

Мой первый ответ заключается в том, что установка записи SOA в главном включаемом файле - плохая идея, поскольку это означает, что все ваши зоны DNS будут иметь одинаковый номер версии, а обновление до одной потребует перезагрузки всех зон.

Использование директивы $ INCLUDE установлено в RFC 1035 и одна из целей дизайна nsd должен полностью соответствовать RFC.

Если вы не столкнулись с простой ошибкой в ​​разрешениях файловой системы, вероятно, вы столкнулись с требованиями, установленными в разделе 5.2 RFC 1035 для включаемых (основных) файлов и файлов зоны:

  1. Все RR в файле должны иметь один и тот же класс.

Таким образом, наличие записей NS и MX в одном включаемом файле кажется запрещенным.

  1. Ровно одна запись SOA RR должна присутствовать в верхней части зоны.

Установка записи SOA в файле $ INCLUDE также кажется запрещенной.

  1. Если присутствуют делегации и требуется связующая информация, она должна присутствовать.

По-видимому приклеивать пластинки разрешены так NS и конкретные A записи могут быть объединены в один включаемый файл ...

  1. Информация, представленная за пределами авторитетных узлов в зоне, должна быть связующей информацией, а не результатом происхождения или аналогичной ошибки.