tanenbaum_seti_all.pages (525408), страница 177
Текст из файла (страница 177)
Третьим полем каждой записи является поле С1азз (класс). Для информации Интернета значение этого поля всегда равно тп!. Для прочей информации применяются другие коды, однако на практике они встречаются редко. Поле '.Птре (тип) означает тип записи. Наиболее важные типы записей перечислены в табл. 7.1, ~64 Глава 7. Прикладной уровень слать сообщение человеку с регистрационным именем рии! на отделении компьютерных наук Массачусетского технологического института (М.1,Т.). Он может попытаться угадать нужньш ему адрес, составив строку рви?ьшсхшйХейи. Однако этот адрес работать нс будет, так как домен отделения компьютерных наук Массачусетского технологического института на самом деле называется ?са.т!Г.еаги. Таким образом, для удобства тех, кто этого не знает, М.1.Т.
может создать запись СА?АМЕ, позволяющую обраьыаться к нужному домену по обоим именам. Такая запись будет иметь следующий вид: ся в1т.ееи 86400 1И СИАМЕ !ся.шт.ееи Как и СйчА?чйЕ, запись РТК указывает на другое имя. Однако в отличие от записи СРАМЕ, являющейся, по сути, макроопределением, РТК представляет собой регулярный тип данных ТйХЯ, интерпретация которого зависит от контекс га. На практике запись РТК почти всегда используется для ассоциации имени с 1Р-адресом, что позволяет по 1Р-адресу находить имя соответствующей машины. Это называется обратным поиском. Запись Н!УЕО позволяет определять тип машины и операционной систеяяы, которой соответствует домен.
Наконец, ТХТ-записи позволяют доменам идентифицировать себя произвольшям образом. Оба зти типа записей разработаны для удобства пользователей. Ни олин из пих нс является обязательным, поэтому рассчитывать па их наличие не следует, особенно при обработке записей программами (тем более что программы практически невозможно научить обрабатывать этн текстовые данные). Наконец, последнее поле записи ресурса — это поле Т?а?ие (значепис).
Это поле может быть числом, именем домена или текстовой АКОП-строкой. Смысл поля зависит от типа записи. Краткое описание поля $и(ие для каякдого из основных типов записей дано в табл. 7.1. Пример информации, хранящейся в базе данных Т)КЯ домена, приведен в листинге 7.1.
В нем показана часть (почти что гипотетической) базы данных домена саши.пй представленного также в виде узла дерева доменов на рис. 7.1. В базе данных содержится семь типов записей ресурсов. Листинг 7.1. Часть возможной базы данных домена сз.чи.п1 : Официальная янфоряацяя аля са.ни.п1 са.чи.п1. 86400 !И 5ОА ятаг Ьоаэ (952771.?200.7200,2419200,864001 са.ни.п1. 86400 1И ТХТ 58аси1течс И1яаипие еп !пгогваш са." са.чи.п1. 86400 !И ТХТ "Чга)е Опячегяч1е11 Авятегеав." ся.чи.п1. 86400 [И МХ 1 яерпуг.сз.чи.п1.
ся.чи,п1. 86400 1И МХ 2 ьор.ся.чи.п1. 1111я.ся.чи.п1. 86400 !И М!ИГО 5ип Оп1х П 11я.ся.ни.п1. 86400 !И А 130 37.16.112 П 1тя.ся.чи,п1. 86400 1И А 192,31.231.165 П чтя.ся.чи.п1. 86400 1И МХ 1 П 1тя.сз чи.п1. П 1ья.ся,чи.п!. 86400 !И МХ 2 яерлуг.ся,чи.п1. П 115,ся.чи.п1. 86400 1И МХ 3 Тор.ся.ни.п!. чпм.са.чи.п1.86400 1И СИАМЕ яьаг.ся.чи п1 Ттр.ся.чи.п1. 86400 1й СИАМЕ ясрлуг.ся.ни.п! гонора! 1И А 130.37.66.201 Служба имен доменов С1ЧБ 666 1М МХ 1 гоиЬоаг 1Н МХ 2 аерпуг 1Н Н1НГО 5ел Олгх 11111е-юаГег 1М А 130.37.52.23 1Н Н1НГО Мас Мас05 1ааегзег 1К А 192 31 231. 21б 1Н Н1НГО "НР сааег„'е1 !1151" Ргорг1е1агу В первой строке листинга, не являющейся комментарием, дается основная информация о домене, которая в дальнейшем нас интересовать не будет. В следующих двух строках приводится текстовая информация об организации, которой припалле>кит ломен. Следующие две строки определяют два хоста, с которыми следует связаться в первую очередь прн попытке доставить электронную почту, посланную по адресу регволйсззщ.л1.
Хост по имени герЬуг !специальная машина) следует опросить первым. В случае неудачи следует попробовать доставить письмо машине по имени Гор. После пустой строки, добавленной для удобства чтения, следуют строки, сообщающие о том, что хост!!!гз является рабочей станцией Бцп, работающей пол управлением операционной системы 1)Ы1Х, а также даются оба ес 1Р-адреса. Следующие три строки указывают хосты, которым следует доставлять письма, посылаемые по адресу !!1й.скоп.л!. В первую очередь, естественно, следует пытаться доставить письмо самому компьк>теру !!!ы. Но если этот хост выключен, следует прололжать попытки, обращаясь к хостам ае!хЬуг и гор, Следом указаны псевдонимы гегепхсхои.л! и /1р.сз.ошл1, позволяющие домену саши.л! изменять свой ХЧЮХАг и ГТР-серверы, нс меняя адресов, по которым пользователи смогут продолжать к ним обращаться.
Следующие четыре строки содержат обычные записи лля рабочих станций, в данном случае для гошЬоадсзд юп!. Храп>пцаяся в базе данных информация содержит 1р-адрес, имена первого и второго хостов для доставки почты и информацию о машине, Следом идут две записи о машине !!11!е-а1тгег, работающей пол управлением системы МасОЯ, отличной от системы 1)Х1Х !поэтому зта машина не может сама получать электронную почту). Последние лве строки описывают лазерный принтер, подключенный к Интернету.
В этом файле нет 1Р-адресов доменов верхнего уровня, так как онп не принадлежат ломену сзшищ!. Эти адреса поставляются корневыми сервсрамп, чьи 1Р-адреса присутствуют в файле конфигурации системы и загружаются в 11)НБ- кэш, когда загружается 131НЯ-сервер. Существует около дюжины корневых серверов по всему миру, и каждый из них знает 1Р-адреса всех серверов доменов верхнего уровня. То есть если машине известен 1Р-адрес хотя бы одного корневого сервера, она может узнать любое имя 1)1х1Я. Серверы имен Теоретически один сервер мог бы содержать всю базу данных Э1х1Я и отвечать на все запросы к ней. На практике этот сервер оказался бы настолько перегруженным, что был бы просто бесполезным.
Более того, сели бы с ним когда-нибудь что-нибудь случилось, то весь Интернет не работал бы. 666 Глава 7. Прикладной уровень Чтобы избежать проблем, связанных с хранением всей информации в одном месте, пространство имен ВХЯ разделено на непересекающиеся зоны. Один возможный способ разделения пространства имен, показанного на рис. 7.1, на зоны, изображен на рнс. 7.2. Каждая зона содержит часть общего дерева доменов, а также в нее входят серверы имен, хранящие управляющую информацию об этой зоне.
Обычно в каждой зоне находится один основной сервер зоны, получающий информацию из файла на своем диске, н несколько дополнительных серверов имен, которые получают информацию от основного сервера имен. Для большей надежности некоторые серверы, обслуживающие зону, могут находиться за пределами самой зоны. Рио. 7.2. Часть пространства имен ОМЗ, разделенная назоны Расстановка границ зон целиком зависит от администратора зоны. Это решение основывается на том, сколько серверов имен требуется в той или иной зоне.
Например, на рис. 7.2 у Йельского университета есть сервер для уа!е.ег1и, управляющий доменом еллуа!в.ег1и, но не доменом сзуа1е.еди, расположенным в отдельной зоне со своими серверами имен. Подобное решение может быть принято, когда факультет английского языка не хочет управлять собственным сервером имен, но этого хочет факультет компьютерных наук. Соответственно, домен сзуа1е.ег1и выделен в отдельную зону, а домен елйуа1е.ег1и — нет. Распознаватель обращается с запросом разрешения имени домена к одномУ нз локальных серверов имен. Если искомый домен относится к сфере ответственности данного сервера имен, как, например, домен айсзуа!е.ег1и подпадает под горисдикцию ломена сз.уа1е.еИи, тогда данный ОЫБ-сервер сам отвечает распознавателю на его запрос, передавая ему авторитетную запись ресурса.
Авторитетной называют запись, получаемую от официального источника, хранящего данную запись и управляющего ее состоянием. Поэтому такая запись всегда считается верной, в отличие от кэшируемых записей, которые могут устаревать. Однако если домен удаленный, и информацию о запрашиваемом домене нельзя получить от данного сервера имен, последний посылает сообщение с запросом серверу домена верхнего уровня запрашиваемого домена. Поясним данный про- Служба имен доменов 0Ь!6 667 песе на примере, показанном на рис.