Мтс

Что такое DNS, принцип ее работы и как указать или сменить DNS сервера для домена. Лучшие DNS-серверы

Типы DNS-серверов

По выполняемым функциям DNS-серверы делятся на несколько групп, в зависимости от конфигурации конкретный сервер может относиться к нескольким типам:

  • авторитативный DNS-сервер - сервер, отвечающий за какую-либо зону.
    • Мастер или первичный сервер (в терминологии BIND) - сервер, имеющий право на внесение изменений в данные зоны. Обычно для зоны бывает только один мастер сервер. В случае Microsoft DNS-сервера и его интеграции с Active Directory мастер-серверов может быть несколько (так как репликация изменений осуществляется не средствами DNS-сервера, а средствами Active Directory, за счёт чего обеспечивается равноправность серверов и актуальность данных).
    • Слейв или вторичный сервер, не имеющий права на внесение изменений в данные зоны и получающий сообщения об изменениях от мастер-сервера. В отличие от мастер-сервера их может быть (практически) неограниченное количество. Слейв так же является авторитативным сервером (и пользователь не может различить мастер и слейв, разница появляется только на этапе конфигурирования/внесения изменений в настройки зоны).
  • Кэширующий DNS-сервер - сервер, который обслуживает запросы клиентов, (получает рекурсивный запрос, выполняет его с помощью нерекурсивных запросов к авторитативным серверам или передаёт рекурсивный запрос вышестоящему DNS-серверу)
  • Локальный DNS-сервер; используется для обслуживания DNS-клиентов , исполняющихся на локальной машине. Фактически, это разновидность кэширующего DNS-сервера, сконфигурированная для обслуживания локальных приложений.
  • Перенаправляющий DNS-сервер; (англ. forwarder , внутренний DNS-сервер) сервер, перенаправляющий полученные рекурсивные запросы вышестоящему кэширующему серверу в виде рекурсивных запросов. Используется преимущественно для снижения нагрузки на кэширующий DNS-сервер.
  • Корневой DNS-сервер - сервер, являющийся авторитативным за корневую зону. Общеупотребительных корневых серверов в мире всего 13 штук, их доменные имена находятся в зоне root-servers.net и называются a.root-servers.net, b.root-servers.net, …, m.root-servers.net. В определённых конфигурациях локальной сети возможна ситуация настройки локальных корневых серверов.
  • Регистрирующий DNS-сервер. Сервер, принимающий динамические обновления от пользователей. Часто совмещается с DHCP-сервером. В Microsoft DNS-сервере при работе на контроллере домена сервер работает в режиме регистрирующего DNS-сервера, принимая от компьютеров домена информацию о соответствии имени и IP компьютера и обновляя в соответствии с ней данные зоны домена.
  • DNSBL -сервер (сервер с чёрными списками адресов и имён). Формально, такой сервер не входит в иерархию DNS, однако использует тот же механизм и протокол для работы, что и DNS-сервера.

Виды DNS-запросов

Прямой запрос

Прямой (forward) запрос - запрос на преобразование имени (символьного адреса) хоста в IP-адрес .

Обратный запрос

Обратный (reverse) запрос - запрос на преобразование IP-адреса в имя хоста .

Рекурсивный запрос

Рекурсивный запрос предполагает получение окончательного ответа от сервера, к которому он направлен. Рекурсию выполняет сервер.

Итеративный запрос

Итеративный запрос - предполагает (допускает) выполнение рекурсии клиентом.

View

Некоторые сервера поддерживают возможность работать в разных режимах для разных сегментов сети. В Bind этот режим называется view. Например, сервер может для локальных адресов (например, 10.0.0.0/8) отдавать локальные адреса серверов, для пользователей внешней сети - внешние адреса. Так же сервер может быть авторитативным для заданной зоны только для указанного диапазона адресов (например, в сети 10.0.0.0/8 сервер объявляет себя авторитативным за зону internal, при этом для внешних адресов в ответ на запрос имени из зоны internal будет отдаваться ответ «неизвестен»).

Используемые порты

Все DNS-сервера по стандарту RFC 1035 отвечают на 53 порту TCP и UDP . При отправке запросов ранние версии BIND использовали 53 порт, более новые ведут себя как DNS-клиенты, используя свободные незарегистрированные адреса.

