2012-05-14 87 views
8

這是非常簡單的通過通過直接詢問你的域名服務器查詢了DNS-SD條目的膽量;但對於多播DNS,我不確定在哪裏尋找。如何查詢.local bonjour DNS條目?

編輯:我的動機是能夠看到例如DNS條目,這樣我可以更好地爲我的OS X的機器配置靜態卓悅項。

回答

6

主要效用是dns-sd,如:

% dns-sd -B _afpovertcp._tcp 
Browsing for _afpovertcp._tcp 
Timestamp  A/R Flags if Domain   Service Type    Instance Name 
20:02:23.350 Add  2 4 local.   _afpovertcp._tcp.   myhost 
+0

這對於獲取底層條目是否有任何技巧(或詳細的細節?) - 我的動機的一部分是找出給定服務註冊的條目。 (例如,AFP共享也有一個相關的_device-info._tcp) – Nevir

+0

當我試圖命令掛起...手冊頁:「在DNS-SD命令主要用於交互使用由於其命令行參數和輸出格式有可能發生變化,從一個shell腳本調用它通常是脆弱的。此外,DNS服務發現的異步特性不容易借給自己面向腳本編程例如,要求如「瀏覽」永遠不會完成。;執行「瀏覽」的動作設置運動機制,以便每當該服務類型的實例出現或從網絡中消失時通知客戶端。「 –

+0

@KurtHarriger它不是「掛起」的,它在那裏等待來自其他主機的進一步多播傳輸。 – Alnitak

7

啊哈,祕訣就是多播地址/端口。

例如,要查詢可用的AFP服務器:

dig @224.0.0.251 -p 5353 -t ptr _afpovertcp._tcp.local 
+0

這適用於服務在同一臺機器上,但不顯示其他服務網絡中的設備。另一方面,Bonjour瀏覽器確實顯示所有服務。 –