Полный курс лекций 2009-го года (1130357), страница 84
Текст из файла (страница 84)
DNS такжеиногда называют региональной системой наименований.7.2.1. Структура региональной системы именДоменная система имен - это метод назначения имен путем передачи сетевым группамответственности за подмножество имен в своем домене. Каждый уровень этой системы называетсядоменом. Домены в имени отделяют друг от друга точками: cs.msu.su, math.msu.su.
В имени может бытьразличное количество доменов, но практически их не более пяти. Первым в имени стоит названиеабонентской машины - реального компьютера с IP-адресом. Это имя создано и поддерживается группой(например, компьютер redsun в группе cs (факультет вычислительной математики и кибернетики)), ккоторой он относится. Группа входит в более крупное подразделение msu (университетское объединение –сеть МГУ), которое, в свою очередь, является частью национальной сети (например, стран бывшего СССР,домен su).Рисунок 7.25. Часть пространства доменных имен в ИнтернетеВсе пространство доменов распределено на зоны.
Как это происходит, мы кратко рассмотрим ниже.Имена зон можно условно разделить на организационные и географические. На высшем уровне в этойиерархии зарегистрированы следующие организационные зоны:§com – commercial (коммерческие)§edu – educational (образовательные)§gov – government (правительственные)§mil – military (военные)§net – network (организации, обеспечивающие работу сети)§org – organization (некоммерческие организации)В данный момент, чтобы разгрузить домен «com», собираются создать несколько новых доменов.В организационных зонах обычно размещаются непосредственно домены организаций.Каждая страна (государство) имеет свой географический домен из двух букв, например:§ae – United Arab Emirates (Объединенные Арабские Эмираты)§au – Australia (Австралия)§be – Belgium (Бельгия)§br – Brazil (Бразилия)§by – Belarus (Белоруссия)С левого конца доменного имени находятся имена абонентских машин.
Имена бывают собственные ифункциональные. Имена собственные каждый придумывает в меру фантазии: машинам присваиваютсяимена членов семьи, животных, растений, музыкантов и артистов, литературных персонажей – кто во чтогоразд.Имена функциональные вытекают из функций, выполняемых машиной:§www – Сервер HTTP (WWW)§ftp – FTP-сервер§ns, nss, dns – Сервер DNS (Name)§mail – Mail-сервер§relay – Mail Exchanger§*proxy – соответствующий proxy-серверСчитается нежелательным присваивать какой-либо машине функциональное имя – в любой моментможет потребоваться перенести соответствующую функцию на другую машину.
Для этого лучше всегоиспользовать псевдонимы, которые перенаправляют запросы к данному имени на записи, относящиеся кдругому имени.Группа может создавать или изменять любые принадлежащие ей имена. Если группа cs решит ввестив эксплуатацию новый компьютер и назвать его chronos, то для этого ни у кого не надо спрашиватьразрешения, все, что от нее требуется, - это добавить новое имя в соответствующую частьсоответствующей базы данных, и рано или поздно каждый, кому потребуется, узнает об этом имени.Аналогично, если в МГУ решат создать новую группу, например college, они (домен msu) могут также этосделать, ни у кого не спрашивая разрешения.
Тогда, если каждая группа придерживается этих простыхправил и поддерживается уникальность имен компьютеров в группе, то у любых разных систем в сетиИнтернет будут всегда разные имена.Описанный выше механизм аналогичен механизму присвоения почтовых адресов. Названия всехстран различаются. Различаются названия всех областей, республик в Федерации, и эти названияутверждаются в государственном масштабе из центра (конечно, обычно сами регионы заботятся обуникальности своих названий, поэтому здесь царит полная демократия: как республика хочет, так она иназывается). В республиках – субъектах федерации – решают вопросы о названиях районов и округов, впределах одной республики они различаются.
Аналогично далее с городами и улицами городов. В разныхгородах могут быть улицы с одинаковыми названиями, например, почти во всех городах СССР были улицыЛенина и Мира. Однако то были улицы в разных городах. В пределах же одного населенного пункта улицывсегда имеют разные названия, причем именование улиц контролирует соответствующий центральныйорган местной администрации (мэрии, сельсовета, горсовета).Поскольку Интернет – сеть всемирная, то нужен был механизм распределения имен на самомверхнем, межгосударственном уровне. Сейчас принята двухбуквенная кодировка государств. Этооговорено в RFC 822. Так, например, домен «Канада» называется «ca», бывший СССР – «su», США – «us»и т.д.
США включили в эту систему структурирования для всеобщности и порядка. Всего же кодов странпочти 300. Единый каталог Интернета находится в SRI International (Менло-Парк, Калифорния, США) – вгосударственной организации.7.2.2. Поиск адреса по доменному имениТеперь, после того как мы узнали, как соотносятся домены и создаются имена, познакомимся с тем,как использовать эту замечательную систему. Она работает автоматически. Нам не надо разыскиватьадрес, соответствующий имени или подавать специальную команду для его поиска (в UNIX – командаnslookup).
Все компьютеры в Интернете способны пользоваться доменной системой.Когда используют имя, например, www.lvk.cs.msu.su, надо преобразовать его в адрес. Для этогоприложение начинает запрашивать помощь у DNS-серверов. Эти приложения обладают соответствующейбазой данных, в число обязанностей которых входит обслуживание такого рода запросов. DNS-серверначинает обработку имени с его правого конца и двигается по нему влево, т.е. сначала производитсяпоиск адреса в самой верхней группе иерархии, потом постепенно поиск опускается по иерархии, темсамым сужая область поиска.
Однако с целью сокращения поиска, на первом шаге опрашиваетсялокальный узел DNS. Здесь возможны три случая:§Местный сервер знает адрес, потому что этот адрес содержится в его части всемирной базы данных.Например, если вы подсоединены к сети Института Физики Высоких Энергий (IHEP), то ваш местныйсервер должен обладать информацией о всех компьютерах локальной сети этого института.§Местный сервер знает адрес, потому что кто-то недавно уже запрашивал его.
Когда запрашивается адрес,сервер DNS придерживает его у себя в памяти некоторое время, как раз на случай, если кому-нибудьпотребуется тот же адрес – это повышает эффективность системы.§Местный сервер адрес не знает.В последнем случае местный сервер обращается к корневому серверу. Это сервер, который знаетадреса серверов имен высшего уровня (самых правых в имени), в нашем случае это уровень государств(ранга домена su). У него запрашивается адрес компьютера, ответственного за зону su.
Местный DNSсервер связывается с этим сервером, расположенным на вершине иерархии, и запрашивает у него адрессервера, ответственного за домен msu.su. Теперь уже запрашивается сервер, отвечающий за домен msu,потом опрашивается сервер домена cs, затем – lvk, и у него запрашивается адрес рабочей машины www.Как уже было сказано, для повышения эффективности поиск начинается не с самого верха, а снаименьшего домена, в который входите и вы, и компьютер, имя которого вы запросили.
Например, есливаш компьютер имеет имя cmc.cs.msu.su, то опрос начнется (если имя не выяснится сразу) не совсемирного сервера, чтобы узнать адрес сервера группы su, а сразу с группы su, что сокращает поиск и пообъему, и по времени.7.2.3. Серверы именДолжно быть ясно, что нет и не может быть единого сервера, содержащего всю базу DNS. Его неможет быть как в силу вопросов безопасности и надежности функционирования сети Интернет, так и всилу производительности. Чтобы сделать базу распределенной, все пространство имен доменов разбиваютна непересекающиеся зоны. На рисунке 7-26 показан пример такого разбиения. Границы зоныопределяет администратор зоны. Каждая зона покрывает часть дерева доменов, в нее входят сервера именэтих доменов. Обычно в каждой зоне есть основной сервер зоны и несколько вспомогательных серверовимен. Часто из соображений надежности сервер зоны располагают вне зоны.Рисунок 7-26.
Часть пространства доменных имен с делением на зоныВесь процесс поиска IP-адреса по имени домена, описанный в разделе 7.2.2., реализуют сервераимен. Если запрос относится к юрисдикции того сервера имен, к которому обратились, т.е. запрашиваемыйдомен находится в ведении данного сервера имен, тогда этот сервер генерирует ответ, содержащий записивсех ресурсов, соответствующих запросу. Этот ответ считается авторитетным, т.е. содержащаяся в неминформация считается a priori верной. Если запрос относится к удаленному домену, то сервер именгенерирует запрос к соответствующему удаленному серверу имен.Однако прежде чем обратиться к удаленному серверу имен, обращающийся сервер посмотрит записиресурсов в своей кэш-памяти. Записи в кэш-памяти не являются авторитетными. Время актуальностисодержащейся в них информации, определяет поле времени жизни (см.
назначение поля времени жизни вразделе 7.2.4.).7.2.4. Записи ресурсовС каждым доменом связано множество ресурсов, отнесенных к этому домену. Эти записи хранятся вбазе DNS. Когда происходит обращение к DNS с каким-либо именем, в ответ приходит не только IP-адрес,но и запись о ресурсах, соответствующих указанному имени.Рисунок 7-27. Фрагмент возможной базы DNS для cs.vu.nlЗапись ресурса состоит из пяти полей (см. рисунок 7-27). Вот эти поля: «Имя домена» (Domainname), «Время жизни» (Time to live), «Класс» (Class), «Тип» (Type), «Источник полномочий» (SOA - StartOf Authority).В поле «Имя домена» указано имя домена, к которому относится эта запись.
При обращении к базеDNS с таким ключом в ответ поступают все записи, у которых в этом поле указано заданное имя.Поля «Время жизни» указывает интервал времени в секундах, в течение которого поля этой записине меняются. Например, 86 400 - это число секунд в сутках. Если в этом поле указано такое число, то этозначит, что запись меняется не чаще одного раза в сутки.В третьем поле «Класс» указано IN, если ресурс, к которому относится эта запись, является ресурсомИнтернета.
Здесь могут быть и другие значения, но они встречаются редко.Значения поля «Тип» указаны в таблице 7-28 и рассматриваются ниже.Таблица 7-28. Основные типы записи ресурса DNSТипЗначениеОписаниеSOAИсточник полномочийПараметры данной зоныAIP-адрес хоста32-разрядное числоMXОбмен электроннойпочтойПриоритет, домен, принимающий электронную почтуNSСервер именИмя сервера для данного доменаCNAME Каноническое имяИмя доменаPTRПсевдоним для IP-адресаУказательHINFO Описание хостаЦентральный процессор и оперативная система в кодировкеASCIITXTНеинтерпретируемый ASCII-текстТекстВ поле «Источник полномочий» указано имя источника информации о зоне сервера имен (об этомсервере будет сказано ниже). Указывается также адрес электронной почты администратора сервера имен идругая служебная информацию.