Что такое DNS-сервера и как они работают

Любой компьютер, подключенный к Internet, идентифицируется в сети при помощи IP-адреса (например, 91.218.228.13) и доменного имени (например, rusureg.ru). Основное предназначение DNS-сервера — это трансляция доменных имен в IP-адреса и обратно. Изначально, когда интернет «был еще маленьким», проблема трансляции решалась при помощи специальных списков, включающих в себя адреса всех компьютеров сети. На каждом подключенном к сети компьютере обязательно должна была присутствовать копия такого списка. По мере развития интернета подобная технология перестала отвечать требованиям времени — файлы-списки раздувались до огромных размеров, их синхронизация требовала все больше и больше ресурсов.

DNS (Domain Name System) — существенный шаг вперед в эволюции технологии разрешения имен. В DNS существует так называемое «дерево доменов», в основании которого находится единый для всех доменов «корень». Имя корня дерева — «.» (точка). Ниже корня лежат домены первого уровня — com, net, edu, org, mil, int, biz, info, gov и национальные домены — ru, ua и т.д. Еще ниже в иерархии располагаются домены второго уровня (например, peterstar.ru), затем третьего и т.д.

DNS-сервера объединены в довольно сложную иерархию. При настройке программного обеспечения на компьютере-клиенте указывается один либо два DNS-сервера, к которым в процессе работы посылаются запросы. Сервера, получив запрос, либо отвечают на него, либо, если не знают ответа, пересылает запрос на стоящие выше в иерархии сервера. Каждому DNS-серверу известны адреса вышестоящих и корневых DNS-серверов, к которым также отправляются отдельные запросы. Ответ сервера клиенту передается в обратном порядке — сверху вниз.

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

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *