У меня есть несколько DNS-серверов, настроенных для DNS-SD. Я могу без проблем регистрировать услуги, однако при попытке просмотра получаю ошибки.
Я тестировал с помощью dig:
Просмотр локального или удаленного сервера:
dig -t PTR _services._dns-sd._udp.example.com
Возврат без результатов.
Однако если я выполню это:
dig -t ЛЮБОЙ _services._dns-sd._udp.example.com
Затем я обнаруживаю типы услуг, которые затем можно исследовать, чтобы выявить полные услуги.
Важно отметить, что если я затем снова выполню первую команду копания, я получу ожидаемый результат, такой же, как при выполнении копания с «-t ANY». Это длится 60 секунд (время кеширования), затем возвращается к отсутствию результатов.
Я чувствую, что чего-то не хватает, но конфигурация DNS была скопирована из рабочей системы ... (та же версия привязки)
Сведения о версии: CentOS 7, Bind-9.8.0
Привязка настраивается локально и удаленно с 3 зонами: локальной зоной, зоной обратного просмотра и зоной SRV.
named.conf разрешает запросы из любого, обновления из любого (еще не заблокированного и в закрытой сети)
При необходимости могу добавить файлы конфигурации.
Вопрос: почему я не могу найти услуги, просто dig -t PTR
запрос?
Я использую библиотеку для написания программного обеспечения, которое взаимодействует с DNS-SD и ищет записи PTR (библиотека: dnssdjava)
Оказывается, эта проблема была вызвана вовсе не конфигурацией DNS.
Проблема началась, когда мы переместили оборудование, и единственное, что изменилось, - это версия Cisco IOS на маршрутизаторе (ASA 5515x).
Оказывается, Cisco изменила способ работы проверки пакетов DNS между версиями 8.6 и 9.1, что привело к неправильной обработке запросов PTR-записей в этом случае.
Для меня решением было отключить проверку DNS на Cisco ASA.