Windows-Server-2008-R2

禁用環回地址上的 IPv6(本地主機、電腦名稱……)

  • December 21, 2016

我們嘗試在新的 Windows Server 2008 R2 機器上安裝第 3 方軟體產品,發現除了通過環回地址(例如localhost電腦名稱)訪問本地服務外,一切正常(例如:VPS-Web解析為localhost)。我們沒有使用 IPv6,並希望在軟體兼容之前禁用它。

我嘗試使用這些說明在 Windows 2008 R2 上禁用 IPv6,但它沒有禁用localhost. Pinging localhostorVPS-Web仍將返回::1:而不是127.0.0.1. 我可以ping localhost -4用來獲取正確的地址,但 IPv6 優先於 IPv4,因此第 3 方軟體只能獲取 IPv6 地址。

我最初按照 SilverbackNet 的建議檢查了主機文件,但在 Windows 2008 R2 伺服器上,這是預設文件:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost

#表示宿主文件中的註釋,所以所有的條目都被註釋掉了,第一行有點混亂。然後我注意到有兩個 localhost 條目被註釋掉了,所以我嘗試取消註釋 IPv4 條目,它起作用了!我應該先嘗試一下,但我被第一行趕出了軌道。使用以下主機文件 ping 電腦名稱或 localhost 將始終返回 IPv4 地址,這解決了第 3 方軟體的問題!

# localhost name resolution is handled within DNS itself.
#   ::1         localhost
127.0.0.1       localhost
127.0.0.1       VPS-Web

引用自:https://serverfault.com/questions/218745