У меня есть серверное приложение, работающее на устройстве в локальной сети, которое можно обнаружить через DNS-SD (например, Zeroconf / Bonjour / Avahi). Клиентские устройства, также находящиеся в локальной сети, подключаются к этому серверу. Я не могу контролировать, какое приложение используется для подключения к моему серверному приложению, но я знаю, что они, вероятно, используют DNS-SD и mDNS для обнаружения и подключения к серверу. Как я могу получить локальное для ссылки доменное имя, идентифицирующее эти клиентские устройства, учитывая только их IP-адрес на C или C ++?
Согласно RFC 6762 Multicast DNS - Раздел 4. Обратное сопоставление адресов:
« Как и «.local.», домены обратного сопоставления IPv4 и IPv6 также определены быть локальным для ссылки ... Поскольку имена в этом домене соответствуют локальным адресам IPv4, логично, что локальная ссылка является лучшим местом для поиска информации, относящейся к этим именам "
Таким образом, теоретически должна существовать возможность поиска локальных доменных имен по IP-адресу. Кто-нибудь знает как? Возможно, я ищу не в тех местах, но я не вижу вызова API для этого в документации Bonjour.