每个应用程序都能找到 Avahi 和 Zeroconf 服务器,但 Safari 却找不到

每个应用程序都能找到 Avahi 和 Zeroconf 服务器,但 Safari 却找不到

我的家庭网络中有两台服务器:第一台是基于 Arm 的 Linux 计算机,运行自定义的 Debian 3.4.43 内核;第二台是带有以太网屏蔽的 Arduino。

我在linux服务器上安装了avahi和apache2,安装了apache mod-dnssd并配置了以下服务:

afpd.服务:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
    <name replace-wildcards="yes">%h</name>
    <service>
        <type>_afpovertcp._tcp</type>
        <port>548</port>
    </service>
    <service>
        <type>_device-info._tcp</type>
        <port>0</port>
        <txt-record>model=MacPro</txt-record>
    </service>
</service-group>

ssh.服务:

<service-group>    
  <name replace-wildcards="yes">%h</name>    
  <service>
    <type>_ssh._tcp</type>
    <port>22</port>
  </service>    
</service-group>

并且,apache mod_dnssd 没有达到我想要的效果,http.service 也是如此:

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
  <name>Cubie Remote</name> ## Name of the service
  <service>
    <type>_http._tcp</type>
    <port>80</port>
  </service>
</service-group>

在 Arduino 上,我使用了一个库来执行 zeroconf。我不会提供详细信息,但它原则上应该在不同的服务器上宣传类似于 http.service 的服务,具有相同的类型和端口,但名称不同。

到目前为止一切顺利,以下事情都可以正常工作(无论是否宣传 http 服务):

  • 我在 iMac Finder(OS X 10.9.1)上找到了 afp 服务,甚至找到了正确的 MacPro 图标,我可以连接到它
  • 我也可以通过 server1.local ssh 连接到 Linux 服务器
  • 我可以使用 Firefox 和 Chrome 打开网站 server1.local 和 server2.local
  • 我还可以在我的 iPhone 和 iPad (Safari) 上打开 URL 下的这些网站

但是:在我的 iMac 上,在 Safari 7.0.1 中

  • 我在 Bonjour 收藏夹中找到了广告宣传的网络服务
  • 当我单击其中一个时,相应的 URL 会出现在地址栏中(带有尾随“点”,但我认为这是正确的)
  • 页面卡住,一段时间后出现“Safari 无法连接到服务器”的消息
  • 当我在地址栏中手动输入 server1.local 时,也会发生同样的情况
  • 我也在 Bonjour 收藏夹栏中找到了我的路由器,但是只有当我删除尾随的点时,Safari 才能连接到它(我猜它会使用路由器的“dns”信息,而不是单播/多播零配置消息)
  • 当我在地址栏中输入 IP 地址,或者将服务器手动添加到 iMac 上的 /etc/hosts 文件中时,所有网站都可以正常工作

看起来 Safari 似乎需要一种特殊的干净 http 或某种授权,才能连接到广告服务。您知道这可能导致什么吗?还是我只是瞎了眼,Safari 和/或安全偏好设置中有一个明显的复选框需要勾选?

不过,这似乎是 Safari 独有的,因为名称在 Chrome 和 Firefox 中可以正确解析(并且在使用 ping、ssh 等的终端中,我甚至可以通过 telnet 连接到端口 80 上的服务器)

答案1

好的,现在我要回答我自己的问题了。我安装了 Sophos 防病毒软件,因为我比较偏执 ;) 我看到了一些与 iMac 上的 Web 服务无关的日志条目。长话短说,禁用 Sophos Anti Virus 中的 Web Protection 可立即消除上述现象...

相关内容