DNS的配置步骤
RHEL4为实例
 
一、配置静态IP地址:
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.198.10.100
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
#/etc/init.d/network restart
#ifconfig eth0
//或者用netconfig配置命令
二、使用BIND构建DNS服务器
1BIND服务器安装    
RHEL4中包括了BIND服务相关的软件包
bind-libs-9.2.4-2
提供了实现域名解析功能必备的库文件 ,系统默认安装
bind-utils-9.2.4-2
提供了对DNS服务器的测试工具程序 ,系统默认安装
bind-9.2.4-2                安装文件位于第4张安装光盘中
# rpm -ivh bind-9.2.4-2.i386.rpm
BIND服务器的服务程序脚本名称是named,默认没有启动,需手动设置。
#rpm -ql bind | grep init.d
/etc/rc.c/init.d/named
#chkconfig --level 35 named on
#chkconfig --list named
三、构建缓存域名服务器
缓存域名服务器能够与互联网其它的DNS服务器进行网络连接,以查询DNS客户机的域名解析。主要目的是提高域名解析速度和节约互联网访问出口带宽。
使用前需要安装
软件包安装步骤
1、挂载第一张光盘 mount /mecdia/cdrom
2、安装caching-nameserver软件包   rpm –ivh caching-nameserver
具体配置步骤:
1、在named.conf文件中设置域
全局配置
options {
        directory "/var/named";
        dump-file "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
};
 
controls {
        inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
建立好缓存域名服务器后,以上的配置文件默认就会有,不需要再手动配置。
zone "." IN {                    (指定根域)
        type hint;
        file "named.ca";
        };
建立正向解析域                                                          
zone "cqyang.com" {               (指定本地域)
        type master;
        file "cqyang.com.zone";
        };
 
建立反向解析域
zone "10.168.192.in-addr.arpa" {          (指定反向域)
        type master;
        file "192.168.10.rev";
        };
配置完成后检查配置文件:
命令:# named-checkconf
2、建立正向区域文件    (该文件需要用vi编辑器手动建立在/var/named中,并写其内容)
(1)cd命令进入/var/named/并用ls查看一下如下图:
 
2)用cp命令把localhost.zone复制为cqyang.com.zone
命令:# cp localhost.zone cqyang.com.zone
(3)修改cqyang.com.zone刚才复制建立的文件 //红字内容为解释
#vi /var/named/cqyang.com.zone
$TTL    86400    //单位是秒
@               IN SOA  dns1.cqyang.com.       root (
                                        42              ; serial (d. adams) //序列号
                                        3H              ; refresh     // 3小时更新
                                        15M             ; retry     // 15分钟重试
                                        1W              ; expiry   //一周
                                        1D )            ; minimum   //一天
 
@               IN NS           dns1.cqyang.com.//@代表当前区域允cqyang.com.
dns2            IN NS           dns2.cqyang.com.//前面的@dns2可以写也省略
                IN MX   5       mail.cqyang.com. //添加邮件交换记录
dns1            IN A            192.168.10.100   //主域名服务器记录
dns2            IN A            192.168.10.101  //辅助域名服务器记录
www             IN A            192.168.10.100 //网站主机记录
 
bbs             IN    CNAME     www   //别名记录
配置完成后用# named-checkzone /var/named/cqyang.com /var/named/cqyang.com.zone命令检查文件是否配置正确。如图:
 
3、建立反向区域文件     (该文件需要用vi编辑器手动建立在/var/named中,并写其内容)
1)用cp命令复制正向区域文件为192.168.10.rev
命令:# cp cqyang.com.zone 192.168.10.rev
2)编辑192.168.10.rev文件
命令:vi /var/named/192.168.10.rev
$TTL    86400
@               IN SOA  dns1.cqyang.com.       root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
 
