首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >avahi从一个多宿主主机隔离的mDNS域

avahi从一个多宿主主机隔离的mDNS域
EN

Stack Overflow用户
提问于 2013-07-16 00:08:50
回答 1查看 952关注 0票数 0

我们正在尝试在我们的校园无线网络上启用一些mDNS广告服务,最明显的是airplay。在我们的例子中,airServers将位于我们的有线网络上,因此我们需要在无线端使用DNS-SD或mDNS手动通告服务。我们已经在avahi中使用静态服务广告实现了这一点,它非常灵活,但我们有一个可伸缩性的问题。

我们可能有150个AirServer主机分布在校园内的各种教室中。如果我们启用所有这些功能,iPads上的可供选择的列表将会非常大(更不用说当一个教员忘记更改密码时,学生们非常喜欢从校园的另一边接管AirServer )。

我们要做的是在每个建筑物的单个虚拟局域网基础上隔离我们的无线网络,形成27个mDNS网段,然后运行avahi来通告每个网段中的服务,最好是在可以访问所有网段的单个多宿主主机上。

我希望avahi-daemon能在avahi-daemon.conf中带一个指向唯一服务目录的参数,这样我就可以有多个配置文件,每个配置文件都有一个不同的allow-interface子句和一个指向不同服务目录的指针,但这似乎不是一个可配置的选项。

我正在考虑将avahi的多个副本投入chroot监狱,但这似乎真的很笨拙。

我是不是错过了一些更明显的策略来处理这个问题,而不是创建27个独立的主机?

非常感谢!

JD

EN

回答 1

Stack Overflow用户

发布于 2013-08-10 07:41:48

如果您构建自己的应用程序来在您想要的接口中发布服务,则可以实现您想要的内容。此方法调用来自GNUStep“基础”框架,类GSAvahiNetServices (可以在Linux上使用),该方法基于Avahi API。

代码语言:javascript
复制
- (id) initWithDomain: (NSString*)domain
                 type: (NSString*)type
                 name: (NSString*)name
                 port: (NSInteger)port
         avahiIfIndex: (AvahiIfIndex)anIfIndex
        avahiProtocol: (AvahiProtocol)aProtocol

正如您所看到的,可以指定您希望在其上发布服务的网络接口索引。您还可以限制协议(IPv4或IPv6)。如果您希望一个服务在多个接口中可用,只需在每个接口中发布它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17658773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档