BIND主要配置文件  典型DNS配置  辅助DNS服务器配置  缓存DNS服务器   DNS子域授权  其它 名称查询过程 故障排除  rndc配置 实训

BIND主要相关配置文件        返回

共有两类文件,一是主配置文件,二是区文件

主配置文件:/etc/named.conf
 

根域服务器指向文件:/var/named/named.ca
本地正向解析区文件:/var/named/localhost.zone
本地反向解析区文件:/var/named/named.local
域正向解析区文件:/var/named/正向解析区文件名
域反向解析区文件:/var/named/反向解析区文件名

新建域net03.org的步骤        返回

说明:在以下步骤中,请注意红色显示部分,域服务器名称为ns.net03.org,IP地址是192.168.6.10。aaa.net03.org,bbb.net03.org为域内的两台主机,IP地址分别为192.168.6.110,192.168.6.119

1. 在主配置文件/etc/named.conf中添加正向区域、反向区域的说明,如下:

zone "net03.org" {
type master;
file "named.net03.org";
};

zone "6.168.192.in-addr.arpa" {
type master;
file "named.192.168.6";
};

2. 新建域正向解析区文件/var/named/chroot/var/named/正向解析区文件(或从本地正向解析文件localhost.zone复制成新建域正向解析区文件,再进行修改),并添加以下内容:

$TTL 86400
@ IN SOA ns.net03.org. root.ns.net03.org. (
2004051501
28800
14400
3600000
86400 )

@ IN NS ns.net03.org.
ns IN A 192.168.6.10
aaa IN A 192.168.6.110

mmm IN A 192.168.6.113

net03.org. IN MX 10 mmm.net03.org.

bbb IN A 192.168.6.119
bbb IN A 192.168.6.120
bbb IN A 192.168.6.121
 

然后在/var/named目录下为该文件建立同名链接

3. 新建域反向解析区文件/var/named/chroot/var/named/反向解析区文件(或从本地反向解析文件localhost.zone复制成新建域反向解析区文件named.local,再进行修改),并添加以下内容:

