無法透過不同名稱存取本機 Windows 共用

無法透過不同名稱存取本機 Windows 共用

有人知道為什麼無法使用解析為相同 IP 位址的不同名稱來存取同一台電腦中的本機 Windows 共用(例如 c$)。

例子:

Computer Name: COMP-1  
IP Address: 192.168.1.2

Hosts File Entry: 192.168.1.2 COMP-2

我可以\\COMP-1\C$從內部訪問COMP-1,但\\COMP-2\C$即使它指向相同的IP位址(即它本身),我也無法訪問。它總是會要求提供憑證,但這是行不通的。

應該注意的是,如果COMP-1COMP-2被添加到 DNS,則其他系統可以使用任一名稱存取共用,但不能從本機電腦內部存取。

答案1

的引用\\COMP-2\C$不起作用,因為 Windows 專門對其進行了測試並要求使用者憑證。

此檢查是為 Windows Server 2003 Service Pack 1 添加的,可能是出於一些晦澀的安全原因,可以在知識庫文章中找到,名稱相當長:
安裝 Windows Server 2003 Service Pack 1 後嘗試使用伺服器的 FQDN 或其 CNAME 別名在本機存取伺服器時出現錯誤訊息:“存取被拒絕”或“沒有網路供應商接受給定的網路路徑”

其效果是檔案共用可以透過電腦名稱(無論是否完全限定)或透過 IP 位址進行。但是,預設情況下,檔案共用不適用於任意 DNS 別名。若要使檔案共用和其他 Windows 服務能夠使用 DNS 別名,您必須按如下所述進行登錄機碼變更並重新啟動電腦。

  1. 點選開始, 點選跑步,鍵入regedit,然後按一下「確定」。
  2. 找到並點選以下註冊表​​子項目: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
  3. 右鍵單擊MSV1_0,指向 新的,然後按一下多字串值
  4. 在裡面姓名列中,鍵入BackConnectionHostNames,然後按 Enter。
  5. 右鍵單擊BackConnectionHostNames,然後單擊修改。
  6. 在裡面價值在資料框中,鍵入用於電腦上本機共用的 CNAME 或 DNS 別名,然後按一下好的

    注意 在單獨的行中鍵入每個主機名稱。

    注意如果BackConnectionHostNames註冊表項以 REG_DWORD 類型存在,則必須刪除該BackConnectionHostNames 註冊表項。

  7. 退出註冊表編輯器,然後重新啟動電腦。

我已經測試了這篇 15 年前的知識庫文章,它仍然有效,並且不需要重新啟動電腦。如果BackConnectionHostNames包含COMP-2,則不需要憑證。

令我驚訝的是,刪除後BackConnectionHostNames,仍然不需要憑證,因為它們可能是當時隱式產生的,並且仍然被 Windows 記住。

相關內容