當我們只曉得 hostname,但是不曉得 ip address,如何 ssh 連線到遠端主機?
$ ssh <hostname>.local
例如:
$ ssh MA123.local # MA123是主機名稱
這個功能在有預裝 avahi zeroconf 的機種上提供,包括:MP520-20, MP520-22, MP510-20, MP510-50, MP510-55等。
進一步技術說明如下:
Avahi 技術依賴於 mDNS 和 DNS-SD 協定,能夠讓電腦在區域網路上:
發佈正在執行的服務與主機,以及
發現區域網路上其他正在執行的服務與主機。
這兩項功能都不需要設定傳統的 DNS 伺服器。相反地,網路上的電腦會自行建立本地的 DNS 紀錄,並將這些紀錄暫存在記憶體中的快取中。區域 IP 位址與靜態服務的註冊則是透過 avahi-daemon 使用 mDNS/DNS-SD 來完成。
當某台主機想要查詢區網內另一台主機的 IP 位址時,它會向所有主機發出查詢,也就是使用多點廣播(multicast)方式傳送請求。擁有該網路名稱的主機會使用多點廣播訊息回應,回覆中包含它自己的 IP 位址。所有其他主機都能接收到這個回應,並更新它們的快取。