4. Типы зон

"Зона" - это точка делегирования в дереве DNS. Она содержит все имена от конкретной точки "вниз", за исключением делегированных в другие зоны. "Точка делегирования" имеет одну или более NS записей в "родительской зоне", которые должны совпадать с эквивалентной NS записью в корне "делегированной зоны" (т.е., имя "@" в файле зоны).

Понимание разницы между "зоной" и "доменом" очень важно для нормальной работы сервера имен. Например, рассмотрим домен DEC.COM, который включает такие имена как POBOX1.PA.DEC.COM и QUABBIN.CRL.DEC.COM даже если зона DEC.COM включает только делегирование зон PA.DEC.COM и CRL.DEC.COM. Зона может входить конкретно в один домен, а также может включать только часть домена (оставшаяся часть которого может быть делегирована другим серверам имен). Говоря на техническом языке, каждое имя в дереве DNS является "доменом", даже если это "терминал", который не имеет "поддоменов". Каждый поддомен является доменом и каждый домен, кроме корневого, также является поддоменом. Эта терминология не интуитивна. Чтобы более полно понять трудности и тонкости предмета, вы можете почитать RFC 1033, 1034, и 1035.

Подразумевая, что BIND - это Сервер Имен Домена в основном будем иметь дело с понятием зона. Первичная (primary) и вторичная (secondary) определения в файле named.boot обозначают зоны, а не домены. Когда вы кого-нибудь спрашиваете, хотят ли они быть вторичным сервером для вашего "домена ", вы, вообще-то говоря, спрашиваете о вторичном обслуживании некоторого количества зон.

Каждая зона будет иметь один "первичный " (primary) сервер, который считывает содержимое зоны из некого локального файла, который редактируется человеком или автоматически генерируется из некоего другого локального файла, редактируемого человеком. Далее следует некое количество "вторичных " (secondary) серверов, загружающих содержимое зон используя IP/DNS протокол (что означает, что вторичные серверы будут соединятся с первичным и вытаскивать зоны используя IP/TCP). Этот набор серверов (первичный и все вторичные) должен быть описан в записях типа NS в родительской зоне, что и составляет суть "делегирования ". Этот набор серверов также должен быть описан в самом файле зоны, обычно под именем "@ " что является обозначением "верхнего уровня " или "корня " текущей зоны. Вы можете перечислить сервера в записях верхнего уровня зоны "@ " NS которые не в родительской NS делегации, но вы не можете перечислить сервера в родительской делегации, которые не представлены в "@ "зоны. Каждый из серверов, описанный записью типа NS должен быть сконфигурирован как авторитативный для своей зоны (как первичный, так и вторичный). Если сервер описанный записью NS не авторитативный, он будет отвечать с "неубедительной делегацией " при запросе к нему.


Перевод Alexander S. Plotnikov, 1998