您如何获得OS X 10.5+以使用mDNS解析所有.local DNS查找?


1

OS X 10.5+的解析器配置有些奇怪,可以在断开的网络上工作。在这里描述。

http://support.apple.com/kb/HT3473

我遇到的问题是,我们的网络不依赖单播DNS上的.local域,而是依靠mDNS进行大多数内部查找。这对于我们的大多数系统都可以正常工作,但是我们也希望拥有一些子域。遗憾的是,由于此功能,这对于我们所有的OS X用户都无法使用

默认情况下,使用DNS服务器解析除本地外还包含两个或多个标签的主机名,例如“ server.domain.local”。

这导致我们的子域在单播DNS服务器上查找,而根本不知道如何解析.local地址。

支持文章声称这是默认行为,在我看来这是某种可配置的事情,但我不知道如何使它像10.4一样工作,而仅对所有.local查找使用mDNS。

Answers:


0

Mac OS X具有可插入的解析程序库。这意味着您可以编写自己的解析器,该解析器位于现有解析器堆栈的顶部。实际上,单播DNS和mDNS是完全独立的层,它们堆叠在一起。

Apple所描述的默认行为实际上旨在表示默认堆栈。我知道要更改此行为的唯一方法是编写一个解析器插件,该插件将按照您想要的方式运行。

如果这听起来像您想尝试的事情,那么我不知道该怎么做。但是,由37signals生产的POW Web服务器包括一个用Ruby编写的解析器插件。POW是开源的,因此您可以从这里开始(假设您或您认识的人都知道Ruby)。


我知道它是由OS X上的mDNSResponder处理的,但是到目前为止,我在源中找不到任何与此特定功能相关的信息。重新编译mDNSResponder或编写一个全新的层实际上不是一种选择。
亚历克斯(Alex)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.