Уроки модуля (2/3)
UDP, TCP, and EDNS(0)
UDP, TCP и EDNS(0)
Традиционный DNS обычно использует UDP для небольших запросов. Если ответ не соответствует доступному размеру сообщения, он может быть помечен как усеченный; клиент может повторить попытку через TCP. TCP — это обычная часть DNS, а не режим сбоя. Зональные передачи также используют TCP.
EDNS(0) расширяет DNS, поэтому клиенты и серверы могут сообщать о параметрах, включая больший размер полезной нагрузки UDP. Сообщение большего размера может уменьшить усечение, но ответы UDP слишком большого размера могут фрагментироваться и удаляться сетями. Операторам следует тестировать реалистичные пути и избегать предположения, что наибольший заявленный размер всегда работает.
Когда время запроса истекает, различайте потерю пакетов, фильтрацию, фрагментацию, загрузку сервера и фактическую ошибку DNS. Тайм-аут не является RCODE.
Проверьте свое понимание
Выберите лучший ответ. Этот тест выполняется локально и не отправляет DNS-запросы на реальные домены.
Что обычно должен делать клиент после усеченного ответа UDP?