4.11. Протокол dns
Протокол DNS является служебным протоколом прикладного уровня. Этот протокол несимметричен - в нем определены DNS-серверы и DNS-клиенты. DNS-серверы хранят часть распределенной базы данных о соответствии символьных имен и IP-адресов. Эта база данных распределена по административным доменам сети Internet. Клиенты сервера DNS знают IP-адрес сервера DNS своего административного домена и по протоколу IP передают запрос, в котором сообщают известное символьное имя и просят вернуть соответствующий ему IP-адрес.
Если данные о запрошенном соответствии хранятся в базе данного DNS-сервера, то он сразу посылает ответ клиенту, если же нет - то он посылает запрос DNS-серверу другого домена, который может сам обработать запрос, либо передать его другому DNS-серверу. Все DNS-серверы соединены иерархически, в соответствии с иерархией доменов сети Internet. Клиент опрашивает эти серверы имен, пока не найдет нужные отображения. Этот процесс ускоряется из-за того, что серверы имен постоянно кэшируют информацию, предоставляемую по запросам. Клиентские компьютеры могут использовать в своей работе IP-адреса нескольких DNS-серверов, для повышения надежности своей работы.
База данных DNS имеет структуру дерева, называемого доменным пространством имен, в котором каждый домен (узел дерева) имеет имя и может содержать поддомены. Имя домена идентифицирует его положение в этой базе данных по отношению к родительскому домену, причем точки в имени отделяют части, соответствующие узлам домена.
Корень базы данных DNS управляется центром Internet Network Information Center. Домены верхнего уровня назначаются для каждой страны, а также на организационной основе. Имена этих доменов должны следовать международному стандарту ISO 3166. Для обозначения стран используются трехбуквенные и двухбуквенные аббревиатуры, а для различных типов организаций используются следующие аббревиатуры:
com - коммерческие организации (например, microsoft.com);
edu - образовательные (например, mit.edu);
gov - правительственные организации (например, nsf.gov);
org - некоммерческие организации (например, fidonet.org);
net - организации, поддерживающие сети (например, nsf.net).
Каждый домен DNS администрируется отдельной организацией, которая обычно разбивает свой домен на поддомены и передает функции администрирования этих поддоменов другим организациям. Каждый домен имеет уникальное имя, а каждый из поддоменов имеет уникальное имя внутри своего домена. Имя домена может содержать до 63 символов. Каждый хост в сети Internet однозначно определяется своим полным доменным именем (fully qualified domain name, FQDN), которое включает имена всех доменов по направлению от хоста к корню. Пример полного DNS-имени : citint.dol.ru.
В сетях TCP/IP компьютеры для общения между собой используют IP-адреса. Однако то, что удобно машинам, неудобно людям. Сама человеческая натура протестует против запоминания чисел типа 192.120.18.34. К тому же IP-адреса совсем не информативны. По IP-адресу невозможно понять, что это: сервер, ПК, маршрутизатор или сетевой принтер. Приятней работать с осмысленными именами, такими как sales-server. Тем не менее сетевые устройства обращаются друг к другу, используя IP-адрес, а не имена.
Решает эту проблему система именования сетевых объектов, которая отвечает за преобразование символьных имен в IP-адреса. Системе передается имя (например archie.univie.ac.at), а она возвращает IP-адрес (140.78.3.8).
Система имен доменов (Domain Name System, DNS) появилась середине 80-х годов. DNS реализует иерархическое пространство имен. Единицей измерения является домен (территория, область). Понятие домена DNS не надо путать с доменом Windows NT или доменом NIS. Они не имеют друг к другу никакого отношения. На Рисунке 4.7. приведена часть иерархической структуры DNS сети Internet.
Вся сеть представляется в виде единого иерархического дерева. На вершине располагается корневой домен (обозначается символом "●"). Ниже находятся домены первого уровня. Поскольку Internet развивался в первую очередь в США, это вызвало некоторый крен при формировании доменов первого уровня: Internet как бы оказался поделенным между США и всем остальным миром.
Наиболее известные домены первого уровня:
com - коммерческие организации (главным образом в США);
edu - учебные заведения США;
gov - правительственные учреждения США;
mil - военные учреждения США;
net - различные сетевые агентства и Internet-провайдеры;
int - международные организации;
org - некоммерческие учреждения;
код страны - двухбуквенный код для обозначения государства (ru - для России).
Ниже доменов первого уровня располагаются домены второго уровня и так далее вплоть до хостов. Для доменов первого уровня, обозначающих государства, доменами второго уровня часто бывают города (например, msk - для Москвы), а доменами третьего уровня - предприятия и организации.
Любой хост или домен в Internet однозначно идентифицируется так называемым полным доменным именем (Fully Qualified Domain Name, FQDN). Его иногда еще называют абсолютным доменным адресом.
Так, для сетевого устройства host1 полное доменное имя будет host1.company1.msk.ru. а для домена company1 - company1.msk.ru.
Домены в FQDN записываются справа налево в порядке подчинения и разделяются точками. Каждая отдельная составляющая FQDN называется меткой (label). Длина метки не должна превышать 63 символа, а полная длина FQDN - 255 символов. Допустимыми символами являются буквы английского языка, цифры и знак дефиса "-" (знак дефиса не может стоять в начале или конце метки). Регистр букв значения не имеет, т. е. company1.msk.ru. и COMPANY1.MSK.RU. обозначают один и тот же домен.
Конечная точка в полном доменном имени обозначает, во-первых, корневой домен, и, во-вторых, что используется абсолютная адресация.
Кроме абсолютной применяется и относительная доменная адресация. Когда два устройства находятся в одном и том же домене, они могут обращаться друг к другу по имени, не указывая полного доменного пути. Так, host2 обращается к host1 двумя способами:
по полному доменному имени host1.company1.msk.ru.
по относительному доменному адресу host1
В полном доменном имени конечную точку можно не ставить, поскольку обычно программное обеспечение TCP/IP подразумевает, что составное доменное имя (т. е. когда присутствует более двух меток) обозначает FQDN. Таким образом,
company1.msk.ru. и company.msk.ru.
Домены находятся в иерархическом подчинении друг другу, причем домены являются узлами дерева доменов, а хосты - листьями.
Понятие домена достаточно емкое и в то же время гибкое. Оно не ограничивается какими-то физическими границами, например границами IP-сети или сегмента Ethernet. Доменом DNS может быть и страна, и предприятие, и отдел банка. Один домен может включать как множество сетей, так и только часть одной сети или даже подсети.
Основное назначение DNS состоит в преобразовании имени хоста в его IP-адрес. На самом деле DNS является системой, не зависимой от протокола сетевого уровня, т. е. она может быть реализована не только в среде TCP/IP. Однако функции DNS этим не ограничиваются. DNS позволяет получить следующую информацию: IP-адрес хоста; доменное имя хоста по его IP-адресу; псевдонимы хоста, тип центрального процессора и операционной системы хоста; сетевые протоколы, поддерживаемые хостом; почтовый шлюз; почтовый ящик: почтовую группу; IP-адрес и доменное имя сервера имен доменов. Существует и ряд других, реже используемых параметров.
- 4. Программное обеспечение сетей
- 4.1. Структура стека tcp/ip. Краткая характеристика протоколов
- 4.2. Адресация в ip-сетях
- 4.2. Три основных класса ip-адресов
- Структура адресов сетей классов a – e
- Диапазон адресов сетей и хостов классов a и c
- 4.3. Использование масок в ip-адресации
- 4.4.Отображение физических адресов на ip-адреса: протокол arp
- 4.5. Автоматизация процесса назначения ip-адресов узлам сети - протокол dhcp
- 4.6. Протокол ip
- 4.6.1.Формат пакета ip
- 4.7. Маршрутизация. Виды и алгоритмы маршрутизации.
- 4.7.1. Алгоритм поиска маршрута в таблице маршрутизации
- 4.7.2. Протокол динамической маршрутизации rip
- 4.8. Протокол управляющих сообщений icmp
- 4.8.1. Формат сообщений протокола icmp
- 4.8.3.Сообщения о недостижимости узла назначения
- 4.8.4.Перенаправление маршрута
- 4.9. Протокол udp
- 4.9.1. Порты
- 4.9.2. Формат udp-пакета
- 4.10. Протокол tcp
- 4.10.1. Алгоритм установления tcp-соединения
- 4.10.3. Формат сообщений tcp
- 4.11. Протокол dns
- 4.11.1. Принцип работы dns
- 4.11.2. Алгоритм взаимодействия узлов в распределенной сети
- 4.12. Протокол управления сетью snmp
- 4.12.1. Основы технологии
- 4.12.2. Различия в представлении информации
- 4.12.3. Базы данных управления
- 4.12.4. Операции
- 4.13. Протоколы дистанционного управления. Протокол telnet
- 4.14. Протоколы файлового обмена
- 4.14.1. Тривиальный протокол передачи файлов (tftp)
- 4.14.2. Простой протокол передачи файлов (sftp)
- 4.14.3. Протокол передачи файлов ftp
- 4.14.4. Команды ftp
- 4.15. Электронная почта
- 4.15.1. Протокол smtp
- 4.15.2. Протокол pop3 (Post Office Protocol)
- 4.15.3. Протокол imap
- 4.16.1. Универсальный указатель ресурса url.
- 4.16.2. Протокол http
- 4.16.3. Методы протокола http
- 4.16.4. Статус-Код и пояснение к нему
- 4.16.5. Языки и средства создания Web-приложений.