1. 程式人生 > >DNS服務器介紹(二)——主從復制和區域轉發

DNS服務器介紹(二)——主從復制和區域轉發

dns;區域轉發;主從復值

背景介紹

實際環境中為了避免單點故障,DNS服務器是由一組服務器組成每一個服務器上都有若幹個區域,不同服務器上的相同區域分為主和從兩種角色。由於正向和反向是不同的區域,所以多臺服務器間的相同區域可以互為主從或者一主多從,本處以右圖為例進行演示。

技術分享

DNS服務器的主從復制

1.之前已經在172.16.10.10/24主機上創建了contoso.com正反向解析區域並分別設置為主服務器,對於從服務器,只需要在配置文件中添加解析區域且zone名稱必須和主服務器的zone名稱保持一致,他會自動去主服務器上同步區域解析庫文件。此處的masters是固定用法,無論你的master角色的主機有多少個

技術分享

之所以要將區域解析庫文件放到/var/named/slave目錄下,原因是bind程序以named用戶身份運行,而/var/named目錄對於named用戶沒有寫權限,所以bind程序創建了一個專門的slaves目錄來方便slave主機存放同步的區域解析庫文件

技術分享

需要註意的是:要進行同步的從服務器必須在主服務器上已經建立了NS記錄,並且A記錄也建立了正確的對應關系(即主服務器授權允許從服務器進行同步)。

技術分享

添加完解析區域後,使用rndc reload重新裝載,可以看到他已經進行同步。

技術分享

主從復制並不一定是非要等到同步時間周期後才進行更新,如果手動修改了區域解析庫文件後,手動將當前序列號+1,使用rndc reload重新裝載後他會立即進行同步。

DNS的區域轉發

如下圖所示:當contoso.com域存在一個blog.contoso.com的子域,controso.com域中的客戶如果想訪問ark.blog.contoso.com時,他首先會請求本區域的DNS服務器,由於本區域的DNS服務器有對blog.contoso.com子域的授權記錄,所以他會直接找到子域的DNS服務器從而獲得ark.blog.contoso.com的IP地址;而子域中的客戶如果要訪問父域中的www.contoso.com時,同樣是先請求本區域的DNS服務器,但是子域中沒有父域的DNS服務器記錄,所以子域DNS服務器會向過根發起請求,並通過一級級的叠代查詢最終獲得www.contoso.com的IP地址。

技術分享

這樣對服務器帶來不必要的消耗,我們子域希望在解析父域時可以使用父域上的DNS服務器而不是直接去找根。以下就介紹如何設置DNS的轉發。

1.首先要將需要將contoso.com域和blog.contoso.com域的DNS都配置為緩存DNS服務器,需要註意的是:dnssec是一種安全的DNS傳輸機制,他通過彼此間的密鑰來防止DNS被汙染,這裏需要改為no,即使註銷掉他默認值也為yes。

技術分享

2.父域DNS服務器只需要創建自己的zone,並且在區域解析數據庫中指明子域的DNS服務器(即授權)即可。

技術分享

3.因為子域的DNS服務器在父域中有指向,所以父域可以解析到子域的ark.blog.contoso.com地址(此時子域的DNS服務器必須能夠正常提供服務,否則無法解析,在/var/log/message記錄中提示無法與子域DNS服務器通信)。

技術分享

5.在子域DNS服務器配置文件/etc/named.rfc912.zones中不僅要創建自己的zone,還要創建父域的zone,轉發方式可以為first或only(first表示先轉發,轉發不成功再遞歸;only表示只轉發),此處以only為例,並指明轉發到的DNS服務器地址。

技術分享

6.在子域DNS服務器主配置文件/etc/named.conf的options全局配置段中,將所有地址請求都轉發到互聯網上的DNS服務器,由於在子域中明確定義了contoso.com和blog.contoso.com,所以局部轉發的優先級高於全局轉發。

技術分享

7.使用子域的DNS服務器解析www.contoso.com可以看到它是通過轉發到父域DNS服務器完成的地址解析。

技術分享




本文出自 “兔樣兔森破” 博客,請務必保留此出處http://arkling.blog.51cto.com/2844506/1923882

DNS服務器介紹(二)——主從復制和區域轉發