前面几次我们已经看到了Red Hat5平台下的DHCP、FTP以及Samba服务的搭建,对服务器主机进行访问时也是使用IP地址的形式,而在实际的网络应用中,通常是使用域名的形式访问服务器的.本次将以著名的DNS服务器软件BIND(Berkeley Internet Name Daemon)为例,向大家讲述不同类型域名服务器的搭建.
第一部分:“砍柴前的磨刀”<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
在动手做DNS之前我们先来对DNS相关的软件、服务、配置文件等做一个了解.所谓“磨刀不误砍柴工”.
1.BIND软件介绍
BIND最新的版本我们可通过官方站点(https://www.isc.org/)中下载到.当然Red Hat5已经默认自带了.在RHEL5系统中,与BIND域名服务相关的几个主要软件包和作用如下:
Bind——提供了域名服务的主要程序及相关文件
Bind-utils——提供了对DNS服务器的测试工具程序(如nslookup、dig等)
Bind-chroot——为bind提供一个伪装的根目录以增强安全性
Caching-nameserver——为配置BIND作为缓存域名服务器提供必要的默认配置文件,用以参考.
2.BIND服务控制
BIND软件包安装完毕以后,提供的主程序默认位于“/usr/sbin/named”,系统中会自动增加一个名为named的系统服务,通过脚本文件“/etc/init.d/named”或service命令都可以控制域名服务的运行.下面是常用的关于DNS服务的命令:
启动服务:/etc/init.d/namd start或service named start
重新加载:service named reload
停止服务:service named restart
查看状态:service named status
3.BIND的主配置文件
Named服务的主配置文件为named.conf,一般位于“/etc/”目录中,如果使用了bind-chroot功能,则可能位“/var/named/chroot/etc/”目录中(我们本次的实例讲解以后者为准).主配置文件中主要包括全局配置和区域配置部分,下面是全局配置部分最常见的配置项及其注解:
options {
listen-on port 53 { <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1.1.1.1; }; //设置named服务监听的端口及IP地址
directory "/var/named"; //设置区域数据库文件的默认存放位置
allow-query { 192.168.1.0/24; 173.16.16.0/24; }; //允许DNS查询的客户端
recursion yes; //设置允许递归查询
dump-file "/var/named/data/cache_dump.db"; //设置缓存数据库文件位置
statistics-file "/var/named/data/named_stats.txt"; //设置状态统计文件位置
}; |
在以上配置内容中,除了directory项通常保留以外,其他的配置项都可以省略,若不指定listen-on配置项,named默认在所有可用的IP地址上监听服务.服务器处理客户端的DNS解析请求时,如果在named.conf文件中找不到相匹配的区域,将会向根域服务器或者由forwarders项指定的其他DNS服务器提交查询.
以下是区域配置部分常见的配置项:
zone "." IN { //设置根区域
type hint; //设置区域类型(hint表示根域、masters表示主域、slave表示从域)
file "named.ca"; //设置对应的根域地址数据库文件
};
|
此时,来自客户端的域名解析请求都将会被转发到我们在“forwarder”配置项中指定的DNS服务器上. |