每個應用程式都能找到 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”信息而不是單播/多播Zeroconf 訊息)
  • 當我在網址列中輸入 IP 位址或將伺服器手動新增至 iMac 上的 /etc/hosts 檔案時,所有網站都可以正常運作

看起來 Safari 似乎需要一種特殊的乾淨 http 或某種授權,以便能夠連接到所宣傳的服務。有什麼想法這可能會導致什麼?或者我只是盲目的,Safari 和/或安全偏好設定中有一個明顯的複選框需要勾選?

不過,這對 Safari 來說似乎非常獨特,因為在 Chrome 和 Firefox 中可以正確解析名稱(並且在終端機中使用 ping、ssh 等,我甚至可以遠端登入連接埠 80 上的伺服器)

答案1

好的,所以我在這裡回答我自己的問題。我安裝了 Sophos 防毒軟體,因為我很偏執;) 我看到一些日誌條目與 iMac 上的 Web 服務並不真正相關。長話短說,在 Sophos Anti Virus 中禁用 Web 保護使上述現象立即消失...

相關內容