На рис. 11.2 вы можете увидеть запущенное приложение для настройки DNS-сервиса. В центре показано окно, которое появляется по нажатию кнопки Добавить. Как видите, достаточно только выбрать тип зоны и ввести имя домена, и все готово.
Рис. 11.2. Окно для настройки DNS-сервиса
Несмотря на наличие простой графической программы, мы рассмотрим работу DNS на примере конфигурационных файлов, которые
могут использоваться сервисом. Их прямое редактирование позволит сделать более тонкую настройку, и вы лучше будете понимать процесс работы DNS.
Настройка DNS-сервиса начинается с файла /etc/named.conf. Пример его содержимого приведен в листинге 11.1.
Листинг 11.1. Пример содержимого файла /etc/named.conf
options {
directory "/var/named/";
};
zone "." {
type hint;
file "named.ca";
};
zone "sitename.com" {
type master;
file "sitename.zone";
};
zone "10.12.190.in-addr.arpa" {
type master;
file "10.12.190.in-addr.arpa.zone";
};
В данном примере файл разбит на четыре раздела, каждый из которых имеет следующий формат:
тип имя {
Параметр1;
Параметр2;
...
};
Давайте разберем назначение разделов. Первым идет
options
:
options {
directory "/var/named/";
};
В фигурных скобках только один параметр —
directory
, который указывает на домашнюю директорию DNS-сервера. Все его файлы будут располагаться там.
Остальные разделы имеют тип
zone
(и через пробел в кавычках стоит имя зоны). В каждом из них по два параметра:
type
(определяет тип зоны) и
file
(файл, в котором содержится описание).
Самая первая зона в нашем примере описана следующим образом:
zone "." {
type hint;
file "named.ca";
};
Что это за зона в виде точки? Вспомните теорию DNS, которую мы рассматривали в начале главы. В базе данных DNS так обозначается корень. Получается, что раздел описывает корневую зону. Тип зоны
hint
, т.е. наш сервер, будет всего лишь хранить ссылки на DNS-серверы.
Так как это корневая зона, то и ссылки будут на корневые серверы.
В параметре
file
указывается имя файла, содержащего все ссылки на корневые серверы. В системе этого файла может и не быть, потому что информация в нем может изменяться, и лучше всего получить последнюю версию с сервера internic.net. Для этого выполните команду:
dig @rs.internic.net . ns > named.ca
Перейдем к следующему разделу:
zone "sitename.com" {
type master;
file "sitename.zone";
};
Здесь описывается зона sitename.com. Тип записи
master
, значит ваш DNS-сервер будет главным, а все остальные будут только сверяться с ним и кэшировать информацию. Сведения об этой зоне будут храниться в файле sitename.zone рабочей директории. В нашем случае это /var/named.
Следующая зона описывает обратное преобразование IP-адресов 190.12.10.* в имена:
zone "10.12.190.in-addr.arpa" {
type master;
file "10.12.190.in-addr.arpa.zone";
};
Тип записи — снова
master
, и в последней строке указан файл, где будет находиться описание зоны.
11.5. Файлы описания зон
Теперь посмотрим, что у нас находится в директории /var/named. Судя по файлу конфигурации /etc/named.conf, у нас здесь должно быть три файла:
□ named.ca — хранит ссылки на корневые серверы. Этот файл просто забирается с сервера internic.net, поэтому его редактировать не стоит, и даже не будем на нем останавливаться;
□ sitename.zone — отвечает за преобразование имени sitename.com в IP-адрес;
□ 10.12.190.in-addr.arpa.zone — отвечает за преобразование адресов сети 190.12.10.* в имена.
Файл sitename.zone может выглядеть следующим образом:
@ IN SOA ns.sitename.com root.sitename.com (
1 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; ttl
)
IN NS ns.sitename.com.
IN MX 10 mail.sitename.com.
ns A 190.12.10.1
mail A 190.12.10.2
Разберем основные типы записей, которые используются при конфигурировании DNS:
□
SOA
(Start of Authority, Начало полномочий) — основная информация, которая включает в себя почтовый адрес администратора, а также время жизни записи в кэше, данные о частоте ее обновления и др.;