Записи о ресурсах DNS

Файлы описания зон конкретизируют ресурсы DNS, составляющие данную зону. Так, например, в зонах прямого отображения основную массу записей составляют соответствия имен узлов их IP-адресам.


 

В файле конфигурации named.conf содержатся указатели на файлы описания зон. Эти указатели можно найти по ключевому слову zone. То есть имя зоны, заданное в файле named.conf, связано с файлом описания зоны директивой file.

Если в файле описания зоны требуется изменить текущее имя зоны (заданное в named.conf), то можно использовать директиву $ORIGIN (пример 26.2).

 

Пример 26.2. Директива $ORIGIN

 

$ORIGIN class.edu.

 

В примере 26.2 текущего имени зоны установлено в class.edu.

Для обращения к текущему имени зоны в BIND используется специальный метасимвол @. То есть имя зоны, заданное в named.conf, либо заданное дирек- тивой $ORIGIN, может быть получено с помощью @.

Большинство записей в файлах описания зон является записями о ресурсах (resource record, RR). Эти записи составляют базу данных зоны и должны на- чинаться с первой позиции строки. Единственный символ, который применя- ется для установки комментариев — это точка с запятой (;). Части строк, на- ходящиеся правее этого символа, не интерпретируются сервером BIND.

Записи RR имеют пять полей: имя, время жизни, класс, тип и поле данных. Поле времени жизни часто опускают, используя TTL по умолчанию. Поле данных также может быть разделено на несколько подполей. В поле имени указывают наименование ресурса. Поле "класс" практически всегда имеет значение IN (Internet), а поле "тип" указывает тип записи о ресурсах.

Директива $TTL — это время жизни ресурсов в кэше по умолчанию (при-

мер 26.3).

 

Пример 26.3. Директива $TTL

 

$TTL 1D

 

В данном случае указано время жизни TTL, равное суткам.

Файлы описания зон чаще всего содержат следующие типы записей о ре- сурсах:

r SOA (Start of Authority) — определяет зону полномочий сервера. После этой записи всегда следуют записи RR, описывающие зону, за которую данный сервер отвечает, как мастер-сервер;


 

r NS (Name Server) — для перечисления DNS-серверов данной зоны;

r A (Address) — устанавливают соответствие между именем хоста и его IP- адресом. Эти записи необходимы для обеспечения прямого разрешения имен (из имени в IP-адрес) и встречаются только в файлах зон прямого отображения;

r PTR (Pointer) — предназначены для установления обратного соответствия IP-адресов DNS-именам хостов. Эти записи участвуют в процедуре обрат- ного разрешения (из адреса в имя) и встречаются в файлах зон обратного отображения;

r CNAME (Canonical Name) — используются для установки псевдонимов имен хостов. Они позволяют задать для хоста несколько альтернативных имен;

r MX (Mail Exchanger) — определяют серверы электронной почты (SMTP-

агенты), обслуживающие данную зону или узел.

Далее представлен пример 26.4 описания зоны прямого соответствия для зо- ны localhost, т. е. приведено содержание файла db.localhost.

 

Пример 26.4. Зона прямого отображения для localhost

 

$TTL 86400

@ IN SOA localhost. root.localhost. ( 2009122001 ; s/n

1W ; refresh

1D ; retry

2W ; expire

1H ; negative TTL

)

IN NS localhost. IN A 127.0.0.1

 

Запись SOA имеет несколько полей данных (они начинаются сразу после надписи SOA), которые могут быть записаны в одну строку, однако традици- онно они размещаются вертикально и экранируются круглыми скобками.

Поля данных SOA:

r имя мастер-сервера, обслуживающего данную зону. Для зоны localhost,

естественно, имя сервера тоже localhost;

r почтовый адрес администратора сервера, в котором вместо привычного символа @ — разделителя имени пользователя и доменной части использу- ется символ "точка", т. к. @ имеет особый смысл;


 

r последовательный номер (serial number, s/n), необходимый для подчи- ненных серверов. Они ориентируются по нему, не производились ли из- менения в зоне. Если да, то должен быть произведен трансфер зоны. Этот номер всегда растет;

r периодичность опроса подчиненных серверов мастер-сервером на предмет проверки, не изменился ли последовательный номер (refresh). То есть не надо ли произвести трансфер зоны. Может быть указан в секундах. В дан- ном примере: 1W — одна неделя;

r периодичность повторного опроса в случае неудачи (retry). Если мастер- сервер в момент очередной проверки оказался не доступен, то с заданной периодичностью проводятся повторные попытки проверки;

r время устаревания данных зоны на подчиненных серверах (expire). Если мастер-сервер так и не ответил за указанное время, то по прошествии его информация о зоне на подчиненном сервере стирается;

r время жизни записей о неудачах разрешения имен (negative TTL).

Далее приведена запись NS, в первом поле которой необходимо указать имя зоны. Эта запись задает имя сервера имен для данной зоны. Их может быть несколько (обычно не более десяти), в таком случае в файле описания зоны указывают сра- зу несколько записей типа NS — по одной для каждого сервера имен.

В примере 26.4 первое поле записи NS пустое. В таком случае BIND автома- тически подставляет значение первого поля предыдущей записи RR. В нашем случае предыдущая запись — это запись SOA. В ее первом поле указан символ

