1. 程式人生 > >DNS伺服器全攻略之一:基礎介紹(區域委派 )

DNS伺服器全攻略之一:基礎介紹(區域委派 )

區域委派

一個完整的DNS區域包含以自己的DNS域名為基礎名稱空間的所有DNS名稱空間的資訊,當基於此DNS名稱空間新建一個DNS區域時,新建的區域稱為子區域。例如,完整的winsvr.org區域包含了以winsvr.org為基礎名稱空間的所有DNS名稱空間的資訊,而tech.winsvr.org則稱為winsvr.org的一個子區域。

預設情況下,DNS區域管理自己的子區域,並且子區域伴隨DNS區域一起進行復制和更新。不過,你可以將子區域委派給其他DNS伺服器來進行管理,此時,被委派的伺服器將承擔此DNS子區域的管理,而父DNS區域中只是具有此子區域的委派記錄。

區域委派適用於許多環境,常見的場景有:

  • 將某個子區域委派給某個對應部門中的DNS伺服器進行管理;

  • DNS伺服器的負載均衡,將一個大區域劃分為若干小區域,委派給不同的DNS伺服器進行管理;

  • 將子區域委派給某個分部或遠端站點。

你只能在主要區域中執行區域委派。對於任何一個被委派的子區域,父DNS區域中只是具有指向子區域中權威DNS伺服器的A記錄和NS記錄,而實際的解析過程必須由委派到的子區域中的權威DNS伺服器完成,即被委派到的DNS伺服器上必須具有以被委派的子區域為域名的主要區域。

在Windows Server 2003的DNS伺服器管理控制檯中,提供了嚮導工具,可以讓你輕鬆的完成DNS區域委派。

DNS區域型別

在部署一臺DNS伺服器時,你必須預先考慮DNS區域型別,從而決定DNS伺服器型別。DNS區域分為兩大類:正向查詢區域反向查詢區域,其中

  • 正向查詢區域用於FQDN到IP地址的對映,當DNS客戶端請求解析某個FQDN時,DNS伺服器在正向查詢區域中進行查詢,並返回給DNS客戶端對應的IP地址;

  • 反向查詢區域用於IP地址到FQDN的對映,當DNS客戶端請求解析某個IP地址時,DNS伺服器在反向查詢區域中進行查詢,並返回給DNS客戶端對應的FQDN。

而每一類區域又分為三種區域型別:主要區域輔助區域存根區域,其中:

主要區域(Primary):包含相應DNS名稱空間所有的資源記錄,是區域中所包含的所有DNS域的權威DNS伺服器。可以對區域中所有資源記錄進行讀寫,即DNS伺服器可以修改此區域中的資料,預設情況下區域資料以文字檔案格式存放。你可以將主要區域的資料存放在活動目錄中並且隨著活動目錄資料的複製而複製,此時,此區域稱為活動目錄整合主要區域,在這種情況下,每一個執行在域控制器上的DNS伺服器都可以對此主要區域進行讀寫,這樣避免了標準主要區域時出現的單點故障。

輔助區域(Secondary):主要區域的備份,從主要區域直接複製而來;同樣包含相應DNS名稱空間所有的資源記錄,是區域中所包含的所有DNS域的權威DNS伺服器;和主要區域不同之處是DNS伺服器不能對輔助區域進行任何修改,即輔助區域是隻讀的。輔助區域資料只能以文字檔案格式存放。

存根區域(Stub):存根區域是Windows Server 2003新增加的功能。此區域只是包含了用於分辨主要區域權威DNS伺服器的記錄,有三種記錄型別:

  • SOA(委派區域的起始授權機構):此記錄用於識別該區域的主要來源DNS伺服器和其他區域屬性;

  • NS(名稱伺服器):此記錄包含了此區域的權威DNS伺服器列表;

  • A glue(粘附A記錄):此記錄包含了此區域的權威DNS伺服器的IP地址。

預設情況下區域資料以文字檔案格式存放,不過你可以和主要區域一樣將存根區域的資料存放在活動目錄中並且隨著活動目錄資料的複製而複製。

當DNS客戶端發起解析請求時,對於屬於所管理的主要區域和輔助區域的解析,DNS伺服器向DNS客戶端執行權威答覆。而對於所管理的存根區域的解析,如果客戶端發起遞迴查詢,則DNS 伺服器會使用該存根區域中的資源記錄來解析查詢。DNS伺服器向存根區域的NS資源記錄中指定的權威DNS伺服器傳送迭代查詢,彷彿在使用其快取中的NS資源記錄一樣;如果DNS伺服器找不到其存根區域中的權威DNS伺服器,那麼DNS伺服器會嘗試使用根提示資訊進行標準遞迴查詢。如果客戶端發起迭代查詢,DNS伺服器會返回一個包含存根區域中指定伺服器的參考資訊,而不再進行其他操作。

如果存根區域的權威DNS伺服器對本地DNS伺服器發起的解析請求進行答覆,本地DNS伺服器會將接收到的資源記錄儲存在自己的快取中,而不是將這些資源記錄儲存在存根區域中,唯一的例外是返回的粘附A記錄,它會儲存在存根區域中。儲存在快取中的資源記錄按照每個資源記錄中的生存時間 (TTL) 的值進行快取;而存放在存根區域中的SOA、NS 和粘附A資源記錄按照SOA記錄中指定的過期間隔過期(該過期間隔是在建立存根區域期間建立的,在從原始主要區域複製時更新)。

當某個DNS伺服器(父DNS伺服器)向另外一個DNS伺服器做子區域委派時,如果子區域中添加了新的權威DNS伺服器,父DNS伺服器是不會知道的,除非你在父DNS伺服器上手動新增。存根區域主要是用於解決這個問題,你可以在父DNS伺服器上為委派的子區域做一個存根區域,從而可以從委派的子區域自動獲取權威DNS伺服器的更新而不需要額外的手動操作。