Курс администрирования DNS · Урок 2/11

Делегирование, glue-записи и избыточность

Делегирование — это механизм, которым родительская зона (например, TLD .com) сообщает миру: «за эту зону отвечают вот эти NS-серверы». Glue-записи — это A/AAAA-записи для этих NS-серверов, которые родитель отдаёт вместе с делегированием, чтобы избежать циклической зависимости (для разрешения имени NS-сервера не нужен ещё один поход за NS). «Хромое» (lame) делегирование возникает, когда родитель указывает на NS-сервер, который на самом деле не авторитативен для зоны — часто из-за устаревшей конфигурации после смены провайдера. Избыточность нескольких NS-серверов работает только тогда, когда они действительно независимы: разные ASN, разные подсети, в идеале — разные географические точки, иначе один инцидент (отказ провайдера, DDoS) выводит из строя все «резервные» серверы одновременно.

«У меня несколько NS-записей — значит, я защищён от отказа». Не обязательно. Если все NS-серверы принадлежат одному провайдеру, в одной сети или за одним и тем же аплинком, избыточность существует только на бумаге. Реальная отказоустойчивость измеряется разнообразием ASN и топологии, а не просто количеством записей NS.

Лабораторное окружение не обязательно — начните с проверки на marinadns.io:

  • marinadns.io/dig — запросите NS-записи вашего домена и сравните их со списком, который отдаёт родительская зона.
  • NODA (noda.marinadns.io) — Check «ASN Diversity» (CAT-RELI) автоматически проверяет, действительно ли ваши NS-серверы расположены в разных автономных системах.

Для ручной трассировки полной цепочки делегирования (dig +trace), проверки glue-записей и обнаружения хромого делегирования — см. Урок 2 на странице Лабораторное окружение курса.

# Пройдите цепочку делегирования вручную: root -> TLD -> ваш NS
dig +trace yourdomain.com

# Убедитесь, что говорит РОДИТЕЛЬСКАЯ зона о ваших NS-серверах
dig yourdomain.com NS @a.root-servers.net    # (или соответствующий TLD-сервер из вывода +trace)

# Убедитесь, что говорят о себе ВАШИ NS-серверы (должно совпадать)
dig yourdomain.com NS @ns1.yourdnsprovider.com

# Проверьте glue: отдаёт ли родитель A/AAAA для ваших NS без второго запроса?
dig yourdomain.com NS +additional

# Обнаружение хромого делегирования: запросите каждый NS напрямую, все должны отвечать авторитативно
for ns in $(dig +short yourdomain.com NS); do echo "== $ns =="; dig @$ns yourdomain.com SOA +norecurse; done

Несовпадение NS на стороне родителя и на вашей стороне, либо любой NS-сервер, не отвечающий авторитативно, — это и есть признак хромого делегирования.

Вы должны уметь объяснить, не подглядывая:

  • Зачем нужны glue-записи и какую циклическую зависимость они устраняют.
  • Что делает делегирование «хромым» и почему это может оставаться незамеченным неделями.
  • Почему количество NS-записей само по себе не гарантирует избыточность.

Если можете ответить на всё без подсказок — переходите к Уроку 3.


Попрактикуйтесь с инструментами

← Курс администрирования DNS Лабораторное окружение