Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
seti_otvety_full.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.42 Mб
Скачать

24. Прикладной уровень. Служба доменов dns. Серверы имен

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

Существует две схемы запросов, которые могут использоваться для разрешения доменного имени: рекурсивные и итерационные (итеративные) запросы. Рассмотрим каждую из схем в отдельности.

В ответ на рекурсивный запрос (recursive query) клиента DNS-сервер должен возвратить либо IP-адрес, соответствующий запрашиваемому доменному имени, либо сообщение об ошибке, если это имя не может быть разрешено. В процессе разрешения запроса DNS-сервер рекурсивно предпринимает попытки обнаружить так называемые "ближайшие" серверы ("closest known" name servers). "Ближайшим" считается сервер, являющийся носителем зоны, в которой размещается домен, близкий к запрашиваемому. При этом поиск начинается от корневого сервера имен. Корневой сервер имен предоставляет ссылку на другой сервер имен, который, по его мнению, должен располагать сведениями о запрашиваемом хосте (или домене). Тот, в свою очередь, может предоставить ссылку на другой сервер имен и т. д. В конечном итоге будет найден сервер имен, располагающий сведениями о требуемом доменном имени.

Для пояснения рассмотрим пример. Допустим, сервер должен выполнить разрешение доменного имени www.ayan.ru. Первоначально DNS-сервер пытается обнаружить в собственной базе данных сведения о домене ауаn.ru. В случае если сведения о данном домене отсутствуют, DNS-сервер пытается обнаружить серверы имен для данного домена (при этом поиск осуществляется как в собственной базе данных, так и в кэше имен). Если соответствующие серверы имен не могут быть обнаружены, предпринимается аналогичная попытка для домена ru. В определенный момент DNS-сервер обратится к серверам корневого домена. Серверы имен корневого домена не располагают информацией о запрашиваемом домене. Но поскольку запрашиваемый домен располагается внутри домена ru, будет возвращена ссылка на серверы имен домена ru. Обращение к DNS-серверам домена ru даст информацию о серверах имен домена ayan.ru. Обратившись к серверу имен домена ayan.ru, DNS-сервер получит информацию об IP-адресе хоста www.ауаn.ru.

Рис. Рекурсивный метод разрешения запросов

В случае получения итерационного запроса (iterative query) DNS-сервер просматривает собственную базу данных и кэш, пытаясь обнаружить в них сведения о запрашиваемом доменном имени. Если доменное имя не может быть разрешено DNS-сервером самостоятельно, клиенту будет возвращена ссылка на вышестоящий DNS-сервер. Клиент должен повторно отправить запрос указанному серверу имен. Тот, в свою очередь, просматривает собственную базу данных и возвращает либо адрес требуемого хоста, либо ссылается на другой сервер имен. На определенном этапе клиент свяжется с сервером имен, который располагает сведениями о запрашиваемом доменном имени. В этом сценарии основная нагрузка по разрешению имени возлагается на DNS-клиента. 

Итерационные запросы могут использоваться в ситуации, когда или DNS-сервер, или DNS-клиент не поддерживают рекурсивные запросы (например, администратор может запретить на уровне DNS-сервера применение рекурсивных запросов).

Рис. Итерационный метод разрешения запросов

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]