Bind-04-zone區域數據文件解釋


前面我們自己配置了一個zone區域數據文件,但是里面的記錄不是太清楚,這章我們來研究下這些記錄的所用和區域數據文件的格式

1)DNS常用記錄類型

區域解析庫文件:每個域名都有一個自己的區域解析庫文件(zone文件),由一條條資源記錄來定義具體指向

SOA記錄:起始授權記錄,一個區域解析庫只能有一個SOA記錄,而且必須為第一條。打個比方,建了個海島,需要對外宣布世界上多了一個海島,這個事情就是SOA在做    

NS記錄:域名服務記錄,一個區域解析庫可以有多個NS記錄,其中一個為主服務器。結合上面的例子,NS記錄可以理解為用來宣布島主是誰

A記錄:地址記錄,從域名解析為IP的記錄

AAAA:IPv6的地址記錄

PRT:反向解析記錄,從IP解析為域名

MX:郵件交換記錄。我們平時發郵件都是直接發到qq.com、163.com等域名上,但是這些域名肯定是有多台服務器的,MX記錄就是指明了哪個服務器會負責郵件。MX服務可以存在多個,由優先級來區分先后,0-99,數字越小優先級越高

CNAME記錄:給一個地址設置一個別名

在DNS服務器中每個域都要通過zone文件保存信息,文件語法格式是標准化的,一個典型配置如下:

$TTL    1D
@    IN    SOA    @ repo.com(
                  2        ;
             604800        ; 
              86400        ; 
            2419200        ; 
             604800 )      ; 
           IN  NS  ns
ns         IN  A   192.168.56.6
www        IN  A   192.168.56.6

1,首先在區域解析庫zone文件的開頭定義SOA記錄,定義格式:

@    IN    SOA    @ repo.com(
                  2        ; #serial序列號,標識是第幾個版本
             604800        ; #refresh刷新時間
              86400        ; #retry重試時間
            2419200        ; #expire過期時間
             604800 )      ;#否定回答時間

2,定義當前區域的NS記錄,定義格式示例:

         IN  NS  ns              #NS記錄
ns IN A 192.168.56.6 #NS記錄所引用的A記錄

3,MX記錄定義格式示例(多了一個優先級):

@  IN MX 10 mx1.repo.com
@  IN MX 20 mx1.repo.com

4,A記錄記錄定義格式示例:

www        IN  A   192.168.56.6   #FQDN自動補齊:在區域數據文件中,沒有使用點號"."結尾的,在實際使用的時候都會自動補上域名,使其變為 FQDN。例如:上面文件中的 www,會自動補全為 www.repo.com.

5,PTR記錄(IP反過來寫,加特定后綴):

6.56.168.192.in-addr.arpa  IN PTR  www.repo.com.

6,CNAME記錄定義格式示例:

web.repo.com  IN CNAME www.repo.com

 

2)兩種不同寫法的zone區域數據文件:

FQDN的寫法:

$TTL 600
@               IN  SOA     master.abc.com. woodie.abc.com. ( 2017022802 3H 15M 1W 1D )
@               IN  NS      master.abc.com.
master.abc.com. IN  A       192.168.80.110
@               IN  MX  10  www.abc.com.
www.abc.com.    IN  A       192.168.80.121
bbs.abc.com.    IN  CNAME   www.abc.com.
ftp.abc.com.    IN  CNAME   www.abc.com.
linux.abc.com.  IN  CNAME   www.abc.com.
slave.abc.com.  IN  A       192.168.80.120
122.abc.com.    IN  A       192.168.80.122

簡寫:

$TTL 600
@               IN  SOA     master.abc.com. woodie.abc.com.( 2017022802 3H 15M 1W 1D )
@               IN  NS      master
master          IN  A       192.168.80.110
@               IN  MX  10  www
www             IN  A       192.168.80.121
bbs             IN  CNAME   www
ftp             IN  CNAME   www
linux           IN  CNAME   www
slave           IN  A       192.168.80.120
122             IN  A       192.168.80.122

簡寫不太容易看明白,而FQDN的寫法,又太啰嗦,而且要注意.(點號),所以我個人偏好喜歡這樣的寫法。

$TTL 600
@               IN  SOA     master.abc.com. woodie.abc.com.( 2017022802 3H 15M 1W 1D )
@               IN  NS      master.abc.com.
master          IN  A       192.168.80.110
@               IN  MX  10  www.abc.com.
www             IN  A       192.168.80.121
bbs             IN  CNAME   www.abc.com.
ftp             IN  CNAME   www.abc.com.
linux           IN  CNAME   www.abc.com.
slave           IN  A       192.168.80.120
122             IN  A       192.168.80.122

其中soa記錄的字段解釋:

master.abc.com. woodie.abc.com. :這里是SOA的固定格式,這里有兩部分內容,中間用空格隔開,前半部分:Zone的主 DNS 服務器的主機名,后半部分:管理Zone的負責人的電子郵件地址。在該電子郵件名稱中使用英文句點 (.) 代替“at”符號 (@)。
$TTL  指令:該zone的緩存時間
serial:數值Serial代表這個Zone的序列號,序號越大表明資料越新,主要用在 master / slave 同步使用,每次Zone文件更新,都需要修改Serial數值。RFC1912 2.2建議的格式為YYYYMMDDnn 其中nn為修訂號,,但序號的最大值不能大於2的32次方,即4294967296
refresh:數值Refresh設置Slave DNS多長時間與Master Server進行Serial核對。目前Bind的notify參數可設置每次Master DNS更新都會主動通知Slave DNS更新,Refresh參數主要用於notify參數關閉時;
retry:數值Retry設置當Slave DNS試圖獲取Master DNS Serial時,如果Master DNS未響應,多長時間重新進行檢查;
expire:如果master/slave在1周內都鏈接失敗,slave將不再嘗試鏈接master,但注意,此時slave還會繼續提供解析服務,只是數據不在更新。
Minimum:在 8.2版本之前,由於沒有獨立的 $TTL 指令,所以通過 SOA 最后一個字段來實現。但由於 BIND 8.2 后出現了 $TTL  指令,該部分功能就不再由 SOA 的最后一個字段來負責,由 $TTL 全權負責,SOA 的最后一個字段專門負責 negative answer ttl(negative caching)

名字解釋:

經常提到RR是什么意思呢?RR是Resource Record的縮寫,包括A, NS, SOA, CNAME, MX.

注:

1,TTL可以從全局繼承,不用每個記錄都定義具體的TTL

2,@符號可以表示當前區域的名稱,所以真需要寫@的時候由.來代替。如最后一行“www   IN  A  192.168.56.6” 代表www.repo.com是解析到192.168.56.6這個地址的

3,  相鄰的兩個記錄,如果NAME相同那么后面一條的NAME可以省略,如:

www                  IN A 192.168.56.6
                     IN A 192.168.56.7  #沒寫name
bbs                  IN A 192.168.56.100

4, 對於正向區域來說,如果MX、NS等類型的記錄VALUE為一個FQDN,那么此FQDN應該有一個A記錄,例如上面的NS記錄:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM