DNS服務器在網絡中的應用vim
DNS服務工做原理:緩存
DNS就是將域名與ip地址相互解析的過程,從域名解析成地址成爲正向區域,90%都使用此區域,還有一少部分採用反向區域,地址解析成域名。服務器
域名結構:網絡
主機域名通常結構爲:主機名、一級域名、二級域名、三級域名。yii
例: ide
一級域名: .com(表示商業機構) .cn(表示國家 中國縮寫) .net(表示網絡服務機構) .edu(表示教育機構)測試
二級域名: baidu.com 51cto.com sina.comspa
三級域名: blog.51cto.com.net
主機名 : yuanye1128.blog.51cto.com 3d
DNS查詢方式:
1、遞歸查詢:通常客戶機和服務器之間屬於遞歸查詢,即當客戶機向DNS服務器發出請求後,若DNS服務器本地不能解析,則會向另外的DNS服務器發出請求,獲得結果後轉交給客戶機。
2、迭代查詢:通常DNS服務器之間屬於迭代查詢,如:若DNS2不能響應DNS1的請求,則它會將DNS3的ip給DNS2,以便其再向DNS3發出請求。
DNS服務器分類:
緩存DNS服務器、主DNS服務器、輔助DNS服務器
DNS軟件:
在Linux下最經常使用的DNS軟件就是bind了
案例一:域名解析
要求:客戶機能解析出abc.com域中主機www、ftp、mail的DNS
DNS服務器:192.168.1.101
www:1.1.1.1
ftp:2.2.2.2
mail:3.3.3.3
拓撲圖:
步驟:
掛載光驅:
[root@localhost ~]# mount /dev/cdrom /media/cdrom/
安裝bind、bind-chroot、bind-utils
[root@localhost ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils
開啓DNS服務器
查看DNS根目錄(var/named/chroot)下的配置文件夾etc,發現多了不少配置文件
編輯配置文件named.conf
將11行和17行改成any,保存退出
而後編輯區域聲明文件named.rfc1912.zones
咱們能夠模仿19-23行,添加一個區域25-29行,保存退出
在DNS根目錄var/named/chroot/vat/named中還添加一個區域文件abc.com.zone
將樣例文件拷貝過去修改一下便可,而後編輯該文件
按要求修更名稱解析庫文件
測試:
把本身看作客戶端,修改DNS
使用nslookup查看
使用dig查看mx
[root@localhost named]# dig -t mx abc.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> -t mx abc.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64854
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; QUESTION SECTION:
;abc.com.INMX
;; ANSWER SECTION:
abc.com.86400INMX10 mail.abc.com.
;; AUTHORITY SECTION:
abc.com.86400INNSns.abc.com.
;; ADDITIONAL SECTION:
mail.abc.com.86400INA3.3.3.3
ns.abc.com.86400INA182.168.1.101
; Query time: 0 msec
;; SERVER: 192.168.1.101#53(192.168.1.101)
;; WHEN: Sun May 4 03:43:00 2014
;; MSG SIZE rcvd: 95
由圖中能夠看出咱們的實驗已經完成。
案例二:DNS服務器主輔同步
要求:
主DNS cent os 6 192.168.1.100
輔助 cent os 6 192.168.1.101
主DNS服務器:
1.安裝軟件
2.開啓DNS服務
3.配置文件named.conf和區域聲明文件named.rfc1912.zones
4.在var/named/chroot/vat/named目錄中,把named.localhost拷貝到該目錄中爲abc.com.zone並配置該文件
步驟與案例一中相同
輔助DNS服務器:
首先安裝軟件包、開啓DNS服務器,編輯named.conf,和案例一步驟相同,若是缺乏鑰匙文件能夠用rndc -confgen -a 產生鑰匙。
編輯區域聲明文件named.rfc1912.zones 新建一個域abc.com
保存後從新加載配置文件
[root@localhost etc]# rndc reload
查看日誌主服務器已經將數據傳遞到輔助服務器上
同步過來的數據
案例三:DNS服務器受權轉發
要求:根域a.com有兩個子域,分別爲bi.a.com和sh.a.com,父域爲a.com,其中父域DNS受權管理子域sh.a.com,www主機ip地址分別爲1.1.1.1 2.2.2.2 3.3.3.3 子域sh.a.com可以訪問其餘兩個域。
拓撲圖:
步驟:
1.安裝軟件
2.開啓DNS服務
3.配置文件named.conf
都與案例一相同
編輯named.rfc1912.zones,添加兩個域
產生相應文件並給父域受權
[root@localhost named]# cp -p named.localhost a.com.zone
[root@localhost named]# vim a.com.zone
相同方法給子域受權
[root@localhost named]# cp -p named.localhost bj.a.com.zone
[root@localhost named]# vim bj.a.com.zone
編輯完成後從新加載區域
[root@localhost named]# rndc reload
server reload successful 表示加載成功
下面開始作子域的DNS
安裝同上,編輯comed.conf文件:
修改配置文件,注意將20、21、22和最後一行註釋掉
[root@localhost chroot]# cd etc/
[root@localhost etc]# vim named.conf
而後編輯named.rfc1912.zones
新建一個域25-29行
[root@localhost etc]# vim named.rfc1912.zones
保存退出後,到var/named 目錄中,吧named.localhost拷貝成sh.a.com.zone,並編輯
[root@localhost etc]# cd /var/named/
[root@localhost named]# cp -p named.localhost sh.a.com.zone
[root@localhost named]# vim sh.a.com.zone
保存退出後從新加載區域
[root@localhost named]# rndc reload
server reload successful
測試:
受權:a.com中主機能夠解析出其餘主機
轉發:在子域sh.a.com上也能夠解析出其餘主機
案例四:DNS輪詢
要求:baidu.com的其中一個DNS服務器管理某區域,該區域www主機ip爲1.1.1.1和2.2.2.2,要求該區域主機訪問baidu.com時,經過輪詢方式,將1.1.1.1和2.2.2.2輪流配發給主機。
拓撲圖:
步驟:
安裝DNS軟件包與上面案例相同,配置named.conf也同案例一
編輯named.rfc1912.zones 增長一個域
[root@localhost etc]# vim named.rfc1912.zones
而後到var/named目錄下,拷貝namedlocalhost爲baidu.com.zone,並編輯
[root@localhost etc]# cd ../var/named/
[root@localhost named]# cp -p named.localhost baidu.com.zone
[root@localhost named]# vim baidu.com.zone
測試:
兩次解析的地址順序不一樣