avahi-browse 或 avahi-discover 适用于 Windows

avahi-browse 或 avahi-discover 适用于 Windows

avahi-browse是否有类似于 GNU/Linux 的 Windows 免费(=自由)软件avahi-discover(可以发现本地网络上的 avahi/bonjour 服务并列出它们)?

由于我在 Windows 和 Ubuntu 12.04 上看到(发现)彼此的 samba 服务时遇到了问题(类似于Windows 7 未发现 Ubuntu Samba 服务器无法浏览 Windows 7 x64 计算机上的共享https://askubuntu.com/questions/130522/windows-7-and-ubuntu-12-04-cant-connect-anymore), 我最好不要尝试解决这些问题,而是最好使用更熟悉的协议来在 LAN 上创建和发现服务(ssh、sftp、ftp),例如 avahi/bonjour。

答案1

我以前用过域名解析java 库在 Windows 上实现服务发现。

如果您想用 Java 编写使用基于 mDNS 的零配置服务发现的客户端/服务器软件,那么我建议您使用 JmDNS,但是该项目目前似乎并不活跃。

如果您只是需要发现网络上的服务,几年前我编写了一个使用 JmDNS 的简单 Java 程序。您可以从我的 Dropbox 下载 jar(所有依赖项都捆绑在里面):https://dl.dropboxusercontent.com/u/16311400/BonjourServiceDisco.jar

要运行此程序,您需要安装 Java 和 Windows 命令 shell:

java -jar BonjourServiceDisoc.jar

不幸的是,我弄丢了源代码,但是从记忆中它只是对 JmDNS 进行一两次 API 调用,以多播服务发现请求,然后实现侦听器以将结果输出到标准输出。JmDNS 可能包含一个执行非常类似操作的测试程序。

答案2

有一个 Mono 的 zeroconf 实现,包括 Windows 二进制文件:http://www.mono-project.com/Mono.Zeroconf

Mono.Zeroconf Windows 二进制文件依赖于安装在您系统上的 Apple Bonjour 服务(这是 Apple 对 mDNS 的实现)。如果您没有安装 Bonjour,您可以直接安装苹果 iTunes因为它包含了 Bonjour。

我发布了两个单独的答案,因为 JmDNS 和 Mono.Zeroconf 解决方案在实现语言、兼容性、错误和功能等许多方面都有所不同,因此您可能更喜欢使用其中一个。

相关内容