Знание IP-адреса устройства не всегда говорит вам, на каком порту находится предлагаемая им услуга. Записи DNS-SD могут представлять служебную информацию в более структурированном формате.

Основной подход

DNS-SD использует комбинацию записей DNS, таких как PTR, SRV и TXT для экземпляров службы. SRV указывает имя и порт назначения, а TXT может содержать дополнительные атрибуты. Этот подход можно использовать как в сценариях локального обнаружения, так и в управляемых инфраструктурах DNS.

Этапы применения

  1. Сохраняйте найденный тип службы, имя экземпляра и исходный протокол в отдельных полях.
  2. Проверьте разрешение адреса пункта назначения SRV и сообщаемого порта.
  3. Сохранять поля TXT как подтверждение устройства; Не интерпретируйте его как учетные данные или пароль.

Практический пример

Служба печати может сообщить о нестандартном порте. Проверка, которая проверяет только общие порты принтера, пропустит это, в то время как объявление службы может указывать на правильную цель. Однако фактический доступ к печати следует проверять отдельно.

Правильно интерпретируйте результат

Получение объявления не гарантирует правильную работу службы. Спящие устройства, устаревшие кэши и правила доступа могут повлиять на подключение. Разделение статусов «Объявлено» и «Подтверждено подключение» в инвентаре дает более понятные результаты.

Источник и дополнительная литература

Подробности протокола или команды: RFC 6763. Шаги и пример сценария приведены в редакционном описании IPScans.