如何將 localhost 的名稱變更為可供 LAN 中其他使用者使用的自訂名稱

如何將 localhost 的名稱變更為可供 LAN 中其他使用者使用的自訂名稱

我需要使用可從 LAN 中的所有裝置存取的自訂 URL 名稱。

我知道可以在/etc/hosts文件中設置

127.0.0.1   myname
127.0.1.1   system09-System-Product-Name

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

輸入myname主機時,可以存取 myname/urlpath 。它僅適用於我的系統。我如何才能使該系統在我的 LAN 中也可用?

答案1

顧名思義,本地主機只能從本地系統存取。

如果您需要其他使用者存取您的自訂 URL,您需要將您的系統 IP 位址與所使用的名稱進行映射,然後透過編輯其 /etc/hosts 檔案在所有 LAN 工作站上新增此項目,例如:

127.0.0.1         <custom_name> # this is for localhost
<your_ip_address> <custom_name> # this is to be added to other workstations in the LAN

其他解決方案是使用本機 LAN 中的 DNS 伺服器並為您的自訂名稱建立 A 記錄,該記錄將允許 LAN 中的其他使用者存取您的連結。

答案2

此名稱localhost僅供本地存取。
另一方面,您不應該localhost從其中刪除/etc/hosts任何一個。如果您嘗試這樣做,您會發現很多問題。

從此時起,您有 3 個選擇。

  1. /etc/hosts在所有相鄰PC的檔案中建立一個條目
  2. 在網路上設定 DNS 伺服器並向其中新增項目。大多數家庭路由器都有內建的 DNS 伺服器/代理,其中許多允許新增自訂條目。
  3. 使用 mDNS。 mDNS 是零設定網路。它允許電腦自動解析本機網路上的其他主機,而無需為這些主機手動設定 DNS 伺服器。它透過發送廣播請求並等待回應來實現這一點。
    設定它的確切過程因作業系統而異,但 Arch Linux 有一個很好的指導
     
    一旦您運行它,您所要做的就是將相鄰主機稱為foo.local(對於名為 的主機foo)。
     
    該解決方案是跨平台的,因為它在 OS-X 和 Windows 上都受支援(我認為兩者都預設為啟用)。

相關內容