DNS и разрешение имён

Локальный DNS-клиент

Определение

Локальный DNS-клиент — это часть операционной системы или приложения, которая сама не обходит иерархию DNS, а отправляет рекурсивный запрос выбранному резолверу. Короткое имя он может дополнить по локальным правилам, и тогда в сеть уходит не то имя, которое ввёл человек.

Также ищут: stub DNS resolver · локальный DNS-клиент ОС · Stub resolver

Зачем это знать

Настройка DNS в ОС не всегда совпадает с путём конкретного приложения. При диагностике нужно наблюдать фактическое имя и выбранный канал, а не считать системную настройку единственным источником истины.

Связи из словаря

Карта понятия

Доказательная часть

Что подтверждено

  1. Локальный DNS-клиент обычно не выполняет полное итеративное разрешение, а отправляет рекурсивный запрос выбранному резолверу.

    Граница применимости: Обычный путь от локального DNS-клиента к рекурсивному резолверу.

  2. Локальные правила могут дополнить относительное имя и сформировать другой QNAME, поэтому при диагностике важно видеть фактически отправленный запрос.

    Граница применимости: Обработка относительных и полностью определённых имён на узле.

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

    Граница применимости: Роль локального клиента в RFC 1034 и терминологии RFC 9499.

  4. В терминологии DNS локальный клиент с ограниченной функцией разрешения зависит от рекурсивного резолвера. Тот берёт на себя получение окончательного ответа или сообщения об ошибке по рекурсивному запросу клиента.

    Граница применимости: Роли локального клиента и рекурсивного резолвера по RFC 9499. Текст ограничен участниками разрешения DNS; поведение API операционной системы здесь не описывается.

  5. Приложение с собственным клиентом DoH может использовать путь к резолверу, отличающийся от системного. При сравнении его результата с диагностической утилитой сначала проверяют оба пути.

    Граница применимости: Вывод из прикладного использования DoH и раздельного пространства DNS; не утверждает наличие или настройку функции в конкретном браузере.

  6. Клиент, который сам не проверяет DNSSEC, получает сведения о проверке от резолвера. Доверять им можно только в предусмотренной модели доверия к резолверу и каналу, а не по одному присутствию бита AD.

    Граница применимости: Граница между проверяющим резолвером и клиентом по RFC 4035; локальная проверка DNSSEC — другой вариант.

  7. Для воспроизведения сбоя предлагаем записать фактическое имя, тип, выбранный резолвер и сетевой контекст приложения. Успех отдельной утилиты не объясняет отказ программы, если эти условия различаются.

    Граница применимости: Редакторский способ сравнения наблюдений на основе формата вопроса и ролей DNS; системная утилита не объявляется универсальной копией приложения.

Граница терминов

Не путать

Локальный DNS-клиент Рекурсивный резолвер

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

Локальный DNS-клиент Полное доменное имя FQDN

FQDN фиксирует имя до корня. Локальный клиент всё ещё должен выбрать резолвер и транспорт; полное имя не устраняет различия между корпоративным DNS и публичным DoH.

Перед спецификацией

Что проверить

  1. Установите, какой механизм разрешения использует именно это приложение.
  2. Проверьте локальные подстановки имени и кэш средствами выбранной ОС.
  3. Зафиксируйте фактическое полное имя и тип отправляемого вопроса.
  4. Сверьте резолвер приложения с резолвером диагностической утилиты.
  5. Учтите VPN, отдельный DoH и правила выбора DNS для частных зон.
  6. Уточните, кто проверяет DNSSEC и на каком основании клиент доверяет результату.
  7. Повторите полезную операцию приложения после исправления его собственного пути.
Открытые основания

Первоисточники

  • Стандарт5
  • Документация1
  • Первичная спецификация
    DNS Terminology Internet Engineering Task Force · RFC 9499 / BCP 219, March 2024 · проверено

    Актуализирует определения names, resolvers, authoritative servers, zones, delegation, split DNS и DNSSEC states.

    Утверждения: 01 · 03 · 04 · 07

  • Первичная спецификация
    Domain Names — Concepts and Facilities Internet Engineering Task Force · RFC 1034, November 1987 · проверено

    Определяет иерархию DNS, zones, authoritative data, referrals и resolver algorithm.

    Утверждения: 01 · 02 · 03

  • Первичная спецификация
    Domain Names — Implementation and Specification Internet Engineering Task Force · RFC 1035, November 1987 · проверено

    Задаёт DNS wire format, master files и базовые resource records A, CNAME, MX, NS и SOA.

    Утверждения: 02 · 07

  • Первичная спецификация
    DNS Queries over HTTPS Internet Engineering Task Force · RFC 8484, October 2018 · проверено

    Определяет перенос DNS messages через authenticated HTTPS connection и media type application/dns-message.

    Утверждения: 05

  • Официальная документация
    Architectural Considerations on Application Features in the DNS Internet Architecture Board · RFC 6950, October 2013 · проверено

    Разбирает application use DNS, private namespaces и split-horizon operational boundaries.

    Утверждения: 05

  • Первичная спецификация
    Protocol Modifications for the DNS Security Extensions Internet Engineering Task Force · RFC 4035, March 2005 · проверено

    Определяет signing, authoritative serving и resolver validation behavior DNSSEC.

    Утверждения: 06

Подтвердите действие