logo
Лекции по сетям ЭВМ 21-79

53. Вспомогательные и сопутствующие стеку tcp/ip протоколы и сервисы: dns, icmp.

Добавить коротко про ARP/RARP

Помимо основных протоколов стек протоколов TCP/IP содержит большое количество вспомогательных и сопутствующих . Среди них: Dynamic Host Configuration Protocol (DHCP) — сервис, используемый для автоматического назначения IP-адресов хостам.

Windows Internet Name Service (WINS) — сервис, поддерживающий распределенную, динамически обновляемую базу имен хостов и соответствующих им IP-адресов

Domain Name System (DNS) — служба разрешения доменных имен, базовая для Интернета. В традиционной реализации DNS требует указывать статическое соответствие между именем хоста и его адресом.

Domain Name System (DNS) — служба разрешения доменных имен, базовая для Интернета. В традиционной реализации DNS требует указывать статическое соответствие между именем хоста и его адресом. Так как служба DNS не динамична, изменения в базе данных DNS (например, при добавлении нового хоста или перемещении его в другую подсеть) необходимо делать вручную. В Windows NT Server 4.0 реализован полный сервер DNS, который интегрирован со службой WINS и снабжен графической утилитой администрирования. Объединение DNS и WINS позволяет создать некоторую форму динамического DNS. Это объединение поддерживается сервисом DNS, выполняемым на Windows NT Server 4.0. Теперь можно, обратившись к DNS, запросить у WINS имя нижнего уровня в дереве DNS.

DNS преобразует символические имена машин в IP-номера (IP-адреса), которые являются адресами машин и из IP-номеров (IP-адресов) в имена. Преобразование, в данном случае, это создание ассоциации между доменным именем и IP-номером. Так, например, имени www.gu.net соответствует IP-адрес 194.93.190.121. За эти преобразования несут ответственность name servers (сервера имен).

DNS-сервер (или сервер имен) - это программа (одна или несколько), обрабатывающая запросы типа:

На одном компьютере может находится одновременно несколько серверов имен.

DNS имеет иерархическую древовидную структуру, "корнями" которой являются так называемые root-сервера. На root-серверах хранится информация о том, какие есть домены первого уровня (com, org, net, gov, ua, ru и другие) и ссылки на DNS-сервера отвечающие за эти домены.

DNS (Domain Name System) - это распределенная база данных, поддерживающая иерархическую систему имен для идентификации узлов в сети Internet. Служба DNS предназначена для автоматического поиска IP-адреса по известному символьному имени узла. Спецификация DNS определяется стандартами RFC 1034 и 1035. DNS требует статической конфигурации своих таблиц, отображающих имена компьютеров в IP-адрес.

Протокол 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. Для обозначения стран используются трехбуквенные и двухбуквенные аббревиатуры, а для различных типов организаций используются следующие аббревиатуры:

Каждый домен DNS администрируется отдельной организацией, которая обычно разбивает свой домен на поддомены и передает функции администрирования этих поддоменов другим организациям. Каждый домен имеет уникальное имя, а каждый из поддоменов имеет уникальное имя внутри своего домена. Имя домена может содержать до 63 символов. Каждый хост в сети Internet однозначно определяется своим полным доменным именем (fully qualified domain name, FQDN), которое включает имена всех доменов по направлению от хоста к корню. Пример полного DNS-имени : citint.dol.ru. Чтобы дать возможность шлюзам в интернете сообщать об ошибках или предоставлять информацию о нестандартных условиях работы, разработчики добавили механизм сообщений специального назначения в протоколы TCP/IP. Этот механизм, известный как Межсетевой Протокол Управляющих Сообщений(ICMP), считается необходимой частью IP и должен включаться в каждую реализацию IP.

Протокол обмена управляющими сообщениями ICMP (Internet Control Message Protocol) позволяет маршрутизатору сообщить конечному узлу об ошибках, с которыми машрутизатор столкнулся при передаче какого-либо IP-пакета от данного конечного узла.

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

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

Каждое сообщение протокола ICMP передается по сети внутри пакета IP. Пакеты IP с сообщениями ICMP маршрутизируются точно так же, как и любые другие пакеты, без приоритетов, поэтому они также могут теряться. Кроме того, в загруженной сети они могут вызывать дополнительную загрузку маршрутизаторов. Для того, чтобы не вызывать лавины сообщения об ошибках, потери пакетов IP, переносящие сообщения ICMP об ошибках, не могут порождать новые сообщения ICMP.

Как и весь другой траффик, сообщения ICMP передаются по интернету в поле данных IP-дейтаграмм. Конечным назначением сообщений ICMP, тем не менее, является не прикладная программа или пользователь на машине назначения, а программное обеспечение IP на этой машине. То есть, когда прибывает сообщение ICMP об ошибке, его обрабатывает модуль программного обеспечения ICMP. Конечно, если ICMP определит, что ошибка была вызвана конкретным протоколом более высокого уровня или прикладной программой, он сообщит об этом соответствующему модулю. Т.о., Межсетевой Протокол Управляющих Сообщений позволяет шлюзам посылать управляющие сообщения или сообщения об ошибках на другие шлюзы или ГВМ; ICMP обеспечивает взаимодействие между программным обеспечением Межсетевого Протокола разных машин.