DNS – это служба, которая обеспечивает обмен между различными сегментами сети. Ее применение позволяет значительно сократить время работы на поиск информации. В этой статье вы узнаете об основных принципах функционирования службы, а также способах и формах передачи данных в Интернете.

Как работает

На заре развития Интернета существовала «плоская» система наименований: у каждого пользователя был отдельный файл, в котором содержались списки необходимых ему контактов. Когда он подключался к Всемирной паутине, то его данные рассылались на другие устройства.

Однако из-за стремительного развития Интернета необходимо было максимально упростить обмен данными. Поэтому его разделили на меньшие сегменты-домены. В свою очередь, они разделяются на поддомены. На вершине адреса, поданного в именной форме, находится корень – основной домен.

Поскольку Интернет – это американская разработка, то существует два типа первичных доменов:

  • общие домены, которые принадлежат учреждениям США:
  1. com – бизнес-организации;
  2. gov – правительственные заведения;
  3. edu – образовательные учреждения;
  4. mil – военные представительства;
  5. org – частные организации;
  6. net – интернет-провайдера.
  • коренные домены других страны состоят из двух букв.

Второй уровень состоит из сокращений городов или областей, а домены третьего порядка обозначают различные организации и предприятия.

Точка исполняет роль разделителя между доменами разными порядка. В конце имени точка не ставится. Каждый отдельный домен с точкой называется меткой.

Ее длина не должна превышать 63 символа, а полная длина адреса – 255 знаков. В основном, используются латиница, цифры и знак дефиса, однако несколько лет назад начали использовать начали использовать приставки на основе других систем письменности. Регистр букв не имеет значения.

Сервера – это такие компьютеры, на которых содержится перечень других объектов внутри одного уровня сети, что позволяет ускорить обмен между пользователями. Они и стали основой новой системы.

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

Поиск необходимых данных происходит так:


Основы DNS

Узел, состоящий из нескольких доменов, называется зоной . В ее файле содержатся основные параметры своего сегмента. В том числе он включает информацию о FQDN или полностью определенном доменном имени. Если такая запись заканчивается точкой, это значит, что имя объекта задано правильно.

Существует несколько типов компьютеров, которые обслуживают DNS:

  • master – главный агент сети. Он может изменять ее конфигурацию;
  • slave – устройства второго порядка. Они обслуживают клиентов наравне с master и могут заменять его заменять в случае неполадок. Это позволяет разгрузить сеть;
  • кэширующий. Содержит в своем информацию о доменах посторонних зон;
  • невидимый. Отсутствует в описании зоны. Чаще всего этот статус присваивается пользователям со статусом master для того, чтобы уберечь их от атаки.

К ним пользователь может отправить один из двух типов запроса.

Браузер посылает его через программу-resolver:

  • рекурсивный. Если сервер не содержит необходимой информации, этом случае он узнает необходимые данные у компьютеров высшего уровня и присылает клиенту ответ. Это позволяет уменьшить количество запросов и обеспечивает экономию времени и вашего трафика;
  • итеративный. Сервер присылает готовый ответ, отбирая информацию только из собственного кэша (памяти). Если у него нет подходящих данных, то он предоставляет ссылку на другие компьютеры. Затем браузер переходит по этому адресу.

Существует два типа ответов:

  1. авторитативный – если данные отправляются с устройства, которые обслуживают сеть;
  2. неавторитативный. Присылается посторонним компьютером, который получает необходимые данные из собственного кэша или после итеративного запроса.

Видео: служба DNS

Имена и IP-адреса

Служба DNS обеспечивает перевод имен сайтов в IP-адреса. В интернете каждое устройство можно отследить по 2 основным параметрам – имени домена и IP-адресу. Они могут присваиваться компьютеру пользователя, сетевому принтеру или маршрутизатору.

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

Режим работы

Сервера могут работать в режимах:

  1. обслуживание собственной зоны. Обмен данными совершается между главным и подчиненными компьютерами. При этом запросы от неавторитативных пользователей не принимаются;
  2. выполнение рекурсивного вопроса;
  3. форвардинг – сервер отправляет запрос в другую зону.

Изменение DNS параметров

Обычно эти параметры задаются сетью в автоматическом режиме. Для того чтобы сбросить данные необходимо зайти в раздел «Сетевые подключения».

После того, необходимо зайти в протокол, используемый для обслуживания сети.

В разделе «Свойства» можно задать необходимые параметры. Обычно указываются основной IP-адрес сервера и альтернативный.

