天天看點

DNS伺服器的建構及配置

<b> </b>

<b>《linux</b><b>網絡服務</b><b>》</b>

<b>第三章</b><b>建構域名伺服器</b>

一.     <b>DNS</b><b>系統概述</b>

1.     <b>DNS</b><b>系統的作用</b>

a.     <b>正向解析:根據主機名稱(域名)查找對應的</b><b>IP</b><b>位址</b>

b.     <b>反向解析:根據</b><b>IP</b><b>位址查找對應的主機域名</b>

2.     <b>DNS</b><b>系統的分布式資料結構</b>

3.     <b>DNS</b><b>查詢方式:</b>

a.     <b>遞歸查詢</b>

大多數客戶機向DNS伺服器解析域名的方式

b.     <b>疊代查詢</b>

大多數DNS伺服器向其他DNS伺服器解析域名的方式

二.     <b>DNS</b><b>伺服器的類型(角色)</b>

1.     <b>緩存域名伺服器</b>

a.     <b>也稱為</b><b>唯高速緩存伺服器</b>

b.     <b>通過向其他域名伺服器查詢獲得域名</b><b>-&gt;IP</b><b>位址記錄</b>

c.      <b>将域名查詢結果緩存到本地,提高重複查詢時的速度</b>

2.     <b>主域名伺服器</b>

a.     <b>特定</b><b>DNS</b><b>區域的官方伺服器,具有唯一性</b>

b.     <b>負責維護該區域内所有域名</b><b>-&gt;IP</b><b>位址的映射記錄</b>

3.     <b>從域名伺服器</b>

a.     <b>也稱為</b><b>輔助域名伺服器</b>

b.     <b>其維護的</b><b>域名</b><b>-&gt;IP</b><b>位址記錄</b><b>來源于主域名伺服器</b>

三.     <b>BIND</b><b>域名服務基礎</b>

1.     <b>BIND</b><b>(</b><b>Berkeley Internet Name Daemon</b><b>)</b>

    <b>伯克利</b><b>Internet</b><b>域名服務</b>

    <b>官方站點:</b><b>https://www.isc.org/</b>

2.     <b>相關軟體包</b>

    <b>bind-9.3.3-7.el5.i386.rpm        </b><b>主程式包</b>

    <b>bind-utils-9.3.3-7.el5.i386.rpm    </b><b>工具</b>

    <b>bind-chroot-9.3.3-7.el5.i386.rpm </b><b>安全牢籠</b><b>(</b><b>僞裝根目錄</b><b>)</b>

    <b>caching-nameserver-9.3.3-7.el5.i386.rpm </b><b>模闆</b>

3.     <b>BIND</b><b>伺服器端程式</b>

    <b>主要執行程式:</b><b>/usr/sbin/named</b>

    <b>服務腳本:</b><b>/etc/init.d/named</b>

    <b>預設監聽端口:</b><b>53</b>

    <b>主配置檔案:</b><b>/var/named/chroot/</b>etc/named.conf

    <b>儲存</b><b>DNS</b><b>解析記錄的資料檔案位于:</b>

<b>/var/named/chroot/</b>var/named/

注意: named預設監聽TCP、UDP協定的53端口,以及TCP的953端口:

      其中UDP 53端口一般對所有客戶機開放,以提供解析服務;

      TCP 53端口一般隻對特定從域名伺服器開放,提高解析記錄傳輸通道;

  TCP 953端口預設隻對本機(127.0.0.1)開放,用于為rndc遠端管理工具提供控制通道

如果沒有安裝bind-chroot軟體包,則主配置檔案預設位于 /etc/named.conf,資料檔案預設儲存在 /var/named/ 目錄

四.     <b>主配置檔案</b><b>named.conf</b>

<b>全局配置部分</b>

<b>options {</b>

<b>    listen-on port 53 { 173.16.16.1; };</b><b>監聽端口号</b>

<b>    directory   "/var/named";</b>

<b>    allow-query { 192.168.1.0/24; 173.16.16.0/24; };</b><b>允許查詢的客戶機位址</b>

<b>    recursion yes;</b><b>是否允許為客戶機進行遞歸查詢</b>

<b>};</b>

<b>根區域配置部分</b>

<b>zone "." IN { </b><b>定義根區域</b>

<b>    type hint;</b><b>hint</b><b>表示根區域</b><b>;master</b><b>表示主區域</b><b>;slave</b><b>輔助區域</b><b>       </b>

<b>    file "named.ca"; file </b><b>用于設定</b><b>該區域對應的資料檔案名</b>

<b>自己定義的區域配置部分</b>

<b>zone "benet.com" IN { benet</b><b>域名的正向區域</b>

<b>    type master;       </b><b>主</b><b>dns</b>

<b>    file "benet.com.zone"; </b><b>正向區域的配置檔案名字</b>

<b>    allow-transfer { 173.16.16.2; };</b><b>允許下載下傳該區域解析記錄的從域名服務的位址</b>

<b>    allow-update    { none; }; </b><b>允許動态更新哪些客戶機位址,</b><b>none </b><b>表示全部禁止</b>

<b>zone "16.16.173.in-addr.arpa" IN {benet</b><b>域名的反向區域</b>

<b>    type master;               </b><b>主</b><b>dns </b>

<b>    file "173.16.16.arpa";       </b><b>反向區域配置檔案</b>

五.     <b>區域資料配置檔案</b>

1)正向區域檔案内容

<b>$TTL    86400              ; </b><b>有效位址解析記錄的預設緩存時間</b>

<b>@ IN SOA benet.com. admin.benet.com. (</b>

<b>        2009021901     ;</b><b>更新序列号</b>

<b>        3H          ;</b><b>重新整理時間</b>

<b>        15M             ;</b><b>重試延時</b>

<b>        1W               ;</b><b>失效時間</b>

<b>        1D           ;</b><b>無效位址解析記錄的預設緩存時間</b>

<b>)</b>

<b>@    IN    NS    ns1.benet.com.</b><b>指定誰是域名伺服器</b>

<b> IN       MX 10 mail.benet.com.</b><b>指定郵件解析記錄</b>

<b>ns1       IN    A     173.16.16.1</b>

<b>mail       IN    A     173.16.16.1</b>

<b>www     IN    A     173.16.16.1</b>

<b>ftp         IN    CNAME     www</b><b>别名記錄</b>

2)反向區域檔案内容

把A記錄換為PTR記錄,别的内容保持不變

<b>1     IN       PTR         www.benet.com. </b>

<b>4     IN       PTR         study.benet.com.  4</b><b>表示最後一位</b><b>ip</b>

六.     <b>區域資料檔案的幾個特殊應用</b>

1.     <b>基于域名解析的負載均衡</b>

    <b>同一域名對應到多個</b><b>IP</b><b>位址</b>

<b> </b><b>例如有一個網站是</b><b>movie.benet.com</b>

<b> movie       IN       A        173.16.16.11</b>

<b>movie       IN       A        173.16.16.12</b>

<b>movie       IN       A        173.16.16.13</b>

2.     <b>泛域名解析</b>

    <b>找不到精确對應的</b><b>A</b><b>記錄時,使用“</b><b>*</b><b>”進行比對</b>

<b>*           IN       A        173.16.16.173</b>

3. 子域授權

   <b>cn              IN      A        173.16.16.2</b>

<b>           IN             NS           ns.jv.net.cn.</b>

<b>ns.jv.net.cn.   IN       A        173.16.16.2</b>

七.     <b>對配置檔案進行文法檢查</b>

<b>1. named-checkconf</b><b>工具</b>

<b>named-checkconf   named.conf</b>

<b>2.     </b><b>named-checkzone</b><b>工具</b><b>    </b><b>後面加域名</b><b> </b><b>然後是正</b><b>/</b><b>反向檔案</b>

<b>例如</b><b>:named-checkzone benet.com benet.com.zone</b>

<b>八</b><b>.</b><b>在</b><b>dns</b><b>的主配檔案當中</b><b>,</b><b>可以用</b><b>”#”,”//”,</b><b>或者</b><b>”/*……*/”</b>

<b>    </b><b>但區域檔案當中</b><b>,</b><b>隻能以</b><b>”;”</b><b>來表示注釋</b><b>.   </b><b>切記</b><b>!!!!</b>

<b>補充:下面的的指令可以更新根區域配置檔案</b>

dig @a.root-servers.net ns &gt; /var/named/chroot/var/named/named.ca

繼續閱讀