天天看點

DNS負載均衡技術-同一個域名對應多個ip的方法

DNS負載均衡技術是在DNS伺服器中為同一個主機名配置多個IP位址,在應答DNS查詢時,DNS伺服器對每個查詢将以DNS檔案中主機記錄的IP位址按順序傳回不同的解析結果,将用戶端的通路引導到不同的機器上去,使得不同的用戶端通路不同的伺服器,進而達到負載均衡的目的。

  

   DNS負載均衡的優點是經濟簡單易行,并且伺服器可以位于internet上任意的位置。但它也存在不少缺點: 

  

   為了使本DNS伺服器和其他DNS伺服器及時互動,保證DNS資料及時更新,使位址能随機配置設定,一般都要将DNS的重新整理時間設定的較小,但太小将會使DNS流量大增造成額外的網絡問題。  

  

   一旦某個伺服器出現故障,即使及時修改了DNS設定,還是要等待足夠的時間(重新整理時間)才能發揮作用,在此期間,儲存了故障伺服器位址的客戶計算機将不能正常通路伺服器。    

  

   DNS負載均衡采用的是簡單的輪循負載算法,不能區分伺服器的差異,不能反映伺服器的目前運作狀态,不能做到為性能較好的伺服器多配置設定請求,甚至會出現客戶請求集中在某一台伺服器上的情況。    

  

   要給每台伺服器配置設定一個internet上的IP位址,這勢必會占用過多的IP位址。

   判斷一個站點是否采用了DNS負載均衡的最簡單方式就是連續的ping這個域名,如果多次解析傳回的IP位址不相同的話,那麼這個站點就很可能采用的就是較為普遍的DNS負載均衡。但也不一定,因為如果采用的是DNS響應均衡,多次解析傳回的IP位址也可能會不相同。不妨試試Ping一下www.yesky.com,www.sohu.com,www.yahoo.com。 

  

   現假設有三台伺服器來應對www.test.com的請求。 

  

   在NT下的實作也很簡單,下面詳細介紹在win2000 server下實作DNS負載均衡的過程,NT4.0類似:

  

   打開“管理工具”下的“DNS”,進入DNS服務配置控制台。    

  

   打開相應DNS 伺服器的“屬性”,在“進階”頁籤的“伺服器選項”中,選中“啟用循環”複選框。此步相當于在系統資料庫記錄HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/DNS/Parameters中添加一個雙位元組制值(dword值)RoundRobin,值為1。    

  

   打開正向搜尋區域的相應區域(如test.com),建立主機添加主機 (A) 資源記錄,記錄如下:

  

   www IN A 192.1.1.1

   www IN A 192.1.1.2

   www IN A 192.1.1.3

  

   在這裡可以看到的差別是在NT下一個主機名對應多個IP位址記錄,但在unix下,是先添加多個不同的主機名分别對應個自的IP位址,然後再把這些主機賦同一個别名(CNAME)來實作的。    

  

   在此需要注意的是,NT下本地子網優先級會取代多宿主名稱的循環複用,是以在測試時,如果做測試用的客戶機IP位址與主機資源記錄的IP在同一有類掩碼範圍内,就需要清除在“進階”頁籤“伺服器選項”中的“啟用netmask排序”。