$TTL 86400
@ IN SOA ns.net03.org. root.ns.net03.org. (
2000051501 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum

@ IN NS ns.net03.org.
10 IN PTR ns.net03.org.
110 IN PTR aaa.net03.org.
119 IN PTR bbb.net03.org.

然后在/var/named目录下为该文件建立同名链接

4. 注意事项: 因为在RHEL中,考虑到安全性,文件/etc/sysconfig/named中有以下参数:

    ROOTDIR=/var/named/chroot

如果不注释掉,则所有zone文件均保存在/var/named/chroot/var/named/*,所以需要将区文件保存在/var/named/chroot/var/named下。如果你将该句注释掉,则区文件保存在/var/named/目录下(同Red Hat 9相同)。

  同时要注意两个目录拥有者,/var/named/chroot/拥有者为named,/var/named/拥有者为root

客户端设置

1 )windows客户端,设置首选DNS服务器

2 )Linux客户端,在/etc/resolv.conf中添加以下内容:

    nameserver 192.168.6.10
 

测试DNS服务器的配置

使用命令nslookup

辅助DNS服务器的配置            返回

说明:如果要为域net03.org的域服务器ns.net03.org(192.168.6.10)建立辅助(slave)域服务器,bak.net03.org(192.168.6.11),需要做以下操作:

1.针对net03.org的正向区域、反向区域,修改域服务器ns.net03.org的主配置文件/etc/named.conf,修改后内容如下:

zone "net03.org" {
type master;
file "named.net03.org";
allow-transfer { 192.168.6.11; };
};

zone "6.168.192.in-addr.arpa" {
type master;
file "named.192.168.6";
allow-transfer { 192.168.6.11; };
};

2.在计算机192.168.6.11上配置DNS服务,设置其主配置文件/etc/named.conf,修改后应有以下区的说明:

zone "net03.org" {
type slave;
file "slaves/named.net03.org";
masters {192.168.6.10;};
};

zone '6.168.192.in-addr.arpa' {
type slave;
file 'slaves/named.192.168.6';
masters {192.168.6.10;};
};


3.注意事项:
    1)主从服务器中正/反向zone名称必须一致;
    2)从服务器中file可指定相对路径,也可指定绝对路径;
    3) 需将辅助DNS服务器的首选DNS服务器指向为主DNS服务器.
 

4.测试:
    在客户端将首选DNS服务器设置为辅助DNS服务器,也可暂时关闭主DNS服务器。并用nslookup进行测试
注意:主DNS服务器与辅助DNS服务器的数据传输有一定的时间间隔

缓存(Cache-only)DNS服务器的配置        返回

1. 修改named主配置文件

/etc/named.conf

options {
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
version "4.9.11";
forward only;
forwarders {
    192.168.6.10;
};

};

2.测试:
    在客户端将首选DNS服务器设置为缓存DNS服务器。并用nslookup进行测试
 

DNS子域授权            返回

说明:假定我们是要将net03.org域下建立一个子域xxx.net03.org,并将该子域授权给主机dns.xxx.net03.org(IP地址为192.168.6.114)来管理

特别提示:RHEL 4为了提高系统安全性,默认情况下,大部分常用端口都是关闭的,包括dns服务的53号端口,为使dns服务能被正常使用,我们需要在图形界面下打开该端口,具体操作如下:

桌面-->管理-->安全与防火墙-->其它端口-->添加

1.在net03.org的正向解析区文件中添加以下内容:

xxx.net03.org. IN NS dns.xxx.net03.org.
dns.xxx.net03.org. IN A 192.168.6.114

2.参照新建域net03.org的步骤,在IP地址为192.168.6.114的计算机上配置DNS服务,新建区域xxx.net03.org,添加有关记录

3.将客户端的首选DNS服务器设置成net03.org的域服务器(192.168.6.10)或xxx.net03.org的域服务器(192.168.6.114),使用nslookup或ping等命令进行测试。

利用DNS实现负载均衡            返回

原理就是在DNS服务器中为同一个域名配置多个IP地址,如域中FTP服务器的网络负荷很大,需要多台服务器进行负载均衡,可以在DNS服务器上加入以下记录:

ftp IN A 192.168.6.219
ftp IN A 192.168.6.220
ftp IN A 192.168.6.221

实现直接解析域名

直接将域名解析成相应的IP地址,承接上例,如想将域名net03.org解析成域内www服务器的IP地址(192.168.6.2),可以在区域文件中加入以下记录.

net03.org. IN A 192.168.6.2

实现泛域名的解析

泛域名是指一个域名下所有的主机和子域名都被解析到同一个IP上.在区文件中的设置如下:

*.example.com. IN    A    192.168.16.9

*        IN     A        192.168.6.9

故障排除            返回

检查主配置文件语法:

#named-checkconf

检查区域文件语法:

#named-checkzone ssti.net /var/named/chroot/var/named/ssti.net.zone

DNS客户查询名称的顺序    返回

    DNS客户端发出DNS请求,直到得到结果,可能的过程是怎样的,见下面两图

附:rndc            返回

    概念:

rndcremote name daemon control):是一个系统管理员操作名称服务(DNS服务)的程序,使用rndc命令可以实现重新加载域名服务的配置文件或区文件,停止域名服务,显示域名服务状态等功能。

使用:

执行命令:

#rndc-confgen

该命令的输出结果中前半部分是配置文件/etc/rndc.conf的设置,后半部分给出了如何修改/etc/named.conf中key{…}、controls{…}的内容,这样做的目的是实现操作DNS服务时的数字认证。

或者像下面操作:

#rndc-confgen > /etc/rndc.conf
    从rndc.conf文件中提取named.conf用的key 
    #cd /etc
    #tail -10 rndc.conf | head -9 | sed s/#\ //g >> named.conf 

rndc的常见用法:

#rndc status

#rndc start | stop | restart

#rndc reload ssti.net

实训            返回

1. 为域it.net配置主域服务器:建立正向搜索区域,为网络各台计算机建立主机记录、别名记录。为网络建立邮件交换记录。建立反向搜索区域,为网络各台计算机建立指针记录。并测试。

2. 为域it.net配置辅助域服务器,并测试。

3. 配置缓存DNS服务器,并测试。

4. 为域it.net配置子域xxx.it.net,并在it.net的主域服务器上为xxx.it.net做子域授权。在客户端将DNS服务器设为it.net的域服务器,查询it.net及其子域中的DNS记录。

5. 通过DNS记录实现负载均衡功能,并测试

6. 在DNS服务器上实现泛域名解析,并测试

思考            返回

1. DNS客户端发出DNS请求,直到得到结果,可能的过程是怎样的?

2. 下面是DNS服务区文件的一段内容,请说明括号中的数字代表什么.在什么情况下起作用.

$TTL 86400 @ IN SOA ns.net03.org. root.ns.net03.org.
( 2000051501 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum