rhel5下的DNS伺服器架設
一、 架設
DNS前的準備:
Linux下的DNS伺服器是通過bind這個軟體來實現的,
bind包括:
bind-9.3.6-4.P1.el5.i386.rpm bind的主程序文件
bind-chroot-9.3.6-4.P1.el5.i386.rpm 改變DNS根目錄的文件(建議安裝)
caching-nameserver-9.3.6-4.P1.el5.i386.rpm 緩存DNS的配置文件(可被用作DNS主配置文件的樣本)
bind-devel-9.3.6-4.P1.el5.i386.rpm DNS開發工具
bind-utils-9.3.6-4.P1.el5.i386.rpm
DNS測試工具system-config-bind-4.0.3-4.el5.noarch.rpm DNS的圖形界面配置工具
將系統安裝盤放入光碟機,確保光碟Server目錄下有以上幾個文件:
[root@spider Server]# ls bind*
bind-9.3.6-4.P1.el5.i386.rpm
bind-chroot-9.3.6-4.P1.el5.i386.rpm
bind-libs-9.3.6-4.P1.el5.i386.rpm
bind-sdb-9.3.6-4.P1.el5.i386.rpm
bind-devel-9.3.6-4.P1.el5.i386.rpm
bind-utils-9.3.6-4.P1.el5.i386.rpm
bind-libbind-devel-9.3.6-4.P1.el5.i386.rpm
二、架設DNS的步驟:
1、進入Server目錄,使用
rpm安裝紅色字體標註的三個包即可:[root@spider Server]# rpm -ivh bind-9.3.6-4.P1.el5.i386.rpm
Preparing... ########################################### [100%]
1:bind ########################################### [100%]
[root@spider Server]#
[root@spider Server]# rpm -ivh bind-chroot-9.3.6-4.P1.el5.i386.rpm
Preparing... ########################################### [100%]
1:bind-chroot ########################################### [100%]
[root@spider Server]#
[root@spider Server]# rpm -ivh caching-nameserver-9.3.6-4.P1.el5.i386.rpm
Preparing... ########################################### [100%]
1:caching-nameserver ########################################### [100%]
[root@spider Server]#
2、進入
DNS的配置文件所在目錄[root@spider Server]# cd /var/named/chroot/etc/
[root@spider etc]# pwd
/var/named/chroot/etc
[root@spider etc]# ls
localtime named.caching-nameserver.conf named.rfc1912.zones rndc.key
3、
bind的主配置文件named.conf默認不存在,但有緩存DNS的樣本,可複製為主配文件.然後修改紅色字體部分的localhost為any
[root@spider etc]# cp -p named.caching-nameserver.conf named.conf
[root@spider etc]# vi named.conf
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
// Those options should be used carefully because they disable port
// randomization
// query-source port 53;
// query-source-v6 port 53;
allow-query { any
; };allow-query-cache { localhost; };
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones";
};
4、修改DNS
的另外一個配置文件,此文件定義了區域的名稱和區域配置文件的位置,在此文件中添加以下幾行,然後保存退出:[root@spider etc]# vi named.rfc1912.zones
zone "abc.com" IN {
type master;
file "abc.com.zone";
allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.rev";
allow-update { none; };
};
假設本機的域名為abc.com,此處定義了正向解析區域abc.com,此正解區域的文件名為
abc.com.zone.反解區域為1.168.192.in-addr.arpa,文件名為192.168.1.rev.此處定義的正反解區域文件abc.com.zone、192.168.1.rev需要在
/var/named/chroot/var/named/中創建,否則DNS將無法成功啟動.註:192.168.1.53為本機的IP地址,顧名思義,1.168.192.in-addr.arpa可理解為反寫的
IP地址.
5、創建named.rfc1912.zones 中定義好的正解文件
[root@spider ~]# cd /var/named/chroot/var/named/
[root@spider named]# ls
data
localhost.zone named.ca named.local slaveslocaldomain.zone named.broadcast named.ip6.local named.zero
[root@spider named]#
Localdomain.zone為安裝DNS后默認的正解區域文件,可作為abc.com.zone的樣本.把localdomain.zone複製為當前目錄下的
abc.com.zone,然後編輯它[root@spider named]# cp -p localdomain.zone abc.com.zone
[root@spider named]#
[root@spider named]# vi abc.com.zone
$TTL 86400
@ IN SOA localhost root (
42 ; serial (d.
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS localhost
localhost IN A 127.0.0.1
把上面的紅色字體標註的localhost改為abc.com,在最后添加要解析的域名和IP
改成后的文件應該是這樣:
$TTL 86400
@ IN SOA abc.com root (
42 ; serial (d.
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS abc.com
localhost
IN A 127.0.0.1www IN A 192.168.1.53
注意格式要整齊,建議用tab鍵,不要漏掉空格
6、創建named.rfc1912.zones
中定義好的反解文件當前目錄下的named.local為安裝DNS后默認的反解區域文件,可作為192.168.1.rev的樣本.把named.loca複製為當前目錄下的192.168.1.rev
,然後編輯它
[root@spider named]# cp -p named.local 192.168.1.rev
[root@spider named]# vi 192.168.1.rev
$TTL 86400
@ IN SOA localhost. root.localhost. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS localhost.
1 IN PTR localhost.
修改localhost為abc.com,注意後面的小數點不要動,在最后增加反向解析的IP和主機名:
修改後的文件應該是這樣:
$TTL
86400@ IN SOA abc.com. root.abc.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS abc.com.
1 IN PTR localhost.
53 IN PTR www.abc.com.
53 IN PTR ftp.abc.com.
OK,現在可以啟動named服務了
[root@spider named]# service named start
Starting named: [ OK ]
[root@spider named]#
三、
測試DNS伺服器
1、 在Linux上測試:(需指定本機的首選DNS為
192.168.1.53)[root@spider etc]# host www.abc.com
www.abc.com has address 192.168.1.53
[root@spider etc]# host 192.168.1.53
53.1.168.192.in-addr.arpa domain name pointer ftp.abc.com.
53.1.168.192.in-addr.arpa domain name pointer www.abc.com.
[root@spider etc]#
2、
在windows客戶端下做測試
本文出自 「紅楓」 博客,請務必保留此出處http://redmaple34.blog.51cto.com/2621361/554766
[火星人 ] rhel5下的DNS伺服器架設已經有432次圍觀