Проверка имени узла

 в раздел Оглавление

«DNS и BIND»

Руководство для системных администраторов

4. Установка BIND

Проверка имени узла

Если DNS-сервер имеет версию 4.9.4 или более позднюю (как в большинстве случаев), следует обратить пристальное внимание на имена узлов. Начиная с версии 4.9.4 BIND проверяет имена узлов на соответствие документу RFC 952. Несоответствие имени узла этому документу считается синтаксической ошибкой.

Прежде чем начать паниковать, следует осознать, что проверка применяется только к именам, которые считаются именами узлов. Вспомните, что RR-запись содержит поле имени и поле данных. Например:

<имя>  <класс>  <тип>  <данные>
toystory    IN          A     192.249.249.3

Имена узлов встречаются в поле имени адресных (A) записей и MX-записей (которые рассмотрены в главе 5 «DNS и электронная почта»). Имена узлов также встречаются в поле данных записей типа SOA и NS. CNAME-записи не подчиняются правилам именования узлов, поскольку могут указывать на имена, не являющиеся именами узлов.

Рассмотрим правила именования узлов. Имена узлов могут содержать буквы и цифры в каждой из меток. Следующие имена узлов являются допустимыми:

ID4 IN A 192.249.249.10
postmanring2x IN A 192.249.249.11

Дефис внутри метки разрешен:

fx-gateway IN A 192.249.249.12

Недопустимо использование подчеркивания в именах узлов.

Имена, не являющиеся именами узлов, могут состоять из любых отображаемых ASCII-символов.

Если в поле данных RR-записи необходимо указать адрес электронной почты (как в SOA-записях), первая метка, которая не является именем узла, может содержать любые отображаемые символы, но все остальные метки должны соответствовать описанному синтаксису имен узлов. Так, почтовый адрес имеет следующий вид:

.<символы-допустимые-в-имени-узла>символы>

Почтовый адрес key_grip@movie.edu можно без проблем использовать в SOA-записи несмотря на подчеркивание. Не забывайте, что в почтовых адресах символ « @ » следует заменять символом « . » :

movie.edu. IN SOA toystory.movie.edu. key_grip.movie.edu. (

1       ; Порядковый номер
3h     ; Обновление через 3 часа
1h     ; Повторение попытки через 1 час
1w     ; Устаревание через 1 неделю
1h )   ; Отрицательное TTL в 1 час

Этот вторичный этап проверки может привести к большим проблемам в случае обновления более старой либеральной версии BIND до новой консервативной, особенно в тех случаях, когда администраторами было стандартизировано использование подчеркиваний в именах узлов. Если необходимо отложить смену имен (вы ведь не забудете все же их поменять?), можно ограничиться выдачей простых предупреждающих сообщений вместо ошибок либо просто игнорированием неправильных имен. Следующий оператор в файле настройки превращает ошибки в предупреждающие сообщения:

options {
check-names master warn;
};

Предупреждающие сообщения заносятся в log-файл посредством syslog, инструмента, который мы затронем чуть позже. Следующий оператор в файле настройки позволяет полностью проигнорировать ошибки проверки имен:

options {
check-names master ignore;
};

Если неправильные имена принадлежат зоне, для которой ваш сервер является вторичным (и над которой у вас нет контроля), добавьте аналогичный оператор с ключевым словом slave вместо primary:

options {
check-names slave ignore;
};

А для имен, получаемых в качестве ответов на запросы, можно указать:

options {
check-names response ignore;
};

Установки BIND по умолчанию таковы:

options {
check-names master fail;
check-names slave warn;
check-names response ignore;
};

Проверку имен можно настраивать и отдельно для каждой зоны. И если значение для конкретной зоны указано, оно имеет более высокий приоритет, чем значение, определенное оператором options:

zone "movie.edu" in {
type master;
file "db.movie.edu";
check-names fail;
};

Строка options содержит три поля (check-names master fail), тогда как строка проверки для зоны только два (check-names fail). Это происходит потому, что строка оператора zone уже определяет контекст (зону, указанную этим оператором).

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и абзацы переносятся автоматически.
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.