Вторичная DNS

Система доменных имен, сокращенно называемая DNS, — это глобально распределенная система преобразования интернет-доменов в IP-адреса. DNS предоставляет IP-адрес, соответствующий доменному имени, и поэтому действует как своего рода «адресная книга» для Интернета. Используя эту аналогию, IP-адрес эквивалентен почтовому адресу, и именно по нему отправляются «пакеты» с информацией. Вот несколько примеров DNS-запросов:

Запрашиваемый домен Доставляемый IP-адрес
«example.com» «93.184.216.34»
«ionos.com» «74.208.255.134»

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

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

Цитата

«Эта заметка описывает опкод NOTIFY для DNS, с помощью которого ведущий сервер сообщает набору ведомых серверов, что данные ведущего сервера были изменены и что необходимо инициировать запрос для получения новых данных». — Internet Engineering Task Force» (IETF). Источник: www.ietf.org/rfc/rfc1996.txt

Примечание

Использование терминов «ведущий» и «ведомый» в ИТ является спорным в связи с историческими событиями и поэтому постепенно заменяется эквивалентными терминами.

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

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

В чем разница между первичным и вторичным DNS?

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

Разница между первичными и вторичными DNS-серверами в основном административная. Первичный DNS-сервер содержит DNS-информацию зоны DNS в файле зоны. Любые изменения в файле зоны вносятся непосредственно администратором зоны. В отличие от этого, файл зоны вторичного DNS-сервера не может быть записан напрямую. Вместо этого все изменения в файл зоны поступают от первичного DNS.

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

Как работает вторичный DNS?

Ключевой особенностью вторичного DNS является то, что файл зоны передается на серверы из внешнего источника. Для передачи зоны используются различные механизмы. Основой, регулирующей передачу зоны, является запись DNS под названием «Начало полномочий» (SOA). Она включает в себя несколько полей:

  • Поле «MNAME» содержит IP-адрес основного DNS-сервера.
  • Кроме того, запись SOA содержит несколько полей, определяющих интервалы, через которые вторичные DNS-серверы автоматически запрашивают изменения у первичного.

Ниже мы рассмотрим три часто используемые конфигурации DNS.

Первичный/вторичный

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

Скрытая первичная система

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

Популярным подходом является настройка компьютера в локальной сети в качестве DNS-сервера и использование его в качестве скрытого основного. Это имеет два непосредственных преимущества:

  • Изменения в файле зоны могут быть сделаны локально.
  • Весь входящий DNS-трафик обрабатывается вторичными DNS-серверами.

При таком подходе целесообразно шифровать обмен данными между вторичными DNS-серверами и скрытым основным с помощью технологии шифрования DNSSEC.

Основной/первичный

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

Почему использование вторичного DNS является хорошей идеей?

Преимуществ использования вторичного DNS много. Чтобы лучше понять их, давайте представим, что для зоны DNS существует только один DNS-сервер. Такая конфигурация имела бы, помимо прочего, следующие негативные последствия:

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

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

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

Как вы видите вторичный DNS?

Различие между первичным и вторичным DNS в основном административное. Внешний наблюдатель не может однозначно определить, является ли авторитетный DNS-сервер первичным или вторичным. Более того, один и тот же сервер может быть первичным DNS для одной зоны и вторичным DNS для другой зоны. Даже поле MNAME в записи SOA не помогает определить это, поскольку фактический первичный DNS-сервер может работать как скрытый первичный.

Оцените статью
cdelat.ru
Добавить комментарий