检测本地链接中其他机器的地址?

检测本地链接中其他机器的地址?

我有两台机器通过 CAT6 电缆连接到本地 IPv4 链路。有什么办法host1可以确定host2的 IPv4 地址吗?

我使用的是运行内核 3.2.0-34-generic 的 Debian 衍生版本。

答案1

是的,已经作为经过验证的解决方案发布在评论中,但无论如何还是作为答案发布。

尝试使用 mDNS。

应该avahi-daemon在您想要解析的机器上安装(例如host2),并且至少安装一些适合您的客户端系统的 Avahi 客户端库(例如host1)。这些客户端库通常默认安装在大多数桌面发行版上。如果您的 Linux 发行版自动安装挂钩来实际使用 Avahi 客户端 (mDNS) 进行查找,那么您应该能够解析host2.local客户端计算机上的名称。

Avahi 工具集是 mDNS 实现。总之,它通过多播提供名称服务,用于常规主机解析和服务发现。 Mac OS X 用户可能会将其识别为“Bonjour”,这就是 iTunes 应用程序相互查找的方式(服务发现)。然而,简单的地址查找应该开箱即用。

/etc/nsswitch.confAvahi 在主机名查找中被触发,因为(对我来说至少在 Debian/Ubuntu 上是这样)的设置,如下所示:

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

后缀.local由 Avahi 守护程序导出并可配置。host2只是机器的基本主机名。

相关内容