是否有一种简单的方法可以扫描给定网络以查找 Bonjour/Zeroconf 服务?
我有一组计算机(Linux、Windows、Apple),并希望在我的 Intranet 中自动生成所有可用的支持 Zeroconf 的联网节点的列表。
如果使用 Linux 和Avahi-Daemon,看起来 Avahi-Discover 值得研究。
不过,您显然必须下载/安装/启动它。在 Ubuntu/Debian 上,您可以使用以下内容:
% sudo apt-get install avahi-discover
并使用以下命令启动 GUI:
% avahi-discover
到目前为止,最可靠的方法(我已经尝试了所有这些,构建了一个支持 MDNS 的嵌入式产品)是使用开源的“Bonjour”。这是 mDNSResponder 守护进程,可在此处获取:
http
:
//opensource.apple.com/source/mDNSResponder/mDNSResponder-320.10/ mDNSResponder 包有一个 Java JNI 库和示例,可让您轮询所有可用服务。
@EdH,谢谢你的帖子。我投了赞成票。我还没有尝试过 Mono.Zeroconf,但我很肯定它会起作用,因为 Bonjour/Zeroconf 在过去几年里变化很小。我只是在寻找服务发布和发现等基本功能。mzclient 似乎是一个不错的起点。我挖出了源的 git 位置:mzclient on github。希望这可以帮助其他寻找类似解决方案的人:-)