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

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

С

dig mailbox.org ANY

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

С

dig _443._tcp.mailbox.org. ANY

Я получаю записи Дэйна TLSA.

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

Но '_443._tcp.' не настоящий поддомен, не так ли? Я думал, что это просто запись SRV. Так как же я могу запросить что-либо, включая DANE TLSA?

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 (если он не очень сильно сломан). Точно то же самое происходит и здесь. Вы просите одну вещь, а вы не получаете ответы на другую, другую вещь.

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

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

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

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

Другие вопросы по тегам