同一網路中是否可以有兩台具有相同伺服器名稱(SQL SERVER)的機器?

同一網路中是否可以有兩台具有相同伺服器名稱(SQL SERVER)的機器?

我有一個 excel 程序,它使用伺服器名稱和實例連接到多個 SQL 伺服器。我的問題是,如果同一網路中有兩台具有相同伺服器名稱的伺服器(機器),會發生什麼事?這可能嗎?

如何防止這種情況發生?

使用 IP 連線比使用伺服器名稱連線更省錢嗎?

答案1

在非常特殊的情況下,您有多個伺服器回應相同的名稱。但是,每個伺服器仍然有自己的名稱,不能共享。

如果您嘗試將兩者設定為具有相同的名稱,那麼您要么會隨機連接到一台伺服器或另一台伺服器,要么一台伺服器只是「採用」自己的名稱,而另一台伺服器會失敗。

一般來說,透過 IP 連線是不好的,因為 IP 的變更比主機名稱更頻繁。這就是主機名稱的意義所在:提供透過有意義的名稱定位 IP 的能力,以便 IP 可以根據網路需求進行更改。

答案2

當兩台 Windows 電腦位於同一網域中時,它們顯然不能具有相同的主機名稱。這是不允許的。

相反,如果它們位於一個工作組或不同的網域中,您可以使用相同的名稱來命名它們,但是一旦它們找到彼此,它們就會開始拋出錯誤;但是,如果它們位於不同的 IP 子網路中,則它們無法發現這一點,因此它們會很樂意繼續使用相同的主機名稱。

現在,關於所有其他試圖聯繫他們的計算機。將主機名稱對應到 IP 位址是由 DNS 完成的;因此,即使您有兩台同名的伺服器,您實際連接的伺服器也將是在 DNS 中註冊的伺服器,而另一台則永遠不會被使用。除非您有重複的 DNS 項目;在這種情況下,您將有 50% 的機會連接到每台伺服器。

相關內容