TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)
Шрифт:
■ Подстановочный символ * позволяет пересылать почту, адресованную особым хостам, которые отсутствуют в списке DNS. Почта, адресованная на некто@любой_хост.fishfood.com, должна быть доставлена на mail-relay.fishfood.com.
■ Почта, адресованная на некто@ns.fishfood.com, должна быть передана по адресу mail-relay.fishfood.com.
Все это выглядит так, будто подстановочный символ должен полностью обеспечить обращение к ns.fishfood.com. Тогда зачем же нужен отдельный оператор? Правила для подстановочного символа гласят, что он может быть применен только к системам, не имеющим никаких других записей в базе данных DNS.
Числа,
12.14.8 Записи TXT и HINFO
Записи ТХТ не имеют никакого реального назначения, но позволяют администратору включить в базу данных произвольные комментарии.
Записи HINFO можно использовать для идентификации типа оборудования и операционной системы. Поскольку пользователи способны прочитать эти данные через программы типа nslookup, многие администраторы считают, что записи HINFO не должны находиться в базе данных, так как они могут помочь хакерам найти уязвимые системы.
12.15 Трансляция адресов в имена
Почему необходим обратный поиск и трансляция адресов в имена? Некоторые системные программы вызывают обратный поиск с целью улучшения вывода информации для администрирования. Например, показанный ниже вывод из программы netstat представляет все или часть имени хоста вместо IP-адресов:
Кроме этого, обратный поиск используется для служб пересылки файлов и WWW, которые создают регистрационные записи о системах, использующих эти службы. Некоторые службы отклоняют запросы клиентов, чьи IP-адреса не соответствуют одной из записей в базе данных имен доменов.
Вспомним, что адреса размещаются в специальном домене IN-ADDR.ARPA и дерево этого домена должно расширяться от наиболее общей части адреса к менее общей. При этом порядок номеров в каждом адресе становится обратным. Поэтому поддерево сети 172.66 называется 66.172.in-addr.arpa. На рис. 12.7 показан обратный поиск записи.
Рис. 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.