Особенности DNS в различных операционных системах
Категория: Система доменных имен | Автор: admin | 30-04-2010, 04:26 | Просмотров: 2613

В этом параграфе описано, каким изменениям подвергся свободно распространяемый организацией ISC пакет BIND в наших тестовых операционных системах. Мы приводим ссылки на конфигурационные файлы, сообщаем, какая версия BIND используется в том или ином случае и как интегрировать пакет с другими источниками административных данных, например с обычными файлами и системой NIS. Более подробно последняя тема освещена в главе 18. В частности, обратите внимание на параграф 18.3.

 

Solaris

 

Операционные системы Solaris 7 и 8 в настоящее время поставляются с пакетом BIND 8.1.2. Имеется файл "переключения сервисов", называющийся /etc/nsswitch.conf, который определяет, как взаимодействуют между собой BIND, NIS, NIS+ и файл /etc/hosts. Если строку hosts этого файла записать следующим образом:

hosts:    files dns

 

то в процессе преобразования имен сначала будет опрашиваться файл /etc/hosts, а затем — DNS. Желательно поместить в этот файл адреса важнейших серверов и маршрутизаторов, чтобы устранить возможное зависание системы, которое может произойти, если сервер имен будет недоступен на этапе начальной загрузки.

В документации рекомендуется запускать серверы NIS в режиме переадресации, чтобы они перенаправляли серверам DNS запросы, ответ на которые не получен из локальной базы данных. На этом основании компания Sun рекомендует такую строку конфигурации:

hosts:    nis  [NOTFOUND=return]  files

 

Мы не согласны. Локальный сервер NIS не быстрее локального сервера DNS, а данные все равно должны находиться в DNS, чтобы из внешнего мира можно было получить доступ к системе. Поэтому, даже если в организации используется NIS, лучше разделять обе системы.

Имена файлов пакета BIND и их местонахождение в Solaris указаны в табл. 16.17.

Таблица 16.17. Файлы пакета BIND в Solaris

Файл

Каталог

Описание

resolv.conf

/etc

Файл конфигурации распознавателя

in.named

/usr/sbin

Демон сервера имен

named-xfer

/usr/sbin

Код модуля зонных пересылок

named.conf

/etc

Конфигурационный файл сервера имен

named.pid

/etc

Идентификатор процесса демона in.named

named.run

каталог1 

Выходная отладочная информация

named.stats

каталог1 

Выходная статистическая информация

nameddump.db

каталог1

Образ всей базы данных

named-bootconf

/usr/sbin

Программа преобразования конфигурационных файлов BIND 4 в формат BIND 8

1   Этот каталог указан в файле /etc/named.conf как начальный для файлов BIND.

 

HP-UX

 

Используемый в HP-UX 11.00 вариант BIND построен на базе версии BIND 4.9.7. Задействован тот же принцип переключения сервисов, что и в Solaris. Самого файла nsswitch.conf нет, но в каталоге /etc имеется несколько файлов-примеров (найти их можно с помощью команды ls/etc/nssw*).

Чтобы создать файл nsswitch.conf, узнайте в документации, какую конфигурацию нужно реализовать, а затем найдите в файлах-примерах нужный вариант. Один из файлов, /etc/nsswitch.hp_defaults, иллюстрирует поведение системы в ситуации, когда файл nsswitch.conf отсутствует или содержит синтаксическую ошибку. В отношении поиска имен конфигурации такова:

hosts:    dns  [NOTFOOND=return]  nis   [NOTFOUND=return]   files

 

Сначала используется DNS, но если сервер недоступен или не сконфигурирован, поиск продолжается в NIS, а затем — в файле /etc/hosts. Коглз сервер DNS не может найти ответ на запрос, возвращается сообщение ос ошибке вида "host unknown".

Чтобы в процессе начальной загрузки не возникало конфликтов, мы рекомендуем такую конфигурацию:

hosts:    files   [NOTFOUND=continue]  dns

 

Если используется система NIS, она должна опрашиваться второй, перед DNS, а в конфигурационном файле нужно указать директиву continue (продолжать) как действие, выполняемое в случае возникновения ошибки. Важно сконфигурировать процесс начальной загрузки сети таким образом, чтобы имена узлов не искались в NIS или DNS. Для этого строка files должна стоять первой, а в стартовых сценариях следует задавать IP-адреса, а не доменные имена.

В табл. 16.18 указано местоположение важнейших файлов пакета BIND в HP-UX.

Таблица 16.18. Файлы пакета BIND в HP-UX

Файл

Каталог

Описание

resolv.conf

/etc

Файл конфигурации распознавателя

named

/usr/sbin

Демон сервера имен

named-xfer

/usr/sbin

Код модуля зонных пересылок

named.boot

/etc

Конфигурационный файл сервера имен

named.pid

/var/run

Идентификатор процесса демона named

named.run

/var/tmp

Выходная отладочная информация

named.stats

/var/tmp

Выходная статистическая информация

nameddump.db

/var/tmp

Образ всей базы данных

 

В HP-UX, в каталоге /usr/newconfig, имеются файлы-примеры с отличными комментариями, но почему-то разработчики не удосужились создать такие файлы для DNS. В ранних версиях HP-UX (до версии 11.00) образцы файла named.conf, зонных файлов и файла resolv.conf находились в каталоге /etc/newconfig. Каталог /usr/newconfig, похоже, является обобщением каталога /etc/newconfig, но лучшее — всегда враг хорошего: пытаясь создать более полный набор примеров, разработчики забыли о файлах пакета BIND. Надеемся, это недоразумение будет исправлено, когда операционная система HP-UX перейдет к BIND 8 или BIND 9.

