Шрифт:
> user7.ogpu.odessa.ua
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
Name: user7.ogpu.odessa.ua
Address: 195.66.195.31В это раз вы получили сообщение «Non-authoritative answer». Это значит, что named во второй раз не делал запрос к внешним серверам имен, а произвел поиск в своем кэше и нашел нужную запись. Поскольку вы увидели это сообщение, ваш кэширующий DNS-сервер функционирует верно. Получив положительный результат, можно завершить работу nslookup дав команду exit.
Настройка DNS-сервера
Настройка полнофункционального DNS-сервера несколько сложнее, чем кэширующего, но в основном файлы и записи те же самые. Для чистоты эксперимента рекомендуется произвести настройку для несуществующего домена. У нас он будет называться ivan.petrov.
/etc/named.conf
Для нашего сервера DNS он должен содержать следующие строки:options {
directory "/var/named";
};
zone"." {
type hint;
file "root.hints";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "127.0.0";
};
zone "ivan.petrov" {
notify no;
type master;
file "ivan.petrov";
};
zone "0.168.192.in-addr.arpa" {
notify no;
type master;
file "192.168.0";
};Как можно видеть, по сравнению с кэширующим сервером добавилась только секция zone «ivan.petrov» и секция zone «0.168.192. in-addr.arpa».
Секция zone "ivan.petrov" описывает, что наш DNS-сервер держит зону ivan.petrov, является в ней мастером type master; (то есть другие серверы лишь синхронизируют по нему свои записи по зоне ivan.petrov), при изменении записей в зоне не извещает другие сервера notify по; (засорять Интернет вашими тестовыми записями нет нужды) и использует для описания зоны файл ivan.petrov.
Секция zone "0.168.192.in-addr.arpa" описывает, что наш DNS-сервер держит реверсную зону 0.168.192.in-addr.arpa, является в ней мастером type master; (то есть другие серверы лишь синхронизируют по нему свои записи по зоне 0.168.192.in-addr.arpa), при изменении записей в зоне не извещает другие серверы notify по; и использует для описания зоны файл 192.168.0.
/etc/named/ivan.petrov
В файле зоны ivan.petrov поместим следующие данные:@ IN SOA ns.ivan.petrov. hostmaster.ivan.petrov. (
199802151; serial, todays date + todays serial #
8H; refresh, seconds
2H; retry, seconds
1W; expire, seconds
ID); minimum, seconds
;
NS ns; интернет-адрес сервера имен
MX 10 mail.ivan.petrov.; Основной почтовый сервер
MX 20 mail2.ivan.petrov.; Дополнительный почтовый сервер
;
localhost A 127.0.0.1
ns A 192.168.0.1
mail A 192.168.0.40Этот файл зоны содержит 4 записи ресурсов (Resource Records, RR):
• SOA RR. SOA – это сокращение для слов Начала Полномочий (Start Of Authority). Запись SOA находится в преамбуле каждого из файлов зон, и она должна быть первой записью в файле. Она описывает зону – откуда она появляется (машина, названная ns.ivan.petrov), кто отвечает за содержимое зоны (hostmaster@ivan.petrov), какая версия файла зоны текущая (serial: 1) и другие вещи, которые надо сделать для кэширующих и вторичных серверов DNS;
• NS RR. NS – это RR для сервера имен (Name Server);
• МХ RR. MX – запись ресурса Почтовый Сервер (Mail eXchanger). Запись MX сообщает почтовой системе, куда посылать почту, адресованную любому адресату в домене ivan.petrov, в нашем случае – серверам mail, ivan.petrov или mail2. ivan.petrov. Число перед каждым именем системы – это приоритет записи MX RR. Запись ресурса с наименьшим номером (10) – это компьютер, куда почта должна посылаться в первую очередь. Если происходит ошибка, то почта может быть послана на машину с большим номером. И так далее. Таким образом, можно указать несколько почтовых серверов, что поможет вам в случае форс-мажорных обстоятельств не потерять ваши почтовые сообщения;
• A RR. A (Address) – адрес (IP-адрес)localhost А 127.0.0.1
ns А 192.168.0.1
mail А 192.168.0.40Эти строки устанавливают соответствие IP-адресам имен mail и ns в зоне ivan.petrov.
/etc/192.168.0
Для нормального функционирования DNS-сервера требуется обратная (реверсная) зона, которая дает возможность DNS преобразовывать IP-адреса в имена хостов. Эти имена используются серверами различного рода (FTP, IRC, WWW и т. п.) Поэтому обратная зона требуется для полного доступа к различным сервисам в Интернете.
Далее представлен файл /etc/192.168.0:@ IN SOA ns.ivan.petrov. hostmaster. ivan.petrov. (
199802151; Serial, todays date + todays serial
8H; Refresh
2H; Retry
1W; Expire
ID); Minimum TTL
NS ns.linux.bogus.
2 PTR gw.ivan.petrov.
1 PTR ns.ivan.petrov.
3 PTR petya.ivan.petrov.
40 PTR mail.ivan.petrov.
5 PTR ftp.ivan.petrov.Вышеприведенный файл в принципе мало чем отличается от файла описания прямой зоны. Появились только следующие строки:
2 PTR gw.ivan.petrov.
1 PTR ns.ivan.petrov.
3 PTR petya.ivan.petrov.
40 PTR mail.ivan.petrov.
5 PTR ftp.ivan.petrov.Эти строки описывают, что машина с адресом 2 в зоне 192.68.0. Имеет имя gw.ivan.petrov, а компьютер с адресом 40 – mail.ivan.petrov.
Вот собственно и все. Перезапускаем сервер и проверяем правильность функционирования нашей системы.
Некоторые тонкости
Как вы видите, глубоко в тонкости функционирования мы не погружались. Во-первых, этого вполне достаточно, а во-вторых, решать проблемы следует по мере их возникновения. Тем не менее, несколько полезных вещей необходимо знать.
Записи ресурсов (RR) службы DNS
Давайте рассмотрим несколько расширенный файл описания зоны:gw А 192.168.0.2
HINFO "i486" "RH 4.2"
ТХТ "The router"ns А 192.168.196.1
MX 10 mail
hinfo «Pentium3» "RH 7.2"
www CNAME ns
donaId A 192.168.196.3
MX 10 mail
HINFO «p3» "Windows2000"
TXT "Developer computer home tel 223344"Помимо знакомых вам строчек появились строки, содержащие HINFO, CNAME и ТХТ. • HINFO – информация о компьютере (Host IN Formation) состоит из двух частей: первая часть – это информация об оборудовании машины, а вторая – описывает программное обеспечение и операционную систему данной машины. Помимо этой информации не рекомендуется вносить ничего другого. Пример:
hinfo «Pentium3» «RH 7.2»
Из этой строки видно, что наш DNS-сервер собран на базе процессора Pentium III и на нем установлена операционная система Linux Red Hat 7.2;
• CNAME – каноническое имя (Canonical NAME) – это способ присвоить каждой машине несколько имен. При использовании cname необходимо следовать правилу, что записи МХ, CNAME или SOA никогда не должны ссылаться на имя, указанное как запись cname;
• ТХТ – произвольная текстовая информация. Обычно используется в качестве расширенного комментария для описания хоста. Пример: