Linux的DNS服務基礎概念
1、遞歸
遞歸的意思就是 客戶端只需要問一次,如果上級DNS服務器不知道,那麽上級DNS服務器會自己去找自己的DNS服務器。
2、叠代
叠代的意思就是客戶端需要自己一個DNS服務器 一個DNS服務器自己去問。
DNS名稱解析方式
正向解析 輸入域名找IP
方向解析 輸入IP找域名
主備DNS服務器
備DNS服務器的DNS記錄需要不停的跟主DNS服務器數據庫進行同步。
對DNS記錄的改變只能在主DNS服務器上。
“復制”操作的實施方式:
序列號:也是數據庫的版本號,每修改一次,版本號就要改變一次(遞增)。主服務器可以推送更新內容給從服務器。
刷新時間間隔:refresh,從服務器每多久到主服務器檢查序列號更新狀況。
重試時間間隔:retry,從服務器與主服務器通信失敗後,再次嘗試通信的時間間隔。重試時間間隔要小於刷新時間間隔
過期時長:從服務器判斷主服務器失效的時間間隔。判斷主服務器失效後,從服務器停止提供服務。
同步方式:
全量同步:axfr
增量同步:ixfr
區域數據庫文件
資源記錄:Resource Record,簡稱RR
資源分類:A AAAA PTR SOA NS CNAME MX
SOA:Start of Authority 起始授權記錄;一個區域解析庫有且只能有一個SOA記錄,而且必須在第一條。
NS:Name Service 域名服務器記錄,一個區域解析庫可以有多個
A:Address 地址記錄。FQNDàIPV4
AAAA:IPV6地址記錄
CNAME:別名記錄,Canonical Name
PTR:pointer IPàFQND 用於反向解析
MX:mail eXchanger 郵件交換器 可以有多個
優先級:0~99 數字越小優先級越高
資源記錄的定義格式
name [TTL] IN RR_TYPE value
SOA:
name:當前區域的名字;例如”magedu.com.”最後一個點不能省略。或者”2.3.4.in-addr.arpa.”
value:有多個部分。1、當前區域的區域名稱(也可以使用主DNS服務器名稱) 2、當前區域管理員的郵箱地址,但地址中不能使用
SOA例子: magedu.com. 86400 IN SOA megedu.com. admin.magedu.com. (2017010801;serial
2H;refresh
10M;retry
1W;expire 一周
1D;negative answer ttl) 分號後面是說明
NS:
name:當前區域的區域名字
value:當前區域的某DNS服務器的名字,例如ns.megedu.com.
NS例子: magedu.com. 86400 IN NS ns1.magedu.com.
MX:
name:當前區域的區域名字
value:當前區域某郵件交換器的主機名
MS例子:magedu.com. IN MX 10 mx1.magedu.com.
A:
name:某FQDN
Value:某個IPV4地址
A例子: www.magedu.com. IN A 1.1.1.1
www.magedu.com. IN A 1.1.1.2
BBS.magedu.com. IN A 1.1.1.1
PTR:
name:IP地址,有特定格式,IP反過來寫,而且加特定後綴。正常1.2.3.4的地址name的寫法是4.3.2.1.in-addr.arpa.
value:FQND
PTR例子:4.3.2.1.in-addr.arpa. IN PTR www.megedu.com
CNAME:
name:別名,FQND格式的別名
value:FQDN的正式名字
CNAME例子:web.megedu.com. IN CNAME www.magedu.com.
註意:1、TTL可以從全局繼承
2、@表示當前區域的名稱
3、相鄰的兩條記錄其name相同時,後面的可以省略。(垂直下方的name)
4、MX NS等記錄的value為一個FQND時,該FQND需要有一個A記錄。
Linux的DNS服務基礎概念