Кроме того, в HP-UX предусмотрены средства, которые помогут перейти от файла /etc/hosts к DNS. Программа hosts_to_named выполняет преобразование файла /etc/hosts в формат записей о ресурсах DNS. Программа sig_named позволяет посылать сигналы демону named; это просто надстройка команды kill с аргументами наподобие программы ndc.

 

Red Hat

 

Red Hat Linux 6.1 поставляется с BIND 8.2, а все файлы находятся в стандартных каталогах (табл. 16.19). В Red Hat 6.2, как и во FreeBSD, используется версия пакета 8.2.2-Р5, поэтому информацию о файлах вы можете почерпнуть из следующего раздела. Файл "переключения сервисов" такой же, как и в Solaris. Он задает приоритеты различных источников данных. (Информацию по нему можно получить посредством команды man nsswitch, а не man nsswitch.conf.)

Таблица 16.19. Файлы пакета BIND в Red Hat Linux

Файл

Каталог

Описание

resolv.conf

/etc

Файл конфигурации распознавателя

named

/usr/sbin

Демон сервера имен

named-xfer

/usr/sbin

Код модуля зонных пересылок

named.conf

/etc

Конфигурационный файл сервера имен

named.pid

/var/run

Идентификатор процесса демона named

named .run

каталог1

Выходная отладочная информация

named.stats

каталог1

Выходная статистическая информация

named.memstats

каталог1

Статистика использования памяти

nameddump.db

каталог1

Образ всей базы данных

1   Этот каталог указан в файле /etc/named.conf как начальный для файлов BIND.

 

При отсутствии файла nsswitch.conf система по умолчанию принимает приведенную ниже конфигурацию:

hosts:    dns [!UNAVAIL=return] files

 

Предложение !UNAVAIL, которое, как сказано в документации, установлено по умолчанию, кажется нам неправильным. К тому же, оно вступает в противоречие с файлом-примером, поставляемым с Red Hat, где строка hosts выглядит следующим образом:

hosts:    db files nisplus dns

 

Мы рекомендуем такую конфигурацию:

hosts:    files dns

 

В Red Hat есть ряд образцов конфигурационных файлов. Все они находятся в каталоге /etc и снабжены хорошими комментариями. Для файла named.conf отсутствует своя man-страница.

 

FreeBSD

 

Во FreeBSD 3.4 и 4.0 входит пакет BIND 8.2.2-Р5. Файл "переключения сервисов" называется /etc/host.conf и определяет порядок обращения к информационным службам только в процессе преобразования имен. Возможные источники информации указаны в отдельных строках в том порядке, в котором они должны опрашиваться.

 

# Сначала проверяется файл /etc/hosts

hosts

#Следующим опрашивается сервер имен

bind

# Если сконфигурирована служба YP/NIS, активизируйте следующую строку

nis

 

Если файла host.conf не существует, первой опрашивается система DNS. В случае неудачи проверяется файл /etc/hosts. Во FreeBSD файл named.conf переместился из каталога /etc в каталог /etc/namedb. Имена файлов и каталогов, в которых расположены файлы, приведены в табл. 16.20.

Таблица 16.20. Файлы пакета BIND во FreeBSD

Файл

Каталог

Описание

resolv.conf

/etc

Файл конфигурации распознавателя

named

/usr/sbin

Демон сервера имен

named-xfer

/usr/libexec

Код модуля зонных пересылок

named.conf

/etc/namedb

Конфигурационный файл сервера имен

named.pid

/var/run

Идентификатор процесса демона named

named.run

каталог1

Выходная отладочная информация

named.stats

каталог1

Выходная статистическая информация

named.memstats

каталог1

Статистика использования памяти

nameddump.db

каталог1

Образ всей базы данных

Зонные файлы

/etc/namedb

Стандартное местоположение зонных файлов

1   Этот каталог указан в файле /etc/namedb/named.conf как начальный для файлов BIND.

 

Каталог /etc/namedb содержит ряд файлов-примеров: файл корневого кэша (named.root), прототип файла зоны обратного преобразования для узла localhost (PROTO.localhost.rev) и shell-сценарий make-localhost, который запрашивает у пользователя имя домена, после чего создает файл зоны обратного преобразования для узла localhost на основании имеющегося прототипа.

Perl-сценарий named-bootconf, находящийся в каталоге /usr/sbin, преобразует стартовый сценарий named.boot пакета BIND 4 в файл named.conf формата BIND 8.

По нашему мнению, перемещение файла named.conf из каталога /etc следует рассматривать как уголовное преступление. Мы рекомендуем создать на прежнем месте ссылку на новое местоположение файла, чтобы оба имени — новое и старое — работали. Просматривая комментарии в конце файла named.conf, мы догадались, что первоначально разработчики FreeBSD планировали запускать демон named в среде с измененным корневым каталогом. Но в стандартной конфигурации этого на самом деле не происходит. Дополнительную информацию можно получить из переменных named_* в файле /etc/defaults/rc.conf.

На man-странице, посвященной демону named, неправильно указаны некоторые пути, в частности к файлу статистики и файлу образа базы данных. Очевидно, ошибка имеется в самом дистрибутиве на узле isc.org, поскольку в Solaris и FreeBSD одинаковые ошибки.


 (голосов: 0)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page