Если вы посмотрите на документацию, документация класса для JmmDNS говорит:
Java Multihomed Multicast DNS
Использует базовый экземпляр JmDNS для каждого InetAddress, найденного на этом компьютере.
Этот класс будет контролировать
топология сети изменится, и создаст или уничтожит экземпляры JmDNS
как требуется. Вы несете ответственность за обслуживание
регистрация (подсказка: используйте NetworkTopologyListener).
Экземпляр JmDNS
связан с конкретным Interface
и выполняет все необходимое для поддержки ответчика mDNS на этом едином интерфейсе, включая обнаружение службы и объявление.
FWIW, я закончил тем, что писал свои собственные NetworkTopologyListener
и JmmDNS
, похожие на работу, потому что поставленные из них не очень хорошо работали в моем опыте. Обнаружение интерфейса вообще не работало в некоторых версиях JVM v7 в ранних версиях Windows 7, и его путали со смешанными ситуациями IPv4 и IPv6. Эти двое были экспериментальными в то время.