В то время как управление иерархией DNS может быть
довольно сложным процессом, все же существует возможность
настроить мини-DNS-сервер на нашей FreeBSD-системе, которая
к тому же функционирует в качестве шлюза к Вашему
Интернет-провайдеру.
Основываясь на файлах каталога
/etc/namedb, который был установлен процессе установки
системы FreeBSD, стало возможным создать сервер имен,
который будет одновременно и авторитетным для нашей
локальной сети, используемой в этом руководстве, и
"парадной дверью" в архитектуре DNS сети Интернет.
Для этой минимальной конфигурации DNS, необходимы только
три файла:
Файл /etc/namedb/named.root
автоматически устанавливается как часть базовой установки
системы FreeBSD. Остальные два файла должны быть созданы
вручную.
Файл /etc/namedb/named.boot
управляет параметрами запуска DNS-сервера и содержит
информацию, которую необходимо знать этому серверу имен,
а именно:
-
где искать конфигурационные файлы,
-
за какие "доменные имена" он отвечает и
-
где искать другие DNS-сервера.
Используя редактор 'ee',
создайте файл
/etc/namedb/named.boot содержащий следующее:
Строки, начинающиеся с символа ";" являются
комментарием. Строки, которые несут самую существенную
информацию в этом файле приведены ниже:
-
directory /etc/namedb
Сообщает серверу имен о том, где находятся
конфигурационные файлы, на которые имеются ссылки в
последних секциях файла '/etc/namedb/named.boot'.
-
cache . named.root
Сообщает серверу имен о том, что список корневых
DNS-серверов Интернет находится в файле 'named.root'. (Этот файл включен в
базовую установку FreeBSD и его содержимое не
описывается в этом руководстве.)
-
primary my.domain.
mydomain.db
Сообщает серверу имен о том, что он является
"авторитетным" для домена "my.domain" и что список
имен и IP-адресов систем домена "my.domain"
(локальная сеть) находится в файле 'mydomain.db'.
После того, как файл
/etc/namedb/named.boot будет создан и сохранен,
переходите к следующему разделу для создания файла /etc/namedb/mydomain.db.
Файл /etc/namedb/mydomain.db
содержит имена и IP-адреса каждой
системы в Вашей локальной сети.
За более подробной информацией по
операторам, используемым в этом файле обращайтесь к
man-странице справочного руководства по named.
Файл /etc/namedb/mydomain.db
для нашего небольшого DNS-сервера содержит следующее:
Простыми словами, этот файл объявляет, что локальный
DNS-сервер:
-
имеет полномочия ("SOA") на домен с именем
'my.domain',
-
является сервером имен ("NS") для домена
'my.domain',
-
является ответственным за обратное преоразование
для всех IP-адресов, которые начинаются с
'192.168.1.' и '127.0.0.' ("$ORIGIN ...")
Добавляя информацию о новой рабочей станции в этот
файл, Вы должны добавлять две строки для этой системы:
одну, в верхнюю секцию, которая отвечает за
преобразование имени системы в Интернет-адрес ("IN A"), а
другую, которая, наоборот, преобразует адрес в имя узла,
в секцию $ORIGIN
1.168.192.IN-ADDR.ARPA.
По умолчанию DNS-сервер ('/usr/sbin/named') не запускается при
загрузке системы. Однако, вы можете дать указание системе
запускит DNS-сервер, изменив одну единственную строку в
файле '/etc/rc.conf':
Используя редактор 'ee',
загрузите файл /etc/rc.conf.
Опустите курсор примерно на 40 строк вниз и Вы заметите
секцию, которая выглядит как показано ниже:
Измените эту секцию как показано ниже:
Сохраните файл и перезагрузите систему.
Альтернативный способ: запустите демон сервера имен,
введя следующую команду:
Какие бы изменения Вы не производили в любом из файлов
каталога /etc/namedb, Вам
необходимо прервать выполнение сервера имен, для того,
чтобы изменения вступили в силу. Это выполняется с
помощью следующей системной команды: