標籤:dns
1.相關名稱解釋
FQDN是全稱網域名稱,是網域名稱和對應此域內某台主機名稱所構成。
DNS伺服器常用工作方式有遞迴(返回IP),迭代(返回下一級NSip地址),相對於區域網路使用者,DNS伺服器工作方式是遞迴,但是相對於根域和頂級域是迭代。
權威答案:在網域名稱解析中DNS伺服器返回本管理域內的主機的IP(解析結果為:flags: qr aa rd ra)
非權威答案:在網域名稱解析中DNS伺服器遞迴擷取到目標主機的ip(解析結果為:flags: qr rd ra)
DNS監聽連接埠是53/UDP和53/TCP,其中主從伺服器進列區域傳送時,使用TCP,進行網域名稱遞迴解析時使用UDP
假若不提供遞迴解析時,可以不需要添加根地區
queryperf提供DNS解析壓力測試
地區傳送類型:
完全地區傳送
增量區域傳輸
地區類型:
主地區:master
從地區:slave
提示地區:hint
轉寄地區:forward
acl用於定義全域訪問變數
acl innet {
192.168.0.0/24;
}
2.DNS程式結構
安裝DNS需要安裝bind、bind-utils、bind-libs三個軟體包
/etc/named.conf:BIND進程工作屬性,地區定義(注釋符號為“#”)
地區類型:主地區、從地區、提示地區、轉寄地區
/var/named/ :定義地區資料檔案(注釋符號為“;”)
/etc/rndc.key:rndc(Remote Name Domain Controller)
密鑰檔案
配置資訊:/etc/rndc.conf
service named reload 會重新載入上訴檔案
rndc-confgen >/etc/rndc.conf依據其中的提示,並刪除系統預設的/etc/rndc.key,即可實現遠端控制
rndc status
3.DNS常用命令
dig與nslookup命令
dig -t A|SOA FQDN
dig -x IP
dig + trace FQDN
dig -t axfr DOMAIN 得到地區所有的資訊
nslookup FQDN
或者:
nslookup
server IP(設定DNS伺服器)
SET q=A|SOA(設定查詢方式)
FQDN(查詢的全稱網域名稱)
4.DNS伺服器架構
DNS伺服器:
主從DNS伺服器(從DNS伺服器扮演著相同的網域名稱解析工作,但是當主伺服器宕機後,從DNS伺服器回立刻宕機)
主從複製中:1.從伺服器zone中type:slave,此外還需要添加master { ;};
2.主伺服器/var/named中地區資料檔案需要新增從地區的NS名,即有兩條NS記錄,分別是主和從伺服器
緩衝器
轉寄站
5.zone地區檔案配置
資源記錄格式:
NAME [TTL] IN RRT VALUE
NAME:可以為ZONE NAME和FQDN,其中FQDN全寫的時候一定需要添加“.”,FQDN簡寫時可以省略ZONE NAME部分,而且一定不能添加“.”,
資源記錄類型(PRT):
SOA(Start of Authority)(第一條記錄,必須存在,正向反向都要有,而且此處ZONE NAME名字必須同/etc/named.conf中zone配置的名字,常用@表示)
ZONE NAME TTL IN SOA FQDN ADMIN_MAILBOX(
serial number
refresh
retry
expire
na ttl)
時間單位,M(分鐘),H(小時),D(天) ,W(周),預設單位秒
郵箱格式:[email protected] 寫為admin.time.com.cn.
@ 表示地區名(ZONE NAME)為name.conf中所配置zone名字
NS(Name Server):ZONE NAME --> FQDN(一般NS類型後有A類型,可以有主從DNS,正向反向地區都必須存在)
ZONE NAME TTL IN NS VALUE
time.com. 600 IN NS ns.time.com.cn
ns.time.com.cn 600 IN A 192.168.0.123
MX(Mail exchanger):ZONE NAME -->FQDN(一般MX類型後有A類型,可以有多條記錄,使用pri進行選擇,僅能夠定義在正向地區中)
ZONE NAME TTL IN MX pri VALUE
優先順序(pri):0-99,數字越小層級越高
time.com.cn. 600 IN MX 10 mail.time.com.cn
mail.time.com.cn. 600 IN A 192.168.0.123
A(address):FQDN -->IPV4(僅能夠定義在正向地區中)
FQDN TTL IN A VALUE
www.time.com.cn. 600 IN A 192.168.0.123
AAAA:FQDN-->IPV4
PTR(pointer):IP-->FQDN(ip反解)
CNAME:FQDN-->FQDN(別名)
6.named.conf檔案配置
/etc/named.conf:
結構為:(“{”前與後都需要有空格,“}”後需要有“;”,前面需要空格,每個語句結束需要“;”,如果僅僅是雙冒號內,不用“;”,只需要語句結束後添加“;”)
option {
directory "/var/named";(必須要有)
};
zone ‘.’ in {
type master|slave|hint;
file "....";
allow-transfer { none; };(允許哪些可以進列區域傳送,可以配置IP,net)
};
7.子域授權
當子域有主從DNS伺服器時,父域需要配置兩條NS和兩條A記錄。
當父域已經配置了子域時,並且子域已經配置後,可以在父域可以解析子域內容,但是子域無法解析父域,當需要子域需要解析父域時,需要添加forward字
forward only:非本地區內的主機都會轉寄,若無法解析,將停止解析
forward first:非本地區內的主機都會轉寄,若無法解析,將自己解析
若forward配置在option內,則非本地區內的主機都會轉寄,若forward配置在zone地區內,則非本地區內中的zone地區將會轉寄
8.視圖
視圖用於實現智能DNS,當配置view時,需要將全部zone配置在view內,option配置在view外,且放在第一行,match-clients用於配置來源用戶端。
DLZ配合BIND實現mysql支撐的智能DNS。
8.錯誤彙集
報錯:dumping master file: slaves/tmp-mHavE2krzW: open: file not found
1.主要是zone名字寫錯,將in寫成了ip :zone "0.168.192.ip-addr.arpa" IN =》 zone "0.168.192.in-addr.arpa" IN
2.file 對應的檔案名稱書寫有錯,多加了空格:file " slaves/time.com.cn.zone;"; =》file "slaves/time.com.cn.zone;";
DNS知識概要