Формат сообщения

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

Поле флагов (следующие 16 бит) включает информацию:

  1. тип сообщения;
  2. код операции;
  3. идентификация авторитативности (т.е. показывает, принадлежит ли обслуживающий компьютер к сети);
  4. ТС-флаг. Отображает, пришло сообщение обрезанным или полным.
  5. флаг рекурсии, т.е. требования серверу послать запросы компьютерам высшего порядка;
  6. флаг возможности рекурсии. Показывает способность сервера осуществлять перенаправление сообщения;
  7. код возврата. Отображает, послан ответ с ошибками или нет.

Последнее 16-битное поле показывает общее количество учитываемых параметров.

Вопросы в DNS запросе

Часть записи ресурса в отклике

Любой отклик содержит сведения о стороне, отправившей сообщение. В нем содержатся следующие данные: ответ, полномочия сервера и дополнительная информация о нем.

Кроме них, в сообщении содержится:

  • имя домена;
  • тип запроса;
  • срок актуальности кэшированной версии;
  • длина записи ресурса – оценка объема информации.

Запросы указателя

Запросы указателя направлены на поиск страницы в инверсивном режиме, т.е. поиск имени ресурса по IP-адресу, поданного в виде текстовой строки, разделенной точками.

Для его отправки адрес узла записывается в противоположном порядке с добавлением определенного суффикса (чаще всего в форме in-addr.arpa).

Совершить операцию можно, если ресурс содержит PTR-запись. Это позволяет передать управление зоной владельцу IP-адресов.

Записи ресурсов

Это – список основных программ, используемых службой. В рамках одного домена эти записи являются уникальными. На разных уровнях сети могут существовать дубли этих записей.

Эти данные включают следующие виды записей:

  1. SOA –старта полномочий. Она позволяет сопоставить домен и обслуживающие его компьютеры. Также в них содержатся сведения о сроке актуальности кэшированной версии, и контактном лице, которое обслуживает сервер определенного уровня;
  2. А содержат перечень IP-адресов и соответствующих им хостов. Они позволяют идентифицировать адрес ресурсов домена;
  3. NS (Name Server) включают список компьютеров, которые обслуживают домен;
  4. SRV (Service) отображают все ресурсы, которые выполняют важнейшие функции службы;
  5. MX (Mail Exchanger) позволяют автоматически настроить рассылку данных обслуживающим компьютерам в границах одного домена;
  6. PTR (Pointer) используются для поиска имени ресурса, если пользователь знает его IP-адрес;
  7. CNAME (Canonical Name) позволяют серверу упоминаться под несколькими псевдонимами в службе.

Кэширование

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

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

Это позволяет экономить траффик, не обращаясь впоследствии к авторитативным пользователям. Но открытая запись остается действительной на протяжении ограниченного срока. Срок его актуальности установлен в файле зоны. По умолчанию минимально он составляет 1 час.

UDP или TCP

Служба поддерживает как протокол UDP, так и TCP.

UDP используется для отправки сообщений по глобальным сетям. Размер сообщений, пересылаемых по этому протоколу, лимитирован. Неполные ответы содержат метку ТС. Это означает, что размер отклика превысил 512 байт, поэтому остальная часть не дошла до компьютера.

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

TCP используется для передачи таких данных, поскольку он позволяет получать любой объем данных, разделенный на сегменты определенного размера.

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

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

Чтобы узнать необходимую информацию, клиент посылает запрос. Отклик содержит основные данные об интересующем объекте и компьютере, обслуживающем зону. Для осуществления этого обмена используются протоколы UDP и TCP.

Интернет - это сеть, в которой каждому персональному компьютеру соответствует некий персональный номер, который называется IP-адресом. Цифровая адресация оказалась не самой удобной на заре развития и формирования Интернета, поэтому было решено использовать буквы для написания адресов. Именно поэтому, когда человек решает зайти на какой-либо сайт, он вводит буквы, а не цифры. Проблема же в том, что компьютер умеет воспринимать исключительно информацию в цифровом виде - последовательность ноликов и единиц. Он априори не способен понимать информацию в виде букв. Поэтому и была создана службы, чьей основной задачей стал перевод буквенного написания адресов в форму цифр. И служба эта была названа DNS (в расшифровке это означает Domain Name System). Но как она работает? Что такое DNS?

Что представляет собой эта служба?

