Система доменных имен

ВВЕДЕНИЕ

 

Internet представляет собой конгломерат сотен тысяч взаимосвязанных гетерогенных сетей и компьютеров (хост-машин). Построение Internet базируется на концепции иерархии протоколов. Протоколы Internet именуются семейством протоколов TCP/IP. В TCP/IP компьютеры взаимодействуют друг с другом на базе различных типов адресов. На физическом уровне используются низкоуровневые физические адреса, соответствующие используемым аппаратным устройствам. С уровня звена данных по уровень представления данных применяется первая абстракция, использующая адреса хост-машин, такие как IP-адреса. И на прикладном уровне применяется абстракция второго уровня, использующая удобные для восприятия пользователей имена хост-машин (hostnames). В семействе протоколов TCP/IP преобразование физических адресов в адреса транспортного уровня (IP-адреса) выполняется протоколом ARP. Для преобразования (или связывания (binding)) IP-адресов в имена хост-машин используется Служба Доменных Имен (Domain Name System или DNS).

 

ОСНОВНАЯ ЧАСТЬ

СИСТЕМА ДОМЕННЫХ ИМЕН.

Первоначальные результаты разработки DNS были опубликованы в 1983 году в RFC 882 и 883. После экспериментов с несколькими реализациями, DNS была формально определена в RFC 1034 и 1035 в 1987 году.

DNS базируется на двух основных концепциях:

1) распределенной базы данных, хранящей обобщенные записи о ресурсах сети (resource records), с децентрализованным управлением;

2) схемы именования, основанной на иерархически структурированных доменных именах.

DNS является распределенной базой данных. Это позволяет локально контролировать отдельные сегменты общей базы данных. Данные в каждом сегменте доступны по сети с использованием технологии клиент-сервер. Адекватная производительность достигается с помощью использования механизмов копирования (replication) и кэширования (caching).

Программы, реализующие серверную часть DNS, называются серверами имен (name servers). Сервер имен содержит информацию о некотором сегменте общей базы данных DNS, для которого он будет являться полномочным сервером, и делает ее доступной для клиентов, называемых решающими программами (resolvers). Решающие программы обычно представляют собой библиотечные функции, которые генерируют запросы и посылают их по сети серверам имен.


Структура базы данных DNS, показанная на рисунке 8.1, представляется, как инвертированное дерево, с корнем (root) на верху дерева.

 

 

Корневое имя (root's name) имеет нулевую метку ("") и обозначается одиночной точкой ("."). Каждый узел (node) дерева представляет раздел общей базы данных или домен (domain). Каждый домен в дальнейшем может делиться на подразделы, называемые в DNS поддоменами. Поддомены представляются как потомки своих родительских узлов (parent nodes). Каждый домен имеет метку (label), которая идентифицирует его местоположение относительно его родительского домена. Кроме того домен имеет доменное имя (domain name), которое идентифицирует его местоположение в базе данных DNS. Полное доменное имя представляет собой последовательность меток от корневого домена, которые разделяются между собой символом ".".

 

В DNS каждый домен может администрироваться различными организациями. При этом каждая такая организация может затем делить свой домен и предоставлять полномочие на администрирование этих поддоменов другим организациям. Например, Сетевой Информационный Центр (NIC) отвечает за домен "edu" (educational), но предоставляет полномочия для поддомена "berkeley.edu" университету Беркли в Калифорнии. Домены могут содержать как хост-машины, так и другие домены (свои поддомены). Доменные имена используются, как индексы в базе данных DNS.
Каждая хост-машина в сети имеет доменное имя, которое является указателем на информацию об этой хост-машине. Эта информация может содержать IP-адрес, маршрутную информацию почтовой системы и т.д.. Хост-машина может иметь одно или несколько доменных имен-псевдонимов (domain name aliases), которые является простыми указателями одного доменного имени (имени-псевдонима) на другое (каноническое доменное имя (canonical domain name)).

 

Программы, которые хранят информацию о пространстве доменных имен, называют серверами имен (name servers). Сервер имен обычно имеют полную информацию о некоторой части пространства доменных имен, называемой зоной. О таком сервере говорят, что он является авторизованным или полномочным сервером для данной зоны. Сервер имен может быть авторизованным для нескольких зон.
Зона содержит доменные имена и данные, которые содержит домен, исключая доменные имена и данные, делегированных поддоменов.

 

Однако если поддомен какого-либо домена не делегируется, то зона будет содержать доменные имена и данные этого поддомена.

 

Таким образом сервер имен содержит данные только о зоне, для которой он является полномочным, а также указатели на полномочные серверы делегированных поддоменов. Если сервер имен получает запрос о данных из делегированного поддомена, в ответ он может выдать список полномочных серверов, с которыми нужно связаться запрашивающей стороне для получения информации этого поддомена.

 




ТИПЫ СЕРВЕРОВ ИМЕН

 

DNS определено два типа серверов имен: первичные (primary masters) и вторичные (secondary masters). Первичный сервер имен получает данные о зоне, для которой он является полномочными, из файлов на хост-машине, где он выполняется. Вторичный сервер имен получает данные о зоне от другого полномочного сервера имен. Когда стартует вторичный сервер, он связывается с полномочным (первичным) сервером зоны и скачивает данные о зоне. Такую процедуру называют передачей зоны (zone transfer). В процессе работы вторичный сервер периодически опрашивает первичный сервер. Если данные на первичном сервере были изменены, то вторичный сервер обновляет свои данные, заново перекачивая все данные зоны с первичного сервера.
Обычно для зоны создается один первичный сервер имен и один или несколько вторичных серверов. Сервер имен может быть первичным для некоторой зоны и вторичным для другой зоны.

 



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: