Что такое DNS и зачем он нужен? Служба каталога Active Directory Microsoft Windows Server 2003 при поиске ресурсов в сети полностью полагается на доменную систему имен (DNS). Без надежной инфраструктуры DNS, контроллеры домена в сети не смогут обменивается информацией, а именно репликацией данных друг с другом, клиенты Microsoft Windows XP и Microsoft Windows 7 или не смогут входить в сеть, а серверы, на которых выполняется приложение Microsoft Exchange Server 2000, не смогут посылать электронную почту. КАроче полный п… простите коллапс сети. Но даже в случае если вы установили кое - как службу DNS, но работает она нестабильно, то и сеть Windows Server 2003 будет работать соответственно. Это значит, что для управления средой Active Directory вы должны иметь глубокое знание концепций DNS и ее реализации в Windows Server 2003. С чего все начиналось. Что бы понять основную задачу службы DNS мы сделаем короткий экскурс в историю и увидим как сама жизнь и заставила и подсказала создать такую службу, даже если бы ее и не было бы. Когда еще не было сетей естественно не было и всяких DNS служб и сетевым админам не нужно было себе морочить голову разными протоколами, адресами и сетевыми службами. Но вот настало время, когда сама жизнь, потребовала обеднить между собой ЭВМ, тут я хотел написать слово компы, но это не совсем то слово, которое нужно и используем к тому времени словосочетание электронные вычислительные машины (ЭВМ). Итак, начинают появляться первые сети. И как нам рассказывают историки сетевого материализма, считается, что бабушка всех сетей была сеть ARPANET. По причине того что ЭВМ в сети было мало, а пользователи сети того времени как правило были «все в одном флаконе» и сетевыми админами и программистами, то есть на этих машинах и в данной сети работали профессионалы, имена ЭВМ, а более того –их сетевые адреса помнились наизусть. Вначале каждый узел сети ARPANET имел уникальное имя и уникальный номер. Потом сеть стало расти, и наступил такой момент, когда количество ЭВМ уже в человеческой памяти стало невозможно удерживать. И тогда сетевые разработчики придумали такой текстовый файл, который находился на каждой машине в сети иле лучше скажем ЭВМ, в котором напротив имени узла писалось его IP-адрес. Примерно в таком виде: IP адрес - ИМЯ УЗЛА ПРИМЕЧАНИЕ 102.54.94.97 server1.rk.com # source server 38.25.63.10 xyz.rk.com # x client host И получил название этот файл HOSTS. Идея состояла в том, что moycomp – это легко запоминаемое имя узла или скажем уже в терминах DNS имя хоста, и вместо того что бы запоминать всячкский несвязанный набор цифр, пользователь писал когда хотел обратиться к нужному хосту его имя (в данном примере имя хоста moycomp). А клиентский компонент (сейчас назваается resolver, (такая специальная программа )) читает этот файл, находит имя машины, извлекает ее IP-адрес и выполняет поиск по этому адресу. Вот так было в начале. И рудимент данного файла сохранился до сих пор на всех версиях операционных систем Windows. Найти и посмотреть на него вы можете воочию на своей машине по адресу %SYSTEMROOT%\system32\drivers\етс,открыв его с помощью простого блокнота. Данный файл - HOSTS тогда заполнялся централизовано (вручную) и пользователи скачивали его себе на машинах. Но сеть росла и данный файл становился ужасТно большим, и главное что при ручном вводе записей соответствия IP адресу имя машины, допускались ошибки. Не буду говорить о том, что конфликты возникали, когда в сети появлялись хосты с одинаковыми именами. Когда был принят в качестве стандарта TCP/IP как протокол сети ARPANET, эта организация решила также усовершенствовать систему преобразования имен, и остановилась на DNS, так как DNS является центральной базой данных, содержащей указатели на децентрализованные базы данных, включающие записи для каждого пространства имен. Кто не знает что такое вообще DNS, это предложение трудна для понимания....Но мы на то и разбираемся с DNS что бы понять что это за штучка такая....Простите отвлекся.......Далее.... Разработчиком этой системы была такая контора как DARPA, и они тогда решили, использовали доменную систему имен Беркли (Berkeley Internet Name Domain, BIND) в качестве программного обеспечения DNS. То есть, как видите, если в двух словах, не от хорошей жизни, жисТь заставила создать такую службу, которая автоматически ставит в соответствии «имени узла» его IP адрес, и назвали эту службу DNS. Теперь напишем такую фразу. DNS является службой разрешения имен. Кому то это пока покажется так же непонятно...Но для тех кто этого пока не понял - запомните "Процесс разрешения имен или имени есть нахождение данному имени его IP адрес....смотри выше формат файла HOSTS. Учитывая все выше сказанное, думаю что эта фраза становится в некоторой степени понятной. Ну давайте еще остановимся на ее основной функции разрешения имен. К примеру вам надо зайти на какой-то сайт (который естественно находится на каком-то компе, названый сервером, и имеющий свой IP-адрес) . Ну сами знаете что в браузере вы набирайте не IP адрес данного сайта а его имя, к примеру имя моего сайта alterego.ucoz.org . Но по сути, в любой сети компы обращаются друг к другу не по имени а по IP адресам. Так вот.... набрав в браузере строку alterego.ucoz.org вы все же получайте связь с данным сайтом, который находится на определенном сервере, который имеет свой уникальный IP адрес, и которого вы естественно не знаете. Так вот (еще раз).... получив такое имя как alterego.ucoz.org браузер спрашивает службу DNS типа – «А не скажешь дружок, какой IP адрес у этого имени». DNS ищет в своей базе данных какой IP адрес соответствует этому имени. Она, то есть служба DNS занимается вопросом разрешения данного имени, то надо понимать, что данному имени ставится в соответствии IP адрес, если такое сочетание как «имя узла» и его «IP-адрес» существует в базе DNS. Как мы увидим дальше, если в местной базе данных DNS, такого сочетания как "имя" и "IP – адреса" - нет, то DNS служба занимается опросом всех DNS служб типа «мужики -подскажите есть ли у вас такой IP соответствующий такому имени как ….», получив ответ наш комп обращается к другому компу (которого он и ищет по имени), а в нашем случае к компу с именем alterego.ucoz.org уже не по имени, а как положено в сети по его IP адресу. Вот это и есть разрешение имени. Фууу….
Давайте после того как мы надеюсь, поняли основное предназначение службы DNS определимся с терминами. Термины Службой DNS - называется служба выполняющая преобразование символических данных доменных имен в IP –адреса в ответ на запросы клиентов. Думаю это понятно. Она (служба DNS) ставит в соответствии вот такому символическому (буквы это в данном случае символические данные) доменному имени, к примеру, как «moycomp.rk.com» соответствующий ему IP – адрес , к примеру 10.10.10.10 DNS сервером - называется компьютер на котором запушена служба DNS. DNS клиентом – называется компьютер который обращается к DNS серверу с запросом на разрешение имени. Клиент DNSфункционирует «прозрачно» для пользователя. Что значит «прозрачно»? То что пользователь не видит, и не слышит, и не чувствует как это происходит. Вот так и хочется написать – работает втихаря. В ответ на свой запрос по разрешению имени клиент DNS должен получить либо IP-адрес, либо сообщение о невозможности разрешения посланное серверу DNS имени. Далее данный клиент передает полученный IP-адрес приложению которому требуется данный IP-ардрес. Что такое пространство имен DNS. Основными компонентами пространства имен DNS являются домены. Домены надо понимать как группу сетевых хостов (узлов) объединенные по некоторому логическому принципу. Домены взаимодействуют друг с другом при помощи отношений «родитель-потомок», образуя тем самым некую иерархию. То есть, когда говорится о иерархии доменов надо понимать отношение «родитель-потомок». Положение домена в иерархии определяет уровень домена (говорится – домен второго уровня, домен третьего уровня и т.д. имея ввиду его положение от родительского домена). В основе иерархического построения пространства имен DNS лежит домен, который называется корневым доменом (rootdomain)(не путайте с корневым доменом в Active Directory). Смотрите рисунок 1.
Рисунок 1. Пространство имен DNS. Корневой домен следуя традициям русской литературы является как "свадебный генерал". То есть, корневой домен формален или чисто символический, но тем не мнение он является прародителем всех остальных ныне существующих в интернете доменов. Или родителем доменов первого уровня таких как com, edu, org... и прочих принадлежащих различным организациям, а так же доменам принадлежащих странам таких как ru, ro, jp...ну и так далее. Домены как мы знаем (если читали все выпуски рассылки или статьи на сайте) выступают в роли контейнеров. И если рассматривать это как иерархию, то в качестве листьев выступают сведения о ресурсах этих доменов. Любой объект сети исходя из стандартов определяющих службу DNS называется хост (host) или хостами. Дальше напишем такое предложение которое хорошо бы запомнить - любой объект пространства имен DNS будь то домен или хост имеет уникальное имя в пределах родительского контейнера. К примеру когда я хотел зарегистрировать имя сайта, а именно alterego.ucoz.ru то данное имя в контейнере ucoz.ru было занято. Тогда оставляя начальное имя alterego я нашел что в контейнере ucoz.org имя alterego свободно. Как видите имена должны быть уникальны только в своем контейнере. Я здесь оперировал более широким термином таким как контейнер, хотя мог оперировать такими понятиями как домен и поддомен или родительский домен. Имена DNS могут состоять из символов латинской графики, цифр, и знака "-" тире. Некоторые версии DNS в том числе и DNS Windows Server 2003 допускают использовать в именах символа подчеркивания "_", а так же символов в формате UTF-8. Однако в жизни имена сетевых объектов (чисто имена) для их идентификации. Точно идентифицировать объект только при помощи его "полного доменного имени" FQDN (Fully Qualified Domain Name). Полное доменное имя хоста образуется из имени объекта и суффикса DNS. Что такое суффикс DNS?. Это всего лишь перечисление имен всех контейнеров (по сути доменов), находящихся между непосредственно именем хоста или объекта и корнем пространства имен. Не буду здесь дальше разглагольствовать, думаю понятно, если что задавайте вопросы на сайте. Да забыл сказать - единственным объектом пространства имен DNS не имеющие имя есть корневой домен. Вот так, самый главный а без имени, этакий закулисный "папа Карлеоне". Для ссылки на него используется точка ".". И в завершение первой темы касающееся основ ведения в DNS привожу таблицу в которой перечислены все элементы образующие пространство имен DNS. Таблица 1. Элементы пространства имен DNS.
Продолжение темы смотрите здесь
|