DNS — не роскошь, о необходимость
Стандарт нового протокола и, соответственно, системы адресования были
приняты в 1982 году.
Однако человеку гораздо проще запомнить некоторое слово, чем четыре
бессодержательных для него числа. Из-за этого сразу после начала работы
новой сети у пользователей стали появляться списки, в которых хранились не
только адреса, но и соответствующие им имена узлов.
Эти данные, обычно хранившиеся в файле с именем hosts, позволяли при
указании имени узла мгновенно получить его IP-адрес. Позже процесс внесения
корректуры в эти файлы был усовершенствован — последнюю версию файла hosts
можно было скачать с нескольких серверов с заранее определенными адресами.
С ростом числа компьютеров в сети корректировать эти файлы вручную стало
невозможно. Появилась необходимость в глобальной базе имен, позволяющей
производить преобразование имен в IP-адреса без хранения списка
соответствия на каждом компьютере. Такой базой стала DNS (Domain Name
System) — система именования доменов, которая начала работу в 1987 году.
Структура DNS
В Интернете существует множество DNS-серверов, предоставляющих клиентам
необходимую информацию об именах узлов сети. Важнейшим качеством DNS
является порядок их работы, позволяющий DNS-серверам синхронно обновлять
свои базы. Добавление адреса нового сайта в Интернете проходит за считанные
часы.
Вторая особенность системы — это организация DNS-серверов в виде
иерархической структуры. Например, запрос от клиента об имени
ftp.microsoft.com может пройти через несколько DNS-серверов, от
глобального, содержащего информацию о доменах верхнего уровня (.com, .org,
.net и т. п.), до конкретного сервера компании Microsoft, в чьих списках
перечислены поддомены вида *. miсrosoft.com, в числе которых мы и находим
нужный нам ftp.microsoft.com. При этом множество DNS-серверов организуется
в зоны, имеющие права и разрешения, делегированные вышестоящим сервером.
Таким образом, при добавлении нового поддомена на местном сервере
уведомления остальных серверов в Глобальной сети не производятся, но
информация о новых серверах оказывается доступной по запросу.
Зоны, домены и поддомены
С ростом числа доменных имен работа между серверами была распределена по
принципу единоначалия. Идея проста. Если организация владеет собственным
доменным именем (например microsoft.com или white-house, gov), то
именование внутри своего домена она производит самостоятельно. Единственная
сложность при такой работе — предоставление вышестоящими серверами этих
прав нижестоящим серверам.
Уточним термины. Домен — это некий контейнер, в котором могут содержаться
хосты и другие домены. Имя домена может не совпадать с именем контроллера
домена, то есть домен — это виртуальная структура, не привязанная к
компьютеру. Хост же, напротив, соответствует физическому компьютеру,
подключенному к сети. Имя хоста является именем конкретного компьютера. Имя
хоста может совпадать с именем домена. Имя домена может совпадать с именем
зоны, к которой он принадлежит, в этом случае домен является корневым в
зоне. При этом зона не обязана содержать в себе одноименный (корневой)
домен.
Зона — это контейнер, объединяющий несколько доменов в структуру с общими
разрешениями на управление, то есть зоны являются контейнерами для доменов
и хостов. Зоны могут быть вложены одна в другую. Разница между зонами и
доменами в том, что домену может принадлежать несколько зон, содержащих
различные его поддомены. Это дает возможность делегировать полномочия для
поддоменов и управлять группами поддоменов.
Зоны используются для делегирования полномочий. Каждый домен должен
находиться в составе зоны при создании поддомена последний может быть
переведен в новую зону, либо оставлен в зоне стоящего над ним домена. Для
каждой зоны разрешения на создание или удаление всех входящих в нее доменов
делегируются отдельно. Для нормальной работы корпоративной сети в
большинстве случаев хватает единственной зоны, более того, очень часто
системные администраторы ограничиваются созданием единственного домена.
Интеграция DNS в Active Directory
Компания Microsoft рекомендует использовать DNS-серверы в корпоративных
сетях для организации работы компьютеров в составе домена. Дело в том, что
технология DNS более универсальна и эффективна, чем использующиеся на
старых системах WINS и NetBIOS. Клиенты только посылают запросы серверу и
получают ответы без обращения к каким-либо иным узлам сети.
С точки зрения производительности лучше всего интегрировать DNS в Active
Directory, что возможно на серверных ОС компании Microsoft начиная с
Windows 2000 Server. Совмещение ролей DNS-сервера и контроллера домена
упрощает администрирование сети, особенно если размеры ее достаточно
велики.
Что нам стоит DNS построить
DNS реализуются в соответствии с единым стандартом, основы которого
изложены в RFC 1011,1034 и 1035. В Windows Server 2003 процесс развертывания
и управления DNS сделан проще, чем в предыдущих версиях операционных
систем, благодаря мастерам настройки ролей сервера. В Windows Server 2003
добавлены и новые функции управления Active Directory, которая может быть
интегрирована с DNS воедино,
При создании контроллера домена, то есть сервера, управляющего работой
Active Directory, мастер предлагает создать и настроить DNS-сервер. Для этого достаточно в настройках отметить пункт
«Install and configure the DNS server on this computer, and set this computer
to use this DNS server as its preferred DNS server». В этом случае запускается
DNS-сервер и создается зона, одноименная с вашим доменом.
Для имени домена лучше использовать два слова, разделенных точкой (вида
гпу-domen.ru). Технически возможно включить компьютеры вашей сети и в домен
верхнего уровня, но Microsoft не рекомендует использовать для домена имя,
состоящее из одного слова, так как в этом случае возникают сложности с
организацией пересылки запросов (forwarding) и динамических обновлений.
Настройка DNS
После перезапуска системы в окне «Manage Your Server» (управление сервером)
и на панели «Администрирование» появятся новые элементы — ссылки на консоли
управления Active Directory (три иконки) и DNS (одна иконка). Остановимся
подробнее на консоли управления DNS-сервером.
Дерево DNS содержит список ONS-серве-ров, в нашем случае список будет
состоять из одного пункта — имени нашего сервера. Раскрыв его, мы увидим
три папки — «Forward Lookup Zones» (зоны прямого просмотра), «Reverse
Lookup Zones» (зоны обратного просмотра, пустая папка) и «Event Viewer» .
Папка зон прямого просмотра будет содержать две записи. Зона, чье имя
начинается с _msdcs, относится к организации работы системы (DC
расшифровывается как Domain Controller, контроллер домена), пока что нам ее
трогать не нужно, так же как и папку _msdcs во второй зоне. Выбрав вторую
зону, в списке справа мы увидим ее содержимое — собственно говоря, все
компьютеры, чьи имена хранятся на нашем сервере, будут перечислены именно
там.
Добавление новых хостов будет происходить автоматически. Все операционные
системы Windows, начиная с Windows 2000 Professional, поддерживают
корректное обновление базы DNS-сервера в своей локальной сети. Новые пункты
в список имен хостов на DNS-сервере могут добавляться и при помощи службы
«Computer Browser». Вручную же добавление новых доменов и хостов, равно как
и удаление существующих, происходит из меню консоли «Action» или из
контекстного меню правой клавиши мыши.
После запуска контроллера можно приступить к введению в домен клиентских
машин. Повторим, что корректная работа в составе домена возможна только для
систем ранга Professional, начиная с Windows 2000 Professional, то есть в
домене откажутся работать компьютеры под управлением операционных систем
Windows 98, Windows Me или Windows XP Home Edition.
Когда же вы добавляете в домен компьютер с установленной ОС Windows 2000
Professional или Windows XP Professional, система автоматически пошлет
запрос DNS- серверу, а тот в свою очередь добавит новый IP-адрес в список.
В сети, состоящей из компьютеров с фиксированными IP-адресами, работа DNS
предельно проста. Однако как быть, если в вашей сети IP-адреса должны
раздаваться динамически? Тут мы сталкиваемся с определенными сложностями,
поскольку в этом случае DNS-сервер должен обновлять свою базу постоянно,
основываясь на данных, получаемых от DHCP-сервера.
Впрочем, чтобы настроить DNS и DHCP на совместную работу, не требуется
особых усилий. Достаточно открыть «Scope Options» в консоли управления
DHCP-сервером и указать имя вашего DNS-сервера в параметре «DNS Domain
Name».
IP-адрес самого DNS-сервера может быть динамическим. В этом случае для
каждого нового компьютера, выполняющего серверные функции, настройка
сетевых параметров при его подключении будет происходить благодаря
DHCP-серверу. Также не обязательно, чтобы серверы DHCP и DNS физически
находились на одном компьютере. Они будут корректно работать, даже если
запущены на разных машинах.
DNS-сервер может производить очистку списка, удаляя из него данные о тех хостах,
которые удалены из сети. Чтобы настроить очистку списка хостов, нажмите
кнопку «Aging» («Очистка») на вкладке «General» в свойствах зоны — по
умолчанию удаление «просроченных» имен выключено (нужно поставить
соответствующую галочку). Кроме того, там же указывается параметр
автоматического обновления («Dynamic Updates») — по умолчанию он переключен
в «Secure Only» и разрешает производить обновления базы на основе запросов
только от безопасных источников.
Подключаемся к Интернету
У начинающих системных администраторов возникает немало проблем от
некорректного обращения с настройками DMS, в том числе с соответствующими
настройками на компьютерах пользователей. Во-первых, все зависит оттого,
статические или динамические IP-адреса используются в вашей сети. В случае,
если используются статические адреса, убедитесь, что на каждой машине
корректно прописан ее IP-адрес, маска подсети и выбираемый по умолчанию
DNS-сервер. Если же компьютеры получают свои IP-адреса динамически,
посредством DHCP-сервера, то этот же сервер должен указывать и адрес
DNS-сервера. Учтите, что для корректной работы клиентов DHCP-сервер в
подсети должен быть единственным.
Другая задача, возникающая перед администраторами, — это настройка доступа
в Интернет через локальную сеть. Доступ может быть организован по-разному,
и, если все клиенты подключаются через прокси-сервер, настраивать DNS для
работы в Интернете необходимости нет. Другое дело, если вы используете
IР-маскарадинг при помощи NAT. В этом случае клиентские компьютеры в вашей сети
должны будут иметь возможность получать ответы от DNS-серверов в Интернете,
чтобы подключаться к веб-серверам по их IP-адресам.
Реализовать это просто. Вам нужно настроить пересылку запросов с вашего
DNS-сервера на сервер интернет-провайдера {так называемый форвардинг).
Лучше всего организовать это в два этапа. Сначала ваш DNS-сервер отправляет
запрос на маршрутизатор, а тот уже пересылает его провайдеру.
Можно обойтись и одним шагом, ведь если маршрутизатор предоставляет сервис
NAT для выхода в Интернет, то сам DNS-сервер может обращаться
непосредственно к провайдеру. Однако такой метод менее грамотен. Например,
если вы поменяете провайдера, вам придется править настройки уже на
нескольких компьютерах. Кроме того, подключение к Интернету через NAT менее
безопасно, чем перенаправление запросов посредством прокси-сервера. Также
по соображениям безопасности не рекомендуется совмещать роль DNS-сервера и
маршрутизатора на одном компьютере, особенно если он же является и
контроллером домена в вашей сети.
Настройка форвардинга происходит в свойствах DNS-сервера из консоли
управления. Нажимаем правой кнопкой на значке сервера, затем «Properties
-> Forwarders», где и указываем имя вышестоящего домена или перечисляем
DNS-серверы, к которым будет обращаться наш сервер. На вкладке «Root Hints»
перечисляются адреса DNS-серверов сети (не обязательно вышестоящих). Список
«Root Hints» может быть заполнен автоматически при помощи мастера Configure
DNS Server из меню «Action».
Ошибкой является создание зоны с именем «.». В этом случае наш DNS-сервер
начнет считать себя корневым, то есть верхним в глобальном дереве DNS.
Разумеется, никакие пересылки вышестоящим серверам работать не будут. При
создании зоны, чье имя совпадает с частью имени уже существующих зон после
точки (например, у нас есть зона trading.office, а мы создаем зону office),
все принадлежащие ей зоны и домены оказываются вложенными в нее.
Если у вашего сервера в свойствах подключения к локальной сети в качестве
DNS-сервера указан сам контроллер домена, это тоже не очень хорошо.
DNS-запрoсы никогда не должны приходить на сервер с его же адреса — любой
подобный случай однозначно свидетельствует о неправильности настроек.
Разобраться в ситуации поможет «Event Viewer». В случае корректной работы
DNS-сервера в журнале должна появиться запись о старте сервера. Также новые
записи будут появляться по мере добавления новых имен хостов либо при
ручном управлении зонами и доменами.
Для того чтобы детектировать неисправности со стороны клиента, проще всего
воспользоваться консольной утилитой nsLookup, которая поставляется вместе с
операционной системой. После ввода nsLookup в командной строке на экране
должно появиться имя и IP-адрес вашего DNS-сервера, а после этого вам будет
предоставлена возможность протестировать сервер путем отправления запросов
на преобразование имени в IP-адрес. Чтобы увидеть справку по параметрам
команды nslookup, введите в командной строке nslookup help.
|