(一)跟我一起玩Linux網絡服務:DNS服務——BIND(/etc/named.conf、/var/named)設置實現和解釋


2015年3月24更新 添加了要加的配置域名解析器(否則會找不到域名)
 
 
一、創建該實驗的的模型
 
配置完gate虛擬機的兩張網卡后,就啟動gate的轉發
[root@localhost root]# vi /etc/sysctl.conf
...
net.ipv4.ip_forward = 1
...
 
修改成以上的形式,net.ipv4.ip_forward=1是指表示轉發,0表示不轉發
 
vm1和vm2要添加到達對方的路由
vm1上:
# route add -net 192.168.128.0/24 gw 10.10.10.8
 
vm2上:
# route add -net 10.10.10.0/24 gw 192.168.128.8
 
通過ping命令互相ping通
 
 
二、開始BIND的設置:
 
1、打開/etc/name.conf
[root@localhost root]# vi /etc/named.conf

   
添加上了后面一段
zone "gr.org" IN {                    //指定一個域名為gr.org的正向區域
        type master;
        file "gr.org.db";                //指定文件名是gr.org.db
};
 
 
區域Type:
master: 主域服務
slave: 從域服務
stub: 只復制主域的NS記錄,屬於BIND特有功能.
hint: 設定初始化設置根域服務器所用的參數.
forward: 域轉發設置
2、添加域名解析文件
添加一個gr.org的區域(zone),類型為主機(master,還有兩種是slave和hint)
文件就在option定義的目錄下/var/named
在該目錄下創建gr.org.db文件
創建該文件,並插入以下的內容
[root@localhost root]# vi /var/named/gr.org.db
 
 
TTL
time to live 生存時間,默認為秒
@

表示相應的域名,表示一個域名定義的開始
這里代表gr.org

IN

表示后面的數據使用的是INTERNET標准

SOA

表示授權開始

ns.gr.org.

該域的主域名服務器

root.gr.org.

管理員郵件地址(這里的郵件地址中的用.來代替常見的郵件地址的@.)

20150317

serial(d. adams)表示配置文件的修改版本,格式是年月日當日修改的次數,每次修改時都應該修改這個數字,

要不然所做修改的不會更新到網上的其它DNS服務器的數據庫上,即你所做的更新很可能對於不以你你的所配置

的DNS服務器數據庫上,即你所做的更新很可能對於不以你的所配置的DNS服務器為DNS服務器的客戶端來說就

不會反映出你的更新,也就對他們來說你更新是沒意義的

6H

refresh,定義以單位(M分,H時,W周,默認是秒即不帶單位)的刷新頻率,即規定從域名服務器多長時間查

詢一個主服務器,以服務器的數據的是最新的

30M

retry,以30分鍾的時間間隔重試,即當從服務器試圖在主服務器上查詢更新時,而連接失敗了,則這個值規定

了從服務器多長時間后重試

1W

expire,規定從服務器在向主服務器更新失敗之后清除記錄的時間

15M

minimum TTL,規定緩沖服務器不能與主服務器聯系上的清除記錄時間

NS

net server,表示該主機是域名服務器

A

address,定義了一條A記錄,表示該主機名到IP地址的對應記錄

MX

mail exchange,定義一條郵件記錄

CNAME

定義了對應主機的一個別名

PTR

指一條反向域名解析PTR記錄,類似A記錄(PTR指針記錄由IP地址提供商提供)

 (圖表2016-11-02更新)
{
配置域名解析器
#cat > /etc/resolv.conf
nameserver 10.10.10.10
DNS客戶機配置文件,用於設置DNS服務器的IP地址及DNS域名,還包含了主機的域名搜索順序。該文件是由域名解析器(resolver,一個根據主機名解析IP地址的庫)使用的配置文件。它的格式很簡單,每行以一個關鍵字開頭,后接一個或多個由空格隔開的參數。
resolv.conf的關鍵字主要有四個,分別是:
nameserver //定義DNS服務器的IP地址
domain //定義本地域名
search //定義域名的搜索列表
sortlist //對返回的域名進行排序
此處是2015/3/24完善的}
 
3、測試設置是否完成
設置完成后,可用cat命令查看是否設置完整,確認后
使用命令
 
# service named start
啟動服務,提示成功啟動即可使用下面的命令來查看是否能連接到本機設置的DNS
{
如果要開機啟動就是用下面的命令
chkconfig named on
此處是2015/3/24完善的}
(1)測試vm1上能否查詢到該域名
# nslookup -sil www.gr.org
如果出現
**  server can't find www.gr.org: SERVFAIL
可以查看/etc/named.conf和/var/named/下的相關文件,這里是gr.org.db是否設置出錯,一個地方出錯都不會執行
 
(2)測試vm2上能否查詢到該域名
成功之后,可以在vm2上查看是否存在
[root@localhost root]#  nslookup -sil www.gr.org
;; connection timed out; no servers could be reached
出現這個問題,很大程度上是由於gate機器上已經關掉該端口了,所以就使用關掉防火牆的簡單方法開啟該端口(53)。
在gate虛擬機上
# service iptables stop
 
(3)測試Windows上能否查詢到該域名
使用Windows系統測試是否存在
先試試ping www.gr.org
看可不可以ping的通,一般可以的(應為我們也有這個網址被用了),那么如何判斷是否是連我們的vm1的?
那就要斷掉本地網絡再試試ping命令
發現ping www.gr.org是不通的,而ping 10.10.10.10是通的,原因是沒有設置DNS,設置方法如下:
1.關閉本地網絡(以太網)
2.把vm1的DNS改為vm1的ip
再試試
>ping www.gr.org
 
4、在上面的基礎上進行添加反向域名解析
(1)下面就要我們加上反向域名解析域區
# vi /etc/named.conf 
添加以下的語句(內容)
zone "10.10.10.in-addr.arpa" IN{                    //定義一個ip是10.10.10.*的反向域區
        type master;
        file "10.10.10.db";
};
注:如果在file下面加上一句allow-transfer {192.168.6.4;};
就是說指定從服務器,從服務器上面就要加上主服務器的ip即加上
master {192.168.6.3;};
 
(2)添加反向域名解析文件和配置
再用命令# vi /var/named/10.10.10.db
添加如下的配置信息
$TTL 86400
@       IN      SOA     ns.gr.org       root.gr.org.(
                20150317  6H  30M  1W  15M)
          IN      NS      ns.gr.org.
10      IN      PTR     ns.gr.org.
10      IN      PTR     www.gr.org.
11      IN      PTR     mail.gr.org.
 
注:
PTR        指一條反向域名解析PTR記錄,類似A記錄(PTR指針記錄由IP地址提供商提供)
 
注:這里剛好是對稱的,不容易看出,其實就比如192.168.133.0/24(就是用133.168.192的特殊域),后面的10,11就類似於用192.168.133.0/24的來表示就是10.133.168.192.in-addr.arpa(也就是192.168.133.10),這里是10.10.10.10.in-addr.arpa和11.10.10.10.in-addr.arpa
 
(3)測試配置是否完成
使用命令# rndc reload重啟域名服務
通過# nslookup -sil 10.10.10.10
(在vm2也可以看到一樣的信息)
就可以看到了信息
Server:         10.10.10.10
Address:        10.10.10.10#53

10.10.10.10.in-addr.arpa        name = www.gr.org.
10.10.10.10.in-addr.arpa        name = ns.gr.org.
有兩條,證明我們的反向域名解析也配置好了
 
注:有什么意見或建議可以在評論區回復


免責聲明!

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



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