UNIX下DNS服务器之创建篇(上)
【内容导航】
第1页:概述
第2页:UNIX的DNS服务器创建
第3页:必须的配置文件named.conf
第4页:必须的配置文件study.js.cn
第5页:必须的配置文件study.js.cn.rev
第6页:必须的配置文件named.ca
第7页:必须的配置文件named.local
第8页:与DNS配置相关的文件
本文主要和大家讨论在UNIX环境下,使用BIND服务器软件创建一个DNS主域服务器。我们知道在安装好一个UNIX系统后,BIND软件也随系统基本上安装好的,要做的工作是对有关的文件参数进行相关的修改与配置。
通常我们可以通过检查/var/log目录或系统上它的等价目录下的日志文件来确定目前拥有的BIND的版本。BIND服务器守护进程named在启动时将版本号记录到系统日志中(设施“守护进程”)。用grep查找类似下面这样的行:
第一行取自HP-UX 11.00发布附带的情况,第二行来自我们本地维护的一台SunOS机器。后一行撒了一个小谎,因为BIND 8.2.2的补丁4没有增加补丁级别。实际上是8.2.2-P4。
如果你需要升级BIND软件的版本的话,可以到www. isc.com网站上下载BIND新版本,如bind-9.0.0.tar打包源文件,解压并使用tar得到文件的内容,接下来要编译BIND,需要运行configure命令,从而产生如下的输出:
下一步,利用make命令构造二进制码:
最后,通过构造测试程序来测试二进制代码:
如果所有测试都通过了,就可以执行“make install”安装新代码。
UNIX系统的域名解析
Internet上常见的域名解析的有下面两种方式:
名字到地址的解析(正向解析)
如:www.study.js.cn è 61.155.107.131
地址到名字的解析(反/逆向解析)
如:61.155.107.131è www.study.js.cn
因此我们在配置UNIX域名服务器时,在互联网上要实现正向/反向解析,只有完成这两种解析方式,才可以说真正意思上的域名服务器。现在许多Internet上域名服务器特别是Windows系统的域名解析只实现正向解析。
UNIX 的DNS服务器创建
下面以Solaris为例来说明UNIX主域服务器创建过程,对于随Solaris7、8提供的BIND 8,主要配置文件是/etc/named.conf,BIND4 以及更早的版本使用名为/etc/named.boot的配置文件。/etc/named.conf 文件负责控制DNS服务器的行为,它提供了以下关键词,用来定义操作声明:
acl----定义一个访问控制列表,哪些客户可以使用该服务器。
include ----读入一个包含声明的外部文件,该文件使用与/etc/named.conf相同的格式。这在配置文件非常大时是很有用的,可以将不同的部分分成在逻辑上相关的几个文件。
logging----确定在声明指定的日志文件中记录哪些服务器活动。
options----定义本地服务器的操作特征。
server----定义其他服务器的操作特征。
zone----创建本地DNS区域。
在Solaris 中,in.named为进程域名服务器。通过网络初始化脚本S72inetsvc在level 2级上启动的,启动后,它读取/etc/named.conf以获取它所管理的区域和区域数据库文件。区域文件除了包含主机名到IP地址的映射外,还包含其他内容。域名服务器的配置过程包括下列步骤:
1)注册一个域名
2)创建一个主机名和ip地址的列表
3)创建/etc/named.conf文件
4)创建区域数据文件
在区域数据文件中,信息是以特定的格式存储的。这些信息被定义为资源记录类型(RR)。常用的标准的资源记录说明如下:
SOA(管理开始)资源记录----在master file(就是bind4里的zone file)中用到。
NS(名字服务器)资源记录----列出了域或区域中的名字服务器
A (地址)资源记录----地址资源记录用于说明DNS 数据库中主机的IP地址。它可能即使用到绝对主机名(FQHN),也可能使用相对的主机名(短主机名)。
MX(邮件交换服务器)资源记录----MX资源记录负责域内的主机之间的邮件交换服务。
PTR(指示器)资源记录----通常用于逆向主机名的解析。
CNAME ---- 用于定义主机的别名。
几个必须的配置文件
named.conf
named.ca
named.local
master file(就是bind4里的zone file) ----在本文中用study.js.cn和study.js.cn.rev 两个文件。
在这几个配置文件中,最主要的是named.conf,在/etc下, 它是named启动时缺省的启动文件。一个典型的named.conf文件至少包括options和zone,如:
① named.conf 文件
options {
directory "/var/named"; //数据库文件的位置,要创建named这个目录,
multiple-cnames yes;
pid-file "/etc/named.pid";
};
//type domin source host/file backup file
zone "." in {
type hint; //这里hint表示为缓存服务器
f