Avahi 能否通过网络发布两次相同的服务名称?
Posted
技术标签:
【中文标题】Avahi 能否通过网络发布两次相同的服务名称?【英文标题】:Can Avahi publish twice the same service name over the network? 【发布时间】:2016-12-16 19:17:26 【问题描述】:我正在尝试编写一个允许我通过本地网络发布服务的 C 程序。我正在使用 Avahi 发布这个名为 download 并且类型为 _lzo._tcp 的服务。
基本上,我将这个 C 程序部署在 2 个 raspberry-pi 板上,它们都有一个 avahi-daemon 和不同的 IP 地址(192.168.0.10 和 192.168.0.11)。
实际上,我使用 avahi-discover 找到了两个 download 服务之一,对应于已声明该服务的第一个 raspberry-pi。
在第二个中,我没有 avahi-daemon 给出的问题。 这真的有可能拥有两次相同类型的下载服务,但对应两个不同的发布者吗?
【问题讨论】:
【参考方案1】:是的,这称为零配置中的名称冲突,应该可以工作。建议不要这样做,因为大多数客户端会感到困惑并且只显示其中一个。其他,例如 bonjour 实现会将第二个重命名为dowload (2)
。总而言之,这是可能的,但不值得麻烦。
【讨论】:
【参考方案2】:这可能存在于实施 Avahi 的 DNS-SD 协议中。在 android 中,我看到使用 NSD-Manager 有一个错误,有时会发布一个服务 3-4 次。在网络中,如果您浏览,您将看到它 服务,服务(2),...
【讨论】:
以上是关于Avahi 能否通过网络发布两次相同的服务名称?的主要内容,如果未能解决你的问题,请参考以下文章
avahi-daemon 无法注册我正在使用 avahi-publish-service 发布的服务
Android NsdManager 定期丢失+找到 avahi 守护程序服务