В систему BIND входят три компонента[1]:
- демон named
, который отвечает на запросы;
- библиотечные подпрограммы, которые отвечают на запросы машин, используя DNS;
- командные интерфейсы пользователь-DNS: nslookup, dig,
host.
Согласно терминологии, принятой в DNS, демон типа
named (или машина, на
которой он работает) называется сервером имен, а программа-клиент, которая
обращается к нему - определителем. Ниже мы рассмотрим функции всех этих
компонентов вкратце.
named, сервер имен
системы BIND
Демон named отвечает на запросы об именах машин и их
IP-адресах. Если named не знает ответа на какой-либо запрос, он
опрашивает другие серверы и помещает их ответы в кэш (рис 3). Этот демон, кроме
того, отвечает за выполнение зонных пересылок, обеспечивающих копирование данных
между серверами одного домена.
Рис. 3. Взаимодействие серверов DNS
Серверы имен работают по каждому домену в одном из трех
режимов: основном, вспомогательном и кэширующем. Режимы отличаются друг от друга
двумя характеристиками: откуда поступают данные и авторитетен ли сервер для
данного домена. (Зона - это домен за вычетом своих поддоменов. Серверы
имен работают именно с зонами, но часто говорится "домен", хотя
подразумевается "зона".)
В каждом домене и поддомене есть один основной сервер имен.
Основной сервер имен хранит на диске оригинал базы данных
домена.
Вспомогательный сервер копирует данные своего домена с
основного сервера посредством операции зонной пересылки. В домене может быть
несколько вспомогательных серверов имен; обязательный минимум - один, но
желательно иметь еще один - два в другой ip-сети (на случай сбоя в работе
основного).
Кэширующий сервер имен загружает адреса нескольких важных
машин (серверов корневого домена) из файла запуска и получает все остальные
данные, кэшируя ответы на разрешаемые им запросы. Большинство основных и
вспомогательных серверов также имеют свои собственные кэши.
|