Что такое рекурсивный DNS-запрос

Обновлено: 21.11.2024

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

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

Но если наш DNS-сервер 172.16.200.30 не является рекурсивным сервером имен (что означает его итеративный), он даст нам ответ, если он есть в его записях. В противном случае мы получим ссылку на корневые серверы (он не будет запрашивать корневой сервер и другие серверы сам по себе).

Давайте рассмотрим необходимые шаги.

ШАГ 3: Теперь вместо запроса корневого сервера наш DNS-сервер ответит нам ссылкой на корневые серверы. Теперь наш преобразователь операционной системы будет запрашивать ответ у корневых серверов.

Теперь остальные шаги такие же. Единственная разница в итеративном запросе заключается в том, что

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

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

Мы обсудим обратные запросы в другом посте. Надеюсь, что этот пост был полезен для понимания итеративных (нерекурсивных) и рекурсивных DNS-запросов.

Комментарии

DNS-запросы

Очень хорошее художественное объяснение мельчайших подробностей относительно DNS-запросов и устранение всех сомнений.

Красивое и изящное объяснение

Очень хорошая и хорошо объясненная статья о DNS-запросах с правильными шагами и диаграммами сделала мой день.

Вопрос для распознавателя

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

Привет,

Мы рады узнать, что вам понравилась статья. Библиотеки распознавателей в Linux практически одинаковы для разных дистрибутивов.
Однако библиотека udns чаще всего используется при выполнении таких команд, как "host" (библиотека udns доступна для скачивания в Интернете.)

Это. Очень хорошая статья

Очень хорошая статья о DNS, спасибо

Отличная работа.

преимущества и недостатки обоих запросов

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

Привет, Рупеш,

Привет, Рупеш! Приятно знать, что вам понравилась статья. И тепло приветствую slashroot!! Вернемся к вашему вопросу! Рекурсивные запросы: такие запросы чаще всего используются, когда мы настраиваем внутренний DNS-сервер для домена или, например, компании. Клиентские компьютеры или, скажем, обычные рабочие столы, которые сотрудники используют в компании ежедневно, генерируют огромное количество DNS-запросов. Таким образом, эти серверы в основном настроены рекурсивным образом (поскольку вопрос задают рабочие столы, которые являются обычными внутренними клиентами), и нам нужно предоставить нашим клиентам точный ответ на правильный запрос. Еще один важный факт, который следует отметить в отношении рекурсивных запросов, заключается в том, что вам необходимо очень тщательно ограничить, какие клиенты/подсети могут выполнять рекурсивный запрос. Ты знаешь почему ? Потому что существует опасный риск, если вы настраиваете общедоступные DNS-серверы в рекурсивной модели.Теперь предположим, что у нас есть около 1 миллиона DNS-серверов в мире, которые доступны публично и могут выполнять рекурсивные запросы. Злоумышленник может изменить исходный адрес на желаемый и отправить нежелательные DNS-запросы на эти общедоступные DNS-серверы. что приведет к атаке целевого сервера (потому что эти 1 миллион серверов будут сидеть и отвечать на этот неверный исходный адрес, который злоумышленник подделал, чтобы сделать его целью). Такая атака называется атакой отражения DNS. Все авторитетные серверы имен, корневые серверы имен, серверы TLD всегда являются итеративными по своей природе (конечно, эти серверы не созданы для того, чтобы идти и получать правильный ответ на запрос!) Надеюсь, это объясняет. Спасибо и с уважением, Сара

Это самый простой способ

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

Поищите в нашей обширной коллекции статей поддержки в нашей базе знаний

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

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

Видеоруководства

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

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

Существует два типа DNS-запросов, которые можно отправить на ваш сервер, а именно:

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

Почему не рекомендуются рекурсивные DNS-запросы?

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

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

Что произойдет, если я отключу рекурсивный поиск DNS на своем сервере?

Если ваш сервер не поддерживает рекурсивный поиск DNS, он просто будет рассматривать любые такие запросы как итеративный запрос DNS. Он продолжит действовать как DNS-сервер, но больше не будет полезен злоумышленникам в рамках усиленной атаки на жертву.

Как отключить рекурсивный поиск в DNS?

Плеск

Шаг 1. Войдите в панель управления Plesk и нажмите «Инструменты и настройки» в меню слева.

Шаг 2. Нажмите на ссылку с пометкой "Шаблон DNS".

Шаг 3. Нажмите Рекурсия DNS.

Шаг 4. Выберите Разрешить только локальные запросы и нажмите "Установить".

Это предотвратит получение третьими лицами рекурсивных DNS-запросов с вашего сервера.

Windows Server 2012 и 2016

Откройте powershell и введите следующую команду:

Set-DnsServerRecursion-Enable 0

Windows Server 2003 и 2008

Откройте командную строку и введите следующую команду:

dnscmd /Config /NoRecursion 1

Замените на имя вашего сервера.

Для Linux без Plesk

Войдите на свой сервер с помощью SSH и введите следующую команду (используя одинарные кавычки, как показано, а не обратные кавычки):

CentOS:

perl -pi -e 's/recursion yes/recursion no/g' /etc/named.conf; перезапуск systemctl named

Убунту:

perl -pi -e 's/рекурсия да/рекурсия нет/g' /etc/bind/named.conf;systemctl перезапустить bind9

Хорошей практикой безопасности всегда является остановка любых ненужных служб и блокировка доступа к связанным портам во встроенном брандмауэре.

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

Что такое система доменных имен?

Каждый компьютер в Интернете идентифицирует себя с помощью "Интернет-протокола" или "IP-адреса", который представляет собой набор цифр, как и номер телефона. Это означает, что вы можете связаться с любым из этих компьютеров, введя имя веб-сайта, или вы можете ввести IP-адрес в адресную строку браузера. Любой метод приведет вас к одному и тому же месту назначения. Все серверы, на которых размещены веб-сайты и приложения в Интернете, также имеют IP-адреса.

Попробуйте: IP-адрес веб-сайта Cisco Umbrella — 67.215.70.40.

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

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

Давайте поговорим об этих двух разных типах более подробно.

Что такое рекурсивный DNS-сервер?

Когда вы вводите адрес веб-сайта в адресную строку браузера, может показаться, что происходит волшебство. На самом деле, система DNS делает возможным легкий просмотр Интернета. Сначала ваш браузер подключается к рекурсивному DNS-серверу. В мире существует много тысяч рекурсивных DNS-серверов. Многие люди используют рекурсивные DNS-серверы, управляемые их интернет-провайдером (ISP), и никогда их не меняют. Если вы являетесь клиентом Cisco Umbrella, вместо этого вы используете наши рекурсивные DNS-серверы.

Как только ваш компьютер подключается к назначенному ему рекурсивному DNS-серверу, он задает вопрос: "Какой IP-адрес назначен этому имени веб-сайта?" У рекурсивного DNS-сервера нет копии телефонной книги, но он знает, где ее найти. Поэтому для продолжения поиска он подключается к DNS-серверу другого типа.

Что такое авторитетный DNS-сервер имен?

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

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

Собираем все вместе

Этот процесс происходит настолько быстро, что вы даже не замечаете, как это происходит — если, конечно, что-то не сломалось.

Давайте рассмотрим реальный пример. Представьте, что вы сидите за компьютером и хотите найти фотографии котов в галстуках-бабочках (эй, мы не осуждаем). Итак, вы решили посетить Google, чтобы выполнить поиск в Интернете.

Без DNS Интернет перестает работать

Система DNS настолько важна для современного мира, что мы часто называем ее основой Интернета. Если ваша рекурсивная служба DNS по какой-то причине сломается, вы не сможете подключаться к веб-сайтам, если не введете IP-адреса напрямую — а кто хранит аварийный список IP-адресов на своем столе? Если служба рекурсивного DNS, которую вы используете, работает, но по какой-то причине (например, в результате кибератаки) замедлена, ваше подключение к веб-сайтам также будет замедлено.

Cisco Umbrella запустила свою службу рекурсивных DNS в 2006 году (под названием OpenDNS), чтобы предоставить каждому надежное, безопасное, интеллектуальное и быстрое подключение к Интернету. Umbrella имеет высоконадежную рекурсивную DNS-сеть. У нас было 100% безотказной работы без сбоев DNS в нашей истории. Более 30 наших центров обработки данных по всему миру используют маршрутизацию произвольной рассылки для прозрачной отправки запросов в самый быстрый доступный центр обработки данных с автоматическим переключением на другой ресурс.

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

Какие риски связаны с рекурсивными DNS-запросами?

Существует два типа DNS-запросов: итеративный и рекурсивный.

Мы не разрешаем запуск рекурсивного DNS на выделенных или виртуальных частных серверах (VPS), если только он не работает локально и для определенного диапазона IP-адресов. Если мы обнаружим, что на вашем сервере используется неправильная конфигурация рекурсивного DNS, мы воспользуемся своим правом приостановить действие вашей учетной записи. Аккаунт будет заблокирован до тех пор, пока не будут приняты меры по отключению рекурсивного DNS.

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

Риски, связанные с рекурсивными DNS-запросами

DNS-сервер, поддерживающий рекурсивное разрешение, уязвим для DOS-атак (отказ в обслуживании), отравления кэша DNS, несанкционированного использования ресурсов и снижения производительности корневого сервера имен.

DOS-атаки Серверы, поддерживающие рекурсивные DNS-запросы, уязвимы для фальшивых запросов, которые заполняют определенный IP-адрес результатами запроса каждого сервера. Это может привести к перегрузке IP-адреса объемом трафика, слишком большим для обработки. Отравление кэша DNS Отравление кэша возникает, когда кто-то обманывает сервер DNS, заставляя его поверить в то, что поддельный ответ на запрос DNS является подлинным. Поскольку ответы обычно кэшируются, эта ложная информация может быть распространена среди пользователей этого сервера. Несанкционированное использование ресурсов При включенных рекурсивных DNS-запросах сервер легче взломать, а его производительность поставить под угрозу. Снижение производительности корневого сервера имен. Если DNS-серверы настроены неправильно, запросы, использующие адресацию RFC1918 (также известную как "частная" адресация), могут попасть на корневые серверы имен, что приведет к ухудшению обслуживания законных запросов к этим серверам.

Читайте также: