В некоторых доменах верхнего уровня, например в gTLD
.gov
и
.edu
, а также во многих ccTLD регистрация доменов затруднена. Список ccTLDs, включающий информацию об организациях, ответственных за распределение доменных имен, можно найти по адресу
http://www.iana.org/cctld/cctld-whois.htm
.
На заметку
В конце 2001 г. были изменены принципы управления доменом верхнего уровня
.us
. С начала 2002 г. появилась возможность регистрировать домены непосредственно в TLD
.us
. Если вы собираетесь зарегистрировать свой домен в составе
.us
, вам следует
обратиться по адресу
http://www.nic.us
.
Некоторые домены, в особенности ccTLD, содержат иерархию поддоменов. Например, в составе домена
.uk
созданы поддомены
.gov.uk
и
.со.uk
, предназначенные для конкретных целей. Если организация захочет зарегистрировать домен, непосредственно принадлежащий TLD ей будет отказано в этом. В различных поддоменах действуют разные правила регистрации новых доменов. Например,
.gov.uk
выделен для государственных учреждений Великобритании, а домен
.co.uk
— для коммерческих организаций (он выполняет те же функции, что и gTLD
.com
).
При регистрации домена вам придется представить некоторую информацию о себе, например почтовый адрес и номер телефона. Вам также необходимо сообщить IP-адреса двух серверов DNS, настроенных для поддержки домена. Если вы установили собственные серверы DNS, вы можете сами сообщить их адреса. Если вы хотите, чтобы DNS-услуги предоставляла для вас другая организация, вы попадаете в сложное положение. С одной стороны, чтобы пользоваться услугами внешнего сервера DNS, вы должны зарегистрировать домен, а с другой стороны, чтобы зарегистрировать домен, вам нужны серверы DNS. Разорвать этот замкнутый круг можно с помощью сервера DNS, принадлежащего регистрирующей организации. Многие провайдеры также готовы предоставить свои услуги на время регистрации домена.
Серверы DNS для Linux
Первое, что необходимо сделать при установке сервера DNS, — решить, какой продукт вы будете использовать в качестве сервера. Разные программы предоставляют различные возможности. Наиболее часто используемые пакеты описаны ниже.
• BIND. Сервер BIND (Berkeley Internet Name Domain) — самая популярная в настоящее время программа, которая может обеспечивать функции сервера DNS в системе Linux. Именно этому серверу уделяется основное внимание в данной главе. Пакет BIND поставляется в составе многих дистрибутивных пакетов, кроме того, вы можете скопировать его с узла
http://www.isc.org/products/BIND/
. В настоящее время доступна версия 9.2.0, но на момент написания данной книги, т.е. в 2002 г., многие дистрибутивные пакеты Linux еще поставлялись с версиями 8.2.x данного продукта. Заметьте, что формат конфигурационного файла старой версии 4.9.x отличается от формата, используемого в новых версиях сервера.
•
djbdns
. D. J. Bernstein's DNS server (сервер DNS Д. Дж. Бернстайна) представляет собой продукт, альтернативный BIND, пользующийся популярностью у некоторых пользователей. Этот сервер отличается небольшими размерами, высокой эффективностью и обеспечивает высокий уровень защиты. Он не принят в качестве стандарта и не поставляется ни с одним из дистрибутивных пакетов, рассматриваемых в данной книге. При желании вы можете заменить BIND на
djbdns
. Дополнительная информация о
djbdns
содержится на Web-странице
http://cr.yp.to/djbdns.html
.
•
pdnsd
. Данный продукт представляет собой демон, реализующий proxy-сервер DNS. Он ориентирован для использования в локальной сети в качестве посредника между локальными компьютерами и внешним сервером DNS. Он также предоставляет ограниченные средства преобразования имен, но не поддерживает все возможности BIND или
djbdns
. Дополнительную информацию о
pdnsd
можно найти по адресу
http://home.t-online.de/home/Moestl/
.
•
dnscache
. Подобно
pdnsd
,
dnscache
представляет собой proxy-сервер DNS. Он предназначен для ускорения процесса преобразования имен. В отличие от
pdnsd
,
dnscache
не поддерживает локальные компьютеры, за исключением узла
localhost
(127.0.0.1). Информацию о данном продукте можно получить, обратившись по адресу
http://cr.yp.to/djbdns/dnscache.html
.
Большинство администраторов, занимающихся поддержкой компьютеров под управлением Linux, используют в качестве сервера DNS продукт BIND, поскольку он принят как стандарт и поставляется с большинством версий данной операционной системы. Администраторы, для которых вопросы безопасности системы имеют первоочередное значение, отдают предпочтение продукту
djbdns
. Proxy-серверы DNS в основном используются в небольших сетях для кэширования результатов запросов к внешним серверам и преобразования локальных имен. Если же вы хотите поддерживать собственный домен и выполнять преобразование имен по запросам извне, возможности подобных продуктов не позволяют решать эти задачи. Остальной материал данной главы посвящен рассмотрению BIND, но некоторые действия по администрированию этого сервера применимы также к
djbdns
.
Базовая конфигурация DNS
Установка конфигурации DNS предполагает решение двух задач: настройка сервера DNS (в пакете BIND функции сервера выполняет программа
named
) и администрирование домена. В данном разделе обсуждаются особенности выполнения первой задачи, а администрированию домена посвящен следующий раздел. (Далее в этой главе будут рассмотрены использование локального сервера DNS для кэширования результатов преобразования имен и интеграция BIND с сервером DHCP.) При настройке сервера DNS устанавливаются основные опции, указывается расположение других серверов DNS (в частности, серверов корневого домена) и задается информация о поддерживаемых зонах. Даже для небольшого домена необходим вторичный (ведомый) сервер имен. В принципе вы можете установить конфигурацию вторичного сервера, скопировав содержимое соответствующих файлов, созданных для локального сервера, но гораздо лучше настроить вторичный сервер так, чтобы от автоматически дублировал параметры первичного сервера.
Главный конфигурационный файл BIND
Основные опции BIND задаются в главном конфигурационном файле с именем
named.conf
. Этот файл обычно располагается в каталоге
/etc
. В некоторых дистрибутивных пакетах Linux файл с опциями, установленными по умолчанию, в каталоге
/etc
отсутствует. В этом случае файл-образец надо искать в каталоге, содержащем документацию BIND (обычно это каталог