В чем разница между рекурсией и пересылкой в ​​связке

10

Я пытаюсь понять, как работает связывание, но не смог найти определенную информацию о разнице между рекурсивными запросами и «пересылкой».

Я читал, что глобально разрешать рекурсивные запросы плохо, потому что он допускает ddos-атаки. Но не то же самое для пересылки? Или пересылка является обязательным условием для рекурсивных запросов?

Рафаэль Швейкерт
источник

Ответы:

21

В двух словах:

Пересылка: просто передает DNS-запрос другому DNS-серверу (например, вашему провайдеру). Домашние маршрутизаторы используют пересылку для передачи DNS-запросов от клиентов вашей домашней сети на DNS-серверы вашего интернет-провайдера. Например, для foo.example.com сервер переадресации DNS сначала проверяет свой кэш (он уже задавал этот вопрос раньше), а если ответа нет в своем кеше, он запрашивает сервер пересылки (DNS-сервер вашего провайдера) для ответа, который отвечал бы либо кэшированным ответом, либо выполнял бы рекурсию, пока не выяснил ответ.

Рекурсия: DNS-сервер, получающий запрос, берет на себя задачу выяснить ответ на этот запрос, рекурсивно запрашивая авторитетные DNS-серверы для этого домена. Например, для foo.example.com рекурсор сначала запрашивает у корневых серверов, какие DNS-серверы отвечают за TLD .com, затем запрашивает эти серверы для example.com, а затем запрашивает серверы, например. com для foo.example.com, наконец, получив ответ на оригинальный запрос.

С точки зрения безопасности, вы должны разделить рекурсоры / серверы пересылки (обычно DNS-серверы, используемые для обслуживания группы клиентов) и авторитетные DNS-серверы (обычно они отвечают ТОЛЬКО за ответы на запросы в отношении доменов, для которых они являются полномочными - эти серверы НЕ будут работать рекурсивные запросы для всех).

Надеюсь, это немного прояснит ситуацию ...

Rouben
источник
Да, большое спасибо за это подробное объяснение. Рекурсивные запросы также разрешают CNAMEs?
Рафаэль Швейкерт
Да, любая запись DNS.
Рубен