@               IN NS           dns1.cqyang.com.
dns2            IN NS           dns2.cqyang.com.
100             IN PTR          dns1.cqyang.com.
101             IN PTR          dns2.cqyang.com.
100             IN PTR          www.cqyang.com.
配置完成后用#named-checkzone /var/named/10.168.192.in-addr.arpa /var/named/192.168.10.rev命令检查文件是否配置正确。如图
 
5、重启named服务
#service named restart
最后用nslookup命令测试
 
四、从域名服务器 的配置  
(它做为主域名服务器的辅助和备份服务器,自身不建立区域文件,而是从主域名服务器中查询并保存,它可以与主域名服务器提供相同的域名解析服务,它需要在与主域名服务器不同的主机中构建)
1、在named.conf文件中设置域
建立正向解析域
zone "cqyang.com" {
        type slave;                             type设置为“slave”,表示当前DNS服务器是该域的从域名服务器类型
        file "slaves/cqyang.com.zone"     (从域名服务器中的区域文件应设置保存在  slaves”子目录中,区域文件将从主                                                       域名服务器中获取并保存在该目录中,为了便于管理,尽量使用与主服务器相                                                       同的区域文件名称)
        masters { 192.168.10.100; };        使用masters设置主域名服务器的IP地址
        };
建立反向解析域
zone "10.168.192.in-addr.arpa" {
        type slave;
        file " slaves/192.168.10.rev";
        masters { 192.168.10.100; };
        };
配置文件内容如下图所示:
 
2、检测配置文件和启动named服务
从域名服务器只需要检测配置文件的语法
# named-checkconf
启动从域名服务器
# service named start
查看区域文件
从服务器启动后将从主域名服务器中获得区域文件并保存在指定的目录中
# ls /var/named/slaves/
192.168.10.rev  cqyang.com.zone  如下图所示:
 
 
注意:(如果/var/named/slaves/目录中没有发现区域文件,说明从域名服务器和主域名服务器之间传输区域文件不成功,需要排错。)
六、DNS服务器的测试
1DNS测试原理
DNS服务器的主要测试方法
使用nslookupdighost等专用工具可以对DNS服务器进行较全面的测试
nslookup命令在LinuxWindows系统中都默认安装,是比较常用的测试工具
2、使用nslookup测试DNS服务器
进入nslookup命令交换环境
# nslookup
>
设置使用指定的DNS服务器
> server 192.168.10.100
测试localhost主机域名的正向解析
> localhost
测试localhost主机域名的反向解析
> 127.0.0.1
测试互联网中的域名解析
> www.cqyang.com
测试cqyang.com域中的A记录
> www.cqyang.com
测试cqyang.com域中的PTR记录
> 192.168.10.100
测试cqyang.com域中的CNAME记录
> www.cqyang.com
测试cqyang.com域中的NS记录
> set type=ns                          (设置域名查询类型为NS即域名记录)
> cqyang.com
测试cqyang.com域中的MX记录
> set type=mx                         (设置域名查询类型为MX即邮件交换记录)
> cqyang.com
设置进行A记录的测试
> set type=a                            (设置域名查询类型为A即地址记录)
>mail.cqyang.com
3、使用dig测试DNS服务器    dig只运行在liunx平台,是domain information grep的缩写)
1#dig --help
dig命令的格式
Usage:  dig [@global-server] [domain] [q-type] [q-class] {q-opt}
        {global-d-opt} host [@local-server] {local-d-opt}
        [ host [@local-server] {local-d-opt} [...]]
Use "dig -h" (or "dig -h | more") for complete list of options
 
2dig命令可以比nslookup命令显示更多的DNS服务器信息
# dig @192.168.0.5 cqyang.com     @后是被查询的DNS服务器的IP地址,cqyang.com域名做为命令参数)
; <<>> DiG 9.2.4 <<>> @192.168.0.5 cqyang.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51201
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;cqyang.com.                     IN      A
;; AUTHORITY SECTION:
cqyang.com.              86400   IN      SOA     ns1.cqyang.com. hostmaster.cqyang.com. 42 10800 900 604800 86400