HTTPS использует модель SVCB с правилами профиля HTTP. Общий синтаксис не отменяет проверки режима, совместимых параметров и ожидаемой идентичности службы.
Запись HTTPS в DNS
Определение
Запись HTTPS в DNS — тип ресурсной записи, который по модели SVCB описывает подключение к службе HTTP: имя цели, протоколы ALPN, порт и подсказки адресов. Полученная запись — ещё не сеанс: подлинность конечной точки клиент проверяет по обычным правилам PKIX.
Также ищут: HTTPS RR · DNS HTTPS record · HTTPS resource record
Зачем это знать
Запись может помочь выбрать подходящий протокол и конечную точку раньше, но её успешное получение ещё не является успешным HTTPS-сеансом. Нужны совместимый клиент и проверка исходной службы.
Карта понятия
Что подтверждено
Запись HTTPS применяет модель SVCB к исходным адресам HTTP и может публиковать TargetName, ALPN, порт и подсказки адресов.
Граница применимости: Применение записи HTTPS по RFC 9460.
Использование записи HTTPS не меняет обычные требования PKIX к подлинности выбранной конечной точки соединения.
Граница применимости: Поиск через запись HTTPS с последующей проверкой службы по TLS.
Параметр alpn может объявлять протоколы, например h2 или h3. Объявление возможности в DNS не подтверждает, что клиент установил соответствующее соединение и проверил сервер.
Граница применимости: Параметры HTTPS и SVCB по RFC 9460; результаты TLS или QUIC устанавливаются при фактическом подключении.
Режим псевдонима записи HTTPS можно применять на вершине зоны без превращения самого имени в обычный CNAME. Поэтому правило несовместимости CNAME с SOA и NS нельзя механически переносить на тип HTTPS.
Граница применимости: Сопоставление ограничения CNAME и замысла AliasMode в RFC 9460; поддержка и настройка конкретного DNS-оператора проверяются отдельно.
В ServiceMode записи HTTPS имя цели «.» обозначает имя владельца записи. В SRV цель «.» сообщает о недоступности службы; одинаковый символ имеет разные значения в этих двух форматах.
Граница применимости: Сравнение положительного SvcPriority у HTTPS по RFC 9460 с полем цели SRV по RFC 2782; другие режимы HTTPS сюда не входят.
Запрос A или AAAA не проверяет, как приложение использует HTTPS-запись. Для её приёмки нужен клиент, понимающий этот профиль, и наблюдение выбранного им способа соединения.
Граница применимости: Редакторское правило проверки из разных типов DNS и профиля HTTPS; не заявляет поддержку записи конкретной версией браузера.
Выбор конечной точки через HTTPS-запись не является перенаправлением HTTP на другой ресурс. Исходная служба и её идентификация сохраняют свой смысл; переход по новому URL задаёт отдельный ответ приложения.
Граница применимости: Сопоставление привязки службы RFC 9460 и перенаправлений RFC 9110; DNS не задаёт код перенаправления HTTP.
Не путать
CNAME меняет разрешение имени по классическому алгоритму DNS. HTTPS описывает привязку службы, включая собственный режим псевдонима; это разные типы и разные ограничения.
Что проверить
- Запросите тип HTTPS для имени, предусмотренного профилем нужной службы.
- Разберите режим, приоритет и значение имени цели вместе.
- Проверьте обязательные параметры, ALPN и совместимость клиента.
- Отдельно обработайте подсказки адресов и адресные наборы цели.
- Наблюдайте фактически установленное соединение, включая отказ выбранного варианта.
- Проверьте сертификат и право представлять исходную службу.
- Полезный ответ HTTP и возможное перенаправление проверяйте на уровне приложения.
Первоисточники
- Service Identity in TLS
Задаёт construction и verification reference identifiers для TLS services; server identity находится в subjectAltName, не в commonName.
Утверждения: 02
- Clarifications to the DNS Specification
Уточняет RRset, TTL, authoritative ranking и canonical-name semantics.
Утверждения: 04
- A DNS RR for Specifying the Location of Services
Определяет SRV target, port, priority и relative weight для service location.
Утверждения: 05
- Domain Names — Implementation and Specification
Задаёт DNS wire format, master files и базовые resource records A, CNAME, MX, NS и SOA.
Утверждения: 06
- HTTP Semantics
Определяет stateless HTTP, origin server, intermediaries, target URI и security significance полей authority и Host.
Утверждения: 07