@, т. е. текущее имя зоны (в данном случае — localhost). Поэтому запись NS

здесь, фактически, выглядит так, как показано в примере 26.5.

 

Пример 26.5. Запись NS для зоны localhost

 

localhost. IN NS localhost.

 

Обратите особое внимание на точки, завершающие имена. Если этих точек не будет, то BIND автоматически подставит к именам узлов имя текущего доме- на, что в данном случае приведет к ошибке.

Последняя запись в данном файле типа A устанавливает прямое соответствие имени узла его IP-адресу. В примере 26.6 показано, как выглядит запись A для localhost с учетом автоматической подстановки в первом поле.

 

Пример 26.6. Запись A для localhost

 

localhost. IN A 127.0.0.1


 

То есть имени localhost соответствует адрес 127.0.0.1.

Далее приведен пример 26.7 зоны обратного отображения для адреса

127.0.0.1, т. е. распечатано содержимое файла db.127.0.0.1.

 

Пример 26.7. Зона обратного отображения для localhost

 

$TTL 86400

@ IN SOA localhost. root.localhost. ( 2009122001 ; s/n

1W ; refresh

1D ; retry

2W ; expire

1H ; negative TTL

)

IN NS localhost.

1 IN PTR localhost.

 

В примере 26.7 новой является лишь запись типа PTR, задающая обратное соответствие. В ее первом поле находится последняя цифра IP-адреса, к ко- торой добавляется имя текущего домена. Здесь оно — 0.0.127.in-addr.arpa. То есть последняя запись выглядит так, как показано в примере 26.8.

 

Пример 26.8. Запись PTR для localhost

 

1.0.0.127.in-addr.arpa. IN PTR localhost.

 

Рассмотрим теперь содержимое файла db.class.edu для зоны прямого соот- ветствия class.edu (пример 26.9).

 

Пример 26.9. Зона прямого отображения class.edu

 

$TTL 86400

@ IN SOA ns1 root.ns1 ( 2009122001 ; s/n

1W ; refresh

8H ; retry

1D ; expire

1H ; negative TTL

)

IN NS ns1.class.edu.


 

IN NS ns.provider.net.

IN MX 10 relay.class.edu. ns1 IN A 192.168.2.253 relay IN A 192.168.2.254 murr IN A 192.168.2.252

www IN CNAME murr

$GENERATE 1-251 ws$ A 192.168.2.$

 

В этом примере указаны два сервера имен, обслуживающих данную зону. Мастер-сервер указан в записи SOA — ns1.class.edu. Подчиненный сервер принадлежит провайдеру, что является распространенной практикой.

Запись MX указывает на почтовый сервер, обслуживающий данную зону — relay.class.edu. Число 10 в этой записи указывает уровень приоритета серве- ра, который актуален при наличии нескольких почтовых серверов для зоны. Чем меньше число в данном случае, тем выше приоритет почтового сервера.

Записи типа A задают прямое отображение имен узлов на их IP-адреса. Для одного из узлов — murr.class.edu с помощью записи типа CNAME указан псевдоним www.

Директива $GENERATE исключительно удобна для массового сопоставления единообразных имен узлов их IP-адресам. Запись с этой директивой заменяет множество записей типа A. То же самое можно было сделать, 251 раз написав строки RR показанного в примере 26.10 вида.

 

Пример 26.10. Генерируемые директивой $GENERATE записи RR

 

ws1 IN A 192.168.2.1 ws2 IN A 192.168.2.2 ws3 IN A 192.168.2.3

...

ws251 IN A 192.168.2.251

 

Пример 26.11 — это содержимое файла db.192.168.2 зоны обратного соответ- ствия для сети 192.168.2.0 (зона 2.168.192.in-addr.arpa).

 

Пример 26.11. Зона обратного отображения для class.edu

 

$TTL 86400

@ IN SOA ns1.class.edu. root.ns1.class.edu. ( 2009122001 ; s/n

1W ; refresh


 

8H ; retry

1D ; expire

1H ; negative TTL

)

IN NS ns1.class.edu.

254 IN PTR relay.class.edu.

253 IN PTR ns1.class.edu.

252 IN PTR murr.class.edu.

$GENERATE 1-251 $ PTR ws$.class.edu.

 

Легко заметить, что в этом файле преобладают записи обратного отображе- ния типа PTR. Обратное отображение для множества названных единообразно узлов также осуществляется с помощью директивы $GENERATE.

Последний файл описания ресурсов, используемый в этом примере, — это файл указателей на корневые серверы db.root (пример 26.12).

 

Пример 26.12. Зона указателей на корневые серверы (фрагмент)

 

; formerly NS.INTERNIC.NET

;

 

. IN NS A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET.   A 198.41.0.4
;        
; formerly NS1.ISI.EDU        
;        
.   NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET.   A 126.9.0.107

 

В этом файле указаны серверы имен корневого домена и их IP-адреса.

В заключение этого раздела следует отметить, что в состав BIND 9 включена удобная утилита для проверки файлов описания зон — named-checkzone. С ее помощью можно отыскивать синтаксические ошибки в описаниях зон.

 








Дата добавления: 2015-06-12; просмотров: 830;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.024 сек.