Так что такое DNS? Это огромная база данных, в которой содержится информация о том, соответствует доменное имя IP-адресу или нет. DNS - это так называемый протокол, который представляет собой компьютерную, четко распределенную систему, направленную на получение информации о различных состояниях того или иного домена. В переводе с английского языка Domain Name System значит «система имен доменов». Всю эту информацию хранит так называемый DNS-сервер. Зачастую данный протокол используют, чтобы получить IP-адрес, основываясь на имени того или иного необходимого хоста (хостом может выступать компьютер или другое устройство с выходом в Интернет). Что такое DNS кроме этого? Также эта служба необходима для получения информации по требованию о маршруте, который прошла почта, обслуживаемая узлами под протоколы в домене.

Иерархическая структура

Что такое DNS? Это система доменных имен, которая являет собой распределенную базу данных. Поддерживается она потому, что существует четкая и слаженная иерархия серверов, взаимодействующих между собой согласно своим внутренним протоколам. Каждый DNS-сервер основывается на «представлении» о системе иерархии доменных адресов в разных зонах. Каждый сервер, который отвечает за то или иное имя, может делегировать ответственность за возможные новые части домена каким-либо другим серверам. Это способствует перенесению ответственности за популярную информацию на серверы разных предприятий, людей и организаций, которые будут отвечать только за свою собственную часть общего имени домена.

Защита

Несколько лет тому назад в системах доменных имен стали появляться средства для проверки цельности передаваемых данных. Это средства стали называться Security Extensions. Информация, которая передается, не подвергается шифрованию, но достоверность данных проверяют с помощью методов криптографии. Внедренный стандарт под названием DANE передает достоверные криптографические данные. Затем их используют для установления безопасных и защищенных соединений транспортного и прикладного уровней. Владельцы доменов и серверов должны обновлять периодически прошивки DNS для обеспечения надежной проверки и достойного уровня защиты передаваемой информации. В ином случае сохранность и достоверность данных может не гарантироваться.

Какие функции выполняет ДНС?

Что такое DNS и какие этого протокола функции?

1. Распределение администрирования. Это значит, что различные организации и люди несут за свои части структуры ответственность.

2. Распределение информации, которая сохраняется. Каждый сетевой узел отдельно должен хранить не только ту информацию, которая находится в зоне его ответственности, но и другие адреса из так называемых «корневых» серверов.

3. Кэширование данных. Определенные узлы способны хранить определенное некое количество данных из несобственных зон ответственности для уменьшения сетевых нагрузок.

4. Создание и поддерживание структуры иерархии, где все узлы соединяются в единое дерево, в котором каждый узел способен определять работу подлежащих узлов, делегировать полномочия другим смежным узлам.

5. Резервирование - хранение и обслуживание зон собственных, за что отвечают несколько ДНС-серверов. Они подразделяются на логические и физические, что гарантирует абсолютную сохранность информации и возможность продолжать работу при сбое одного узла.

Работа ДНС-системы

Что такое DNS и как это работает? Этот механизм принят по той причине, что имя домена имеет разные адреса. Каждый сервер в сети Интернет имеет IP, который представляет из себя набор цифр. Каждый раз, меняя провайдера, пользователь меняет хостинг и вместе с ним сервер, а также и адрес IP. Иногда, для нормальной работы в сети Интернет, необходимо обновлять на компьютере драйвера. DNS (сервер имен доменов) сохраняет запись имени домена пользователя и IP, на который необходимо запросы отсылать. Когда пользователь заполняет ДНС запись в своем домене, он сообщает информацию о расположении своего сайта. И когда впервые идет открытие хостинга или регистрация имени домена, отправляется информация о появившейся записи на все другие серверы. Может быть, сайт заработает и сразу, но в среднем информация распространяется в течении двух-трех суток. Такая задержка происходит по той причине, что многие серверы доменных имен настроены на обновление данных за определенный период.

Компьютеры в сети (в том числе Интернет) не имеют имен, передача данных осуществляется с использованием IP-адресов.

IP-адрес (Internet Protocol Address) — числовой адрес в сети интернет, имеющий вид 123.123.123.123. IP-адреса трудно запомнить человеку, особенно когда вы посещаете десятки сайтов в день с разными IP-адресами.

Аналогично тому, как вы сохраняете телефонные номера, вы можете завести записную книгу или телефонный справочник для IP-адресов. Роль телефонного справочника в Интернете выполняют DNS (Domain Name System), система доменных имен. Когда в интернет-браузере вы вводите какое-либо доменное имя, оно посредством DNS преобразовывается в IP-адрес, который используется для доступа к серверу.

На самом деле, на DNS-серверах хранится не только IP-адрес сервера, но и другие данные, такие как ресурсные DNS-записи «MX», «TXT», «A», «CNAME», «SOA».

DNS-серверы, которые хранят информацию о тысячах и миллионах доменах, зачастую размещаются на отдельных мощных серверах. В таких случаях под выражением «DNS-сервер» может подразумеваться целиком весь программно-аппаратный комплекс (сервер и сама программа).

Зачем прописывать DNS-серверы для домена

Когда вы регистрируете новое доменное имя, ни один DNS-сервер в Интернет о нём не знает. И пока на DNS-серверах Интернета не появится информация о вашем домене, ни сайт, ни почта, никакие другие сервисы работать не будут.

Чтобы DNS-серверы в Интернет узнали о вашем домене, им это должен кто-то рассказать, и этот кто-то — DNS-сервер, который вы прописываете для своего домена. Он играет роль «глашатая», который всегда хранит самую свежую информацию о вашем домене. Например, DNS-серверы хостинга ns1.hosting.сайт и ns2.hosting.сайт хранят информацию о доменах, которые подключены к хостингу сайт.

О различиях между DNS-серверами ns1.hosting..hosting.сайт и ns1..сайт и о том, какая из этих пар подойдёт вам, читайте в .

DNS-серверы прописываются парами, это делается для лучшей отказоустойчивости: если один DNS-сервер выйдет из строя, другой останется работать.

Схема определения IP-адреса по имени домена

На данной схеме коротко объясняется, что происходит, когда вы хотите зайти на тот или иной сайт.

  1. 1 Ваш компьютер связывается с DNS-серверами вашего Интернет-провайдера (стрелка 1 ). DNS-серверы провайдера ищут IP адрес в своем кэше (промежуточный буфер с быстрым доступом) и, если находят, то выдают вам этот IP и по IP ваш компьютер обращается к серверу, на котором размещен сайт (стрелка 7 ).
  2. 2 Если пара «домен — IP-адрес» отсутствует в кэше, то DNS-сервер провайдера делает рекурсивные запросы к корневым DNS-серверам (стрелка 2 ), которых всего несколько по всему миру. Изменения настроек домена на корневых серверах обновляется не моментально, а раз в несколько часов. Так, например, изменения в корневых DNS серверах зоны RU обновляются всего 4 раза в сутки. Корневые сервера возвращают адреса DNS-серверов домена (стрелка 3 ), на которых хранится DNS зона домена.
  3. 3 Получив адреса DNS-серверов, провайдер делает запрос к одному из них (стрелка 4 ), получает в ответ искомый IP-адрес (стрелка 5 ), запоминает его в кэше (чтобы впоследствии не обращаться каждый раз к корневому DNS-серверу) и передает вашему браузеру (стрелка 6 ).
  4. 4 И только теперь, когда у браузера есть IP-адрес сайта, он может обратиться к хостинг-серверу, на котором расположен сайт (стрелка 7 ), и может отобразить его на экране вашего компьютера (стрелка 8 ).

Итак:

  • Информация на корневых серверах обновляется всего несколько раз в сутки.
  • Интернет-провайдеры, как правило, обновляют кэш DNS-сервера не чаще, чем раз в сутки (некоторые провайдеры обновляют кэш еще реже, но обычно не более 72 часов), поэтому, если после регистрации или переноса домена (смены DNS-серверов), сайт сразу не стал работать, не волнуйтесь — просто подождите некоторое время.
  • Чтобы проверить, обновились ли DNS, воспользуйтесь .

Вышеописанная структура работы DNS сильно упрощена, за подробностями вы можете обратиться к справочной литературе в сети Интернет.

Большинство пользователей Интернета знают, что DNS-сервер обеспечивает трансляцию имен сайтов в IP адреса. И обычно на этом знания про DNS-сервер заканчиваются. Эта статья рассчитана на более углублённое рассмотрение его функций.

Итак, давайте представим, что Вам придется отлаживать сеть, для которой провайдер выделил блок «честных» адресов, или настраивать поднимать в локальной сети свой DNS-сервер. Вот тут сразу и всплывут всякие страшные слова, типа «зона», «трансфер», «форвардер», “in-addr.arpa” и так далее. Давайте постепенно с этим всем и разберёмся.

Очень абстрактно можно сказать, что каждый компьютер в Интернете имеет два основных идентификатора – это доменное имя (например, www..0.0.1). А вот абстрактность заключается в том, что, и IP-адресов у компьютера может быть несколько (более того, у каждого интерфейса может быть свой адрес, вдобавок еще и несколько адресов могут принадлежать одному интерфейсе), и имен тоже может быть несколько. Причем они могут связываться как с одним, так и с несколькими IP-адресами. А в-третьих, у компьютера может вообще и не быть доменного имени.

Как уже было сказано раньше, основной задачей DNS-сервера является трансляция доменных имен в IP адреса и обратно. На заре зарождения Интернета, когда он еще был ARPANET’ом, это решалось ведением длинных списков всех компьютерных сетей. При этом копия такого списка должна была находиться на каждом компьютере. Естественно, что с ростом сети такая технология уже стала не удобной для пользователей, потому как эти файлы были больших размеров, к тому же их еще и нужно было синхронизировать. Кстати, некоторые такие «отголоски прошлого» этого метода можно еще встретить и сейчас. Вот так в файл HOSTS (и в UNIX, и в Windows) можно внести адреса серверов, с которыми вы регулярно работаете.

Так вот, на смену неудобной «однофайловой» системе и пришел DNS - иерархическая структура имен, придуманная доктором Полом Мокапетрисом.

Итак, есть «корень дерева» – “.” (точка). Учитывая то, что этот корень единый для всех доменов, то точка в конце имени обычно не ставится. Но она используется в описаниях DNS и это нужно запомнить. Ниже этого «корня» находятся домены первого уровня. Их немного - com, net, edu, org, mil, int, biz, info, gov (и пр.) и домены государств, например, ua. Еще ниженаходятся домены второго уровня, а еще ниже - третьего и т.д.

Что такое «восходящая иерархия»

При настройке указывается адрес как минимум одного DNS-сервера, но как правило, их два. Далее клиент посылает запрос этому серверу. Получивший запрос сервер, или отвечает, если ответ ему известен, или пересылает запрос на «вышестоящий» сервер (если тот известен), или сразу на корневой, так как каждому DNS-серверу известны адреса корневых DNS-серверов.
Затем запрос начинает спускаться вниз - корневой сервер пересылает запрос серверу первого уровня, тот - серверу второго уровня и т.д.

Кроме такой «вертикальной связи», есть еще и «горизонтальные», по принципу “первичный - вторичный”. И если допустить, что сервер, который обслуживает домен и работает «без подстраховки», вдруг становится недоступным, то компьютеры, которые расположены в этом домене, станут тоже недоступны! Вот потому то при регистрации домена второго уровня и предъявляется требование указывать минимум два DNS- сервера, которые будут обслуживать этот домен.

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

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

Рекурсивные и нерекурсивные серверы

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

Рекурсивные сервера обычно используют на низких уровнях, например, в локальных сетях, так как они кэшируют все промежуточные ответы, и так при последующих к нему запросах, ответы будут возвращаться быстрее. А нерекурсивные сервера зачастую стоят на верхних ступенях иерархии, поскольку они получают так много запросов, что для кэширования ответов попросту не хватит никаких ресурсов.

Forwarders – «пересыльщики» запросов и ускорители разрешения имён

У DNS-серверов есть довольно полезное свойство – умение использовать так называемых «пересыльщиков» (forwarders). «Честный» DNS-сервер самостоятельно опрашивает другие сервера и находит нужный ответ. Но вот если ваша сеть подключена к Интернету по медленной линии (например, dial-up), то этот процесс может занять много времени. Поэтому можно перенаправлять эти запросы, например, на сервер провайдера, и после этого просто принимать его ответ.

Применение таких «пересыльщиков» может стать полезным для больших компаний, у которых есть несколько сетей. Так в каждой сети можно установить относительно слабый DNS-сервер, и указать в качестве «пересыльщика» более мощную машину с более быстрой линией. Вот и получится, что все ответы будут кэшироваться этим более мощным сервером, что приведёт к ускорению разрешение имен для целой сети.

Для каждого домена ведётся своя база данных DNS, которая выглядит как набор простых текстовых файлов. Они расположены на первичном (основном) DNS- сервере, и их время от времени копируют к себе вторичные сервера. А в конфигурации сервера указывается, какой файл содержит описания зон, а так же является ли сервер первичным или вторичным для этой зоны.

Уникальный адрес

Уникальный адрес в Интернете формируется добавлением к имени хоста доменного имени. Таким образом, компьютер, к примеру, “fred” в домене, к примеру, “smallorg.org” будет называться fred.smallorg.org. Кстати, домен может содержать как хосты, так и зоны. Например, домен smallorg.org может содержать хост fred.smallorg.org и в то же время вести зону acctg.smallorg.org, которая является поддоменом и может содержать еще один хост barney.acctg.smallorg.org. Хотя это и упрощает базу данных имен, однако делает поиск хостов в сети Internet более сложным.

В системе DNS реализуются три сценария поиска IP-адреса в базе данных.

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

* Компьютер, которому необходимо получить соединение с компьютером в другой зоне запрашивает локальный DNS-сервер своей зоны. Локальный DNS-сервер обнаруживает, что нужный компьютер находится в другой зоне, и формирует запрос корневому DNS-серверу. Корневой DNS-сервер спускается по дереву серверов DNS и находит соответствующий локальный DNS-сервер. От него он получает IP-адрес запрашиваемого компьютера. Затем корневой DNS-сервер передает этот адрес локальному серверу DNS, который послал запрос. Локальный DNS-сервер возвращает IP-адрес компьютеру, с которого был подан запрос. Совместно с IP-адресом передается специальное значение - время жизни TTL (time to live). Это значение указывает локальному DNS-серверу, сколько времени он может хранить IP-адрес удаленного компьютера у себя в кэше. Благодаря этому увеличивается скорость обработки последующих запросов.

* Компьютер, которому необходимо повторно получить соединение с компьютером в другой зоне запрашивает локальный DNS-сервер своей зоны. Локальный DNS-сервер проверяет, нет ли этого имени в его кэше и не истекло ли еще значение TTL. Если адрес еще в кэше и значение TTL не истекло, то IP-адрес посылается запрашивающему компьютеру. Это считается неавторизованным ответом, так как локальный DNS-сервер считает, что с момента последнего запроса IP-адрес удаленного компьютера не изменился.

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

По мере роста дерева DNS, к серверам системы доменных имен предъявлялись новые требования. Как уже упоминалось ранее, родительские DNS-серверы должны иметь IP-адреса своих дочерних серверов DNS, чтобы правильно обрабатывать DNS-запросы на преобразование имен в IP-адреса. Чтобы DNS-запросы обрабатывались правильно, поиск по дереву DNS должен начинаться из какой-то определенной точки. В период младенчества сети Internet большинство запросов на поиск имен приходилось на локальные имена хостов. Основная часть DNS-трафика проходила внутри локальной зоны и лишь в худшем случае достигала родительских серверов DNS. Однако с ростом популярности Internet и, в частности Web, все больше DNS-запросов формировалось к удаленным хостам вне локальной зоны. Когда DNS-сервер не находил имя хоста в своей базе данных, он вынужден был запрашивать удаленный DNS-сервер. Наиболее подходящими кандидатами для удаленных DNS-серверов, естественно, стали серверы DNS верхнего уровня, которые обладают полной информацией о дереве доменов и способны найти нужный DNS-сервер, ответственный за зону, к которой принадлежит запрашиваемый хост. Затем они же возвращают IP-адрес нужного хоста локальному DNS-серверу. Все это приводит к колоссальным перегрузкам корневых серверов системы DNS. К счастью, их не так много и все они равномерно распределяют нагрузку между собой. Локальные DNS-серверы работают с серверами DNS доменов верхнего уровня с помощью протокола DNS, который рассматривается далее в этой лекции.

Система DNS - улица с двусторонним движением. DNS не только отыскивает IP-адрес по заданному имени хоста, но способна выполнять и обратную операцию, т.е. по IP-адресу определять имя хоста в сети. Многие Web- и FTP-серверы в сети Internet ограничивают доступ на основе домена, к которому принадлежит обратившийся к ним клиент. Получив от клиента запрос на установку соединения, сервер передает IP-адрес клиента DNS-серверу как обратный DNS-запрос. Если клиентская зона DNS настроена правильно, то на запрос будет возвращено имя клиентского хоста, на основе которого затем принимается решение о том, допустить данного клиента на сервер или нет.