Как составить список всех записей DNS, включая DANE TLSA

Я хотел бы перечислить все/любые записи DNS, включая DANE TLSA.

С

dig mailbox.org ANY

Я получаю все записи, включая DNSSEC и т. д., но ничего о DANE. Почему?

С

dig _443._tcp.mailbox.org. ANY

Я получаю записи DANE TLSA.

Я прочитал вопрос, где кто-то хочет запросить все поддомены Как я могу перечислить ВСЕ записи DNS? и я знаю, что это возможно только при переносе зоны.

Но '_443._tcp.' не настоящий поддомен, не так ли? Я думал, что это просто запись SRV. Итак, как я могу запросить ЛЮБУЮ информацию, включая DANE TLSA?


person FelixF    schedule 11.10.2017    source источник


Ответы (2)


Команда dig mailbox.org ANY запрашивает все записи для имени mailbox.org..

Команда dig _443._tcp.mailbox.org. ANY запрашивает все записи для имени _443._tcp.mailbox.org..

mailbox.org. не совпадает с именем _443._tcp.mailbox.org..

Запрос всех записей для одного из них не покажет никаких записей для другого. Если это поможет, вы можете думать о (полных) именах в DNS как о первичных ключах в базе данных (потому что на практике это именно то, чем они являются). Если вы запросите у базы данных данные для ключа FOO, она не даст вам никаких данных для ключа FOOBAR (если только он не поврежден). Точно здесь происходит то же самое. Вы спрашиваете об одном, а не получаете ответов на другое, другое.

person Calle Dybedahl    schedule 11.10.2017

Ответ вы найдете в разделе 3 RFC 6698:

Записи ресурсов TLSA хранятся в доменном имени DNS с префиксом. Префикс готовится следующим образом:

  1. Десятичное представление номера порта, на котором предполагается существование службы на основе TLS, начинается с символа подчеркивания (_), чтобы стать самой левой меткой в ​​подготовленном доменном имени. Это число не имеет лидирующих нулей.
  2. Имя протокола транспорта, на котором предполагается существование службы на основе TLS, начинается с символа подчеркивания (_), чтобы стать второй крайней левой меткой в ​​подготовленном доменном имени. Для этого протокола определены имена транспорта: tcp, udp и sctp.
  3. Базовое доменное имя добавляется к результату шага 2, чтобы завершить подготовленное доменное имя. Базовое доменное имя — это полное доменное имя DNS [RFC1035] сервера TLS с дополнительным ограничением: каждая метка ДОЛЖНА соответствовать правилам [RFC0952]. Последнее ограничение означает, что если запрос предназначен для интернационализированного доменного имени, он ДОЛЖЕН использовать форму A-метки, как определено в [RFC5890].

По сути, поскольку у вас могут быть разные службы на основе TLS (например, DTLS) на разных портах, и эти данные не включены в набор записей TLSA, соглашение об именах предназначено для поиска правильной информации для желаемой комбинации протокола/порта.

person Yan Foto    schedule 04.05.2021