Выбрать главу

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

Вспомним, что адреса размещаются в специальном домене IN-ADDR.ARPA и дерево этого домена должно расширяться от наиболее общей части адреса к менее общей. При этом порядок номеров в каждом адресе становится обратным. Поэтому поддерево сети 172.66 называется 66.172.in-addr.arpa. На рис. 12.7 показан обратный поиск записи.

66.172.in-addr.arpa. IN SOA NS.FISHFOOD.COM. (

                             postmaster.FISHFOOD.COM.

                             94101101 ; serial

                                86400 ; refresh after 24 hours

                                 7200 ; retry after 2 hours

                              2592000 ; expire after 30 days

                               345600 ; default TTL of 4 days

                            )

66.172.in-addr.arpa. IN NS  NS.FISHFOOD.COM.

1.1                  IN PTR NS.FISHFOOD.COM.

66.172.in-addr.arpa. IN NS  NS2.FISHFOOD.COM.

100.1                IN PTR NS2.FISHFOOD.COM.

2.1                  IN PTR MAIL-RELAY.FISHFOOD.COM.

Рис. 12.7. Таблица обратного просмотра

Элементы также будут обратными. Например, элементу 100.1 соответствует адрес 172.66.1.100.

12.16 Формат сообщений DNS

Обмен сообщениями запросов и ответов между клиентом и серверами DNS имеет простой формат. Сервер добавляет информацию ответа к исходному запросу и посылает полученное сообщение обратно. На рис. 12.8 показан полный формат сообщения.

Рис. 12.8. Общий формат сообщения DNS

12.16.1 Секция заголовка

Секция заголовка содержит поля, представленные в таблице 12.2.

Таблица 12.2 Поля заголовка сообщения DNS

Поле Описание
ID Идентификатор Служит для согласования запроса и ответа.
Parameters Параметры: Запрос или ответ.
Обычный или обратный просмотр.
Является ли ответ авторитетным.
Является ли ответ усеченным.
Рекурсивно или нет сообщение.
Допустима ли рекурсия в ответе.
Для ответа — код ошибки.
Number of queries Количество запросов Присутствует в запросе и ответе.
Number of answers Количество ответов Присутствует только в ответе.
Number of authority records Количество авторитетных записей Присутствует в ответе. Информация в авторитетных записях включает имя сервера, хранящего авторитетные данные.
Number of additional records Количество дополнительных записей Присутствует в ответе и содержит адреса авторитетных серверов.

12.16.2 Секция запроса

Запрос имеет поля, перечисленные в таблице 12.3. Обычно сообщение содержит единственный запрос. Но можно в общей секции объединить несколько различных запросов.

Таблица 12.3 Поля запросов DNS

Поле Описание
Name (Имя) Имя домена или IP-адрес в поддереве IN-ADDR.ARPA
Type (Тип) Тип запроса, например А или NS
Class (Класс) IN для Интернета записывается как 1

12.16.3 Секция ответа

Сам ответ, информация об авторитетности и дополнительные сведения структурированы так же, как и в запросе. Ответ состоит из последовательности записей о ресурсах, содержащих поля, показанные в таблице 12.4.

Таблица 12.4 Поля записей о ресурсах

Поле Описание
Name (Имя) Имя узла для данной записи
Type (Тип) Тип записи, например SOA или А, записанный числовым кодом
Class (Класс) IN соответствует 1
TTL Время жизни 32-разрядное целое число со знаком, отражающее время кеширования записи
RDLENGTH Длина записи Длина поля данных в записи о ресурсах
RDATA Данные записи Например, для записи об адресе — значение IP-адреса. Запись SOA содержит обширные сведения.

Секция информации об авторитетности указывает авторитетные серверы имен для домена. Секция дополнительной информации предоставляет сведения, подобные IP-адресам авторитетных серверов имен.

12.17 Используемый транспорт

Запросы и ответы DNS обычно пересылаются через UDP, но разрешается применять и TCP, который используется для переносов зон.

12.18 Примеры

Некоторые реализации программы nslookup позволяют рассмотреть сообщения более подробно. Ниже приводится результат запуска nslookup на хосте Йельского университета и указывается вывод детальной отладочной информации с помощью команды set d2.

Запрос требовал трансляции имени www.microsoft.com в адрес, а в ответе было получено два адреса. Дело в том, что два различных компьютера работают как сервер WWW компании Microsoft и разделяют между собой трафик от клиентов. Если клиент не получает ответа по первому адресу (возможно, при сильной загруженности этой системы), он может обратиться ко второму компьютеру.