通过单播 DNS-SD 实现 AirPlay。有人成功了吗?

通过单播 DNS-SD 实现 AirPlay。有人成功了吗?

我们设立AirPrint使用单播DNS-SD大约一年前,我们学校就举办了这项活动,取得了巨大的成功,所以我们正在尝试隔空播放这样我们的教师和学生就可以通过教室投影仪无线显示内容。

还有一些其他因素阻碍了理想的实现(首先是用户名和密码验证),但我一直在尝试设置一个可以运行的演示。要使 AirPrint 正常工作,基本上只需通过 DNS-SD 域而不是多播 (.local) 域来宣传相同的记录,但对 AirPlay 执行相同的操作似乎行不通。设备无法识别可用的 DNS-SD AirPlay 服务器。

我已上传了我的 DNS-SD 配置的屏幕截图(来自 AirServer,它通常用于多播)这里

我意识到这仍然是一个相当新的功能,并且缺乏文档,但是有人能够通过 DNS-SD 让 AirPlay 工作吗?如果它仅仅只能通过多播起作用,我可以接受,但它的潜力对我们来说如此有吸引力,所以我认为值得询问是否有其他人已经解决了这个问题。

答案1

我已经让它工作了,但方法不太好。因为 airplay 的多播地址是子网本地地址 - 仅限 - 它不能通过标准路由器按原样传播。我最终设置了阿瓦希在 Linux vm 上,每个所需子网都有接口。Avahi 则配置为服务反射 (enable-reflector=yes)。这允许守护进程收集各种 mDNS 请求并将它们传播到各种连接的子网中。

我并不是特别喜欢这个解决方案,但它确实适用于十几个 VLAN,没有太多问题。不幸的是,这个故事的寓意是,这些协议充其量是有问题的。

答案2

苹果显然确保 Apple TV不支持单播 DNS-SD因为“他们向内容提供商做出了让步,无论多少 DNS 记录或搜索域都无法让 Apple TV 从另一个网络联系/使用。”所以很遗憾,你运气不佳。

相关内容