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