在 DreamPlug(这是一台运行 Ubuntu Jaunty 的插件计算机)上使用 Avahi 时,我遇到了以下非常奇怪的问题。
在花了几天的时间之后,我想我已经设法缩小了问题的范围。
DreamPlug 充当 WiFi 接入点,具有主机名plug
和 IP 地址192.168.1.1
(在/etc/hosts
和 中设置/etc/hostname
)并运行 lighttpd。
现在我的 Mac 可以直接http://plug.local
在 Chrome 中访问,但是如果我尝试http://plug.local
在 iPad 上加载,它就不起作用。也就是说,直到我在桌面上加载页面时它才起作用。
出于某种原因,iPad 永远无法解析主机名,直到在 Mac 上首次解析主机名......这很奇怪,因为 iPad 和 Mac 之间没有连接,除了它们连接到相同的接入点(DreamPlug)。
所以再次澄清一下:访问时 iPad 上的 Safari 将挂起(直到它报告浏览失败),http://plug.local
除非我http://plug.local
在 Mac 上访问、运行ping plug.local
、执行ssh root@plug.local
或基本上执行任何其他解析主机名的操作,此时 iPad 会立即解析主机名,它开始正常工作。
如果我的理解是正确的,当 iPad 连接时,它们会广播plug.local
. 无论出于何种原因,该请求都会被 DreamPlug 忽略(或者它永远不会被接收到)。但是,Mac确实设法广播了它的请求。它广播一个解析请求,DreamPlug 广播返回结果 …