Как устроен DNSSEC
DNSSEC добавляет к DNS-ответам подписи, чтобы резолвер мог убедиться, что их не изменили по пути. Зона публикует свои открытые ключи в виде DNSKEY-записей и подписывает ими свои записи. Родительская зона (.com для example.com) публикует DS-запись: дайджест ключа подписания ключей этой зоны. Эта DS-запись — звено цепочки доверия от корня до домена, и задаётся она через регистратора.
Нужны обе половины. Ключи в зоне без DS-записи в родительской зоне никто не валидирует. DS-запись, указывающая на ключ, которого зона не публикует, хуже: валидирующие резолверы тогда отвергают каждый ответ, и для их пользователей домен исчезает.
Что проверяет этот инструмент и откуда берутся данные
OrbitProbe запрашивает у двух публичных валидирующих резолверов, Cloudflare и Google, по DNS-over-HTTPS записи DS и DNSKEY регистрируемого домена с установленным битом DNSSEC OK. Он перечисляет DS-записи с тегом ключа, алгоритмом и типом дайджеста, DNSKEY-записи с их ролью (KSK или ZSK) и алгоритмом, а также показывает, установил ли каждый резолвер флаг AD (Authenticated Data) в своём ответе. Там, где реестр его публикует, флаг RDAP «delegation signed» показан как второй источник.
Вердикт — один из следующих: подписана (есть DS и DNSKEY), не подписана (резолверы ответили, и DS-записи нет), ключи опубликованы без DS-записи, DS есть, но ключи не читаются, или не удалось проверить. Если один резолвер не отвечает, ответ второго всё равно используется, а сбой показывается.
Как честно читать флаг AD
Флаг AD означает: эти валидирующие резолверы в момент проверки пометили ответ как аутентифицированный. Это их утверждение о собственной валидации, а не сертификат для домена и не обещание насчёт других резолверов. Инструмент сам подписи не перепроверяет и не обходит каждую запись зоны, поэтому истёкшая подпись на отдельной записи может остаться здесь незамеченной.