Linux
Шрифт:
search ogpu.odessa.ua nameserver 195.66.195.22
В строке, которая начинается со слова search, указывается, какое доменное имя будет принято по умолчанию. Так, если вы напишете user, то система сразу попытается обратиться к компьютеру user.ogpu.odessa.ua. После search можно указывать несколько имен. В следующей строчке указываются адреса DNS-серверов, к которым будет обращаться ваша машина.
Настройка кэширующего сервера
Кэширующий сервер найдет ответ на запрос об имени машины и запомнит его, чтобы ответить, когда вы запросите эту же информацию в следующий раз. Это значительно уменьшит время ожидания ответа при следующем запросе, особенно если у вас медленное соединение.
/etc/named.conf
Это основной конфигурационный файл для DNS-сервера. Для кэширующего сервера он должен содержать следующиеoptions {
directory "/var/named";
};
zone"." {
type hint;
file "root.hints";
};
zone "О.0.127.in-addr.arpa" {
type master;
file "127.0.0";
};Строка directory указывает bind где искать файлы. Все файлы, используемые впоследствии, будут иметь путь относительно этого каталога.
Строка zone "0.0.127. in-addr.arpa" показывает, что bind также отвечает за обратную зону для подсети 127.*.*.*, является в ней мастером, и файл описания зоны – 127.0.0.
Секция zone"." самая важная. Она описывает, в каком файле лежат адреса корневых DNS-серверов, которые отвечают за зоны первого уровня.
Файл, названный /var/named/root.hints, должен находиться в указанном каталоге и содержать приблизительно следующую информацию:
Этот файл описывает имена корневых серверов имен по всему миру. Их список периодически изменяется. Поэтому данный файл необходимо время от времени корректировать.
Для получения файла root.hints существует по меньшей мере два пути: либо забрать его по FTP с сервера internic, либо выполнить команду:dig @rs.internic.net. ns >root.hints
/etc/127.0.0
127.0.0 – это файл, который отвечает за преобразование чисел IP-адреса в имена.
Файл 127.0.0 должен выглядеть так:
Эта запись обозначает следующее:
• @ указывает, что описываем сами себя;
• описываемая зона держится сервером с именем ns.ogpu.odessa.ua;
• отвечает за нее человек, доступный по адресу hostmaster@ogpu.odessa.ua (первая точка заменяет @);
• у зоны серийный номер равен 1 (обычно для него используют дату последней правки зоны – на него опираются другие серверы, которые берут информацию с вашего);
• другие серверы будут обновлять информацию о вашем с периодичностью в восемь часов;
• при неудачном обновлении следующая попытка будет произведена через два часа;
• зона будет считаться содержащей недостоверную информацию на кэширующих серверах через одну неделю;
• зона будет считаться содержащей недостоверную информацию на кэширующих серверах не менее, чем через один день;
• строка IN NS ns.ogpu.odessa.ua. показывает, что авторитетным сервером за эту зону является ns.ogpu.odessa.ua., и именно ему надо рассылать обновления зоны ns.ogpu.odessa.ua.;
• строка 1 PTR localhost. описывает что машина с адресом 1 в зоне 127.0.0. имеет имя localhost.
Запуск named
Теперь можно запускать сервер. Наберите ndc start без опций и нажмите клавишу <Enter>.
Затем запускаем программу nslookup:
$ nslookup
Default Server: localhost
Address: 127.0.0.1>_
Если на мониторе это выглядит так, значит система работает. Мы так надеемся. Если вы видите что-то другое, то вернитесь назад и все проверьте. Каждый раз, когда вы изменяете файл named.conf, необходимо перезапустить named, используя команду ndc restart. Теперь проверим, как функционирует ваш кэширующий сервер – введем
user7.ogpu.odessa.ua:
> user7.ogpu.odessa.ua
Server: localhost
Address: 127.0.0.1Name: user7.ogpu.odessa.ua Address: 195.66.195.31
При этом nslookup попросил ваш named посмотреть информацию о данном компьютере. Если вы повторно попросите узнать адрес компьютера user7.ogpu.odessa.ua, то получите такой ответ:
> 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-сервера
Настройка полнофункционального 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: