- Резюме
- Что такое EDNS?
- Как изменится поведение DNS-серверов в результате обновления ПО?
- Влияние на работу сети Интернет
- Влияние на домены верхнего уровня RU, РФ, SU, ДЕТИ, TATAR
Рекомендации MSK-IX для администраторов DNS-серверов и DNS-резолверов и операторов связи
Резюме
DNS Flag Day https://dnsflagday.net – инициатива профессионального DNS-сообщества, направленная на ускорение и упрощение развертывания новых функций в глобальной системе DNS. Начиная с 1 февраля 2019 г. основные поставщики ПО DNS с открытым исходным кодом будут выпускать обновления своего ПО, реализующие более строгую обработку запросов с применением расширений протокола DNS (EDNS).
Речь идет о согласованном прекращении поддержки на DNS-резолверах «обходных механизмов», позволяющих работать с DNS-серверами, не поддерживающих ответы на запросы с EDNS. С этой целью разработчики распространенного ПО DNS-резолверов (BIND, PowerDNS, Knot, Unbound) договорились синхронизировать выпуск новых версий, в которых «обходные механизмы» отключены.
Поскольку выпуск новых версий ПО не означает одномоментных изменений в работе DNS-инфраструктуры, данная инициатива не должна привести к критическим изменениям в работе сети Интернет. Настоящая статья посвящены подходам к решению возможных локальных проблем, находящихся в компетенции операторов DNS-серверов, DNS-резолверов и операторов сетей связи.
Поддержка EDNS на авторитетных DNS-серверах не является обязательной. Организаторы акции обращают внимание, что в случае отсутствия такой поддержки требуется обеспечить только корректную работу авторитетного DNS-сервера в соответствии с действующими стандартами DNS, в частности, RFC 6891 (секция 7).
Для предотвращения возможных проблем корпорацией ISC была разработана серия тестов, которая проверяет работу расширений протокола DNS (EDNS) на авторитетных DNS-серверах тестируемого домена. Данные тесты доступны на сайте https://ednscomp.isc.org/ednscomp. Следует обратить внимание на то, что ряд распространенных механизмов защиты от DDoS с использованием DNS, например от атак типа DNS-amplification, противоречат выбранному способу проверки готовности DNS к переходу на EDNS. Поэтому интерпретация результатов тестов должна проводиться профессионалами. Корпорация ISC приводит пример неуспешного теста по тайм-ауту в случае, если на авторитетном DNS-сервере установлено ограничение по нагрузке по числу запросов от хоста, на котором выполняется тест (Response Rate Limiting).
Что такое EDNS?
EDNS – описанный стандартом RFC6891 набор расширений для оригинального протокола DNS, позволяющий дополнить его рядом полезных функций: увеличение размера ответа; передача списков опций, поддерживаемых сервером или клиентом-резолвером; поддержка DNSSEC и др. Также EDNS применяется для противодействия DDoS-атакам с использованием механизма DNS-cookie.
Как изменится поведение DNS-серверов в результате обновления ПО?
Изменения, связанные с обновлением ПО DNS-резолверов, коснутся только ситуаций, когда DNS-резолвер не получает от авторитетного DNS-сервера ответа на запрос, отправленный с использованием расширений EDNS. Такое возможно в следующих случаях:
1) Авторитетный DNS-сервер игнорирует EDNS-запросы. Это означает, что он настроен некорректно, так стандартами предусмотрено отправка ответа, например, сообщения об ошибке.
2) Запросы или ответы DNS фильтруются промежуточными узлами, например, межсетевыми экранами. Фильтрация пакетов, содержащих информацию DNS, может использоваться в составе мер противодействия DDoS-атакам. Фильтроваться могут либо запросы/ответы, превышающие определенную длину (типовые для UDP 512 байтов), либо запросы/ответы, содержащие дополнительные флаги. Применение фильтрации может привести к нарушению взаимодействия между корректно работающим DNS-резолвером и корректно работающим авторитетным DNS-сервером.
В настоящее время многие DNS-резолверы используют дополнительные «обходные механизмы», позволявшие преодолеть сбой и установить взаимодействие с некорректно настроенным или недоступным по EDNS авторитетным DNS-сервером. Эти механизмы сводятся к повтору DNS-запросов с другими сочетаниями параметров, в том числе, без EDNS. Применение выпущенных после 01.02.2019 обновлений ПО DNS-серверов, приведет к тому, что новые версии DNS-резолверов станут считать нерабочим авторитетный DNS-сервер, от которого не был получен ответ на запрос с EDNS, и перестанут к нему обращаться.
Такое изменение подразумевает, что каждый авторитетный DNS-сервер должен быть доступен для корректных DNS-запросов, использующих EDNS, и должен отвечать на такие запросы. Из этого не следует, что авторитетный DNS-сервер должен полностью поддерживать EDNS: если сервер отвечает корректным пакетом с кодом DNS-ошибки («Ошибка формата»), резолвер повторит запрос без EDNS. В частности, такое поведение заявлено для Unbound и BIND.
Таким образом, в новых версиях ПО после 01.02.2019 применяется строгая обработка отсутствия ответа – в таком случае DNS-резолвер не будет пытаться отправить запрос без EDNS.
Влияние на работу сети Интернет
Выпуск новых версий ПО DNS-серверов не приведет к критическим изменениям в работе сети Интернет. Инициатива DNS Flag Day ставит своей целью устранение отдельных сохранившихся несоответствий стандартам DNS, не являющихся массовой проблемой. Подавляющее большинство авторитетных DNS-серверов, в том числе серверы DNS-облака MSK-IX, обслуживающие домены верхнего уровня RU, РФ, SU, ДЕТИ, TATAR корректно поддерживают работу с расширениями EDNS. Администраторам DNS-серверов, некорректно обрабатывающим EDNS-запросы предстоит обновить ПО или изменить программный код.
Важную роль для корректной работы систем DNS играет корректная настройка сетевого транспорта и систем фильтрации трафика. Эти настройки имеют косвенное отношение к системе DNS, но могут повлиять ее работу. Теоретически оператор сетевого оборудования может настроить правила фильтрации таким образом, что запросы расширения EDNS будут блокироваться некорректно. В этом случае при обновлении ПО DNS-резолверов работа службы DNS может быть нарушена. На практике, подавляющее большинство сетей обеспечивают корректный двусторонний обмен DNS-трафиком с применением EDNS, так как нарушения такого обмена влияют на пользователей, и как правило, хорошо заметны.
Поэтому, для исключения возможных аварий, требуется участие провайдеров доступа, сетевых служб, обеспечивающих прохождение пакетов DNS "в обе стороны" – и на стороне клиентов (рекурсивных резолверов), и на стороне авторитетных серверов.
Такое участие состоит в проверке правил межсетевых экранов и подобного программно-аппаратного обеспечения: пакеты EDNS, при штатной работе сети, не должны блокироваться (если тотальное блокирование все же необходимо, то следует отправлять на адрес источника пакета сообщение DNS о неверном запросе).
Влияние на домены верхнего уровня RU, РФ, SU, ДЕТИ, TATAR
DNS-облако MSK-IX, реализующее функции авторитетных DNS-серверов для доменов верхнего уровня RU, РФ, SU, ДЕТИ, TATAR, использует современные версии программного обеспечения DNS и корректно обрабатывает запросы DNS-резолверов с использованием расширений EDNS. Системы регулярно проходят аудит ICANN на предмет соответствия международным стандартам и уровням обслуживания, установленным ICANN.