当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Linux架设DNS服务器(二)

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器 中的 Linux架设DNS服务器(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 43 ::
收藏到网摘: n/a


2.安装服务器软件

2.1取得bind软件包(现在新的版本为8.2.2p5)

从bind的主页http://www.isc.org上取得最新stable版的三个文件:

bind-contrib.tar.gz

bind-doc.tar.gz

bind-src.tar.gz

或者从http://www.redhat.com上取得三个文件:

bind-8.2.2-p5-9.i386.rpm

bind-devel-8.2.2-p5-9.i386.rpm

cache-nameserver-6.2-2.noarch.rpm

2.2安装bind软件包

安装tar封装的软件包:

先解压软件包

tarzxpfbind-contrib.tar.gz

tarzxpfbind-doc.tar.gz

tarzxpfbind-src.tar.gz

编辑修改Makefile.set文件,增加或修改

'DESTLIB=/usr/lib/bind/lib'

'DESTINC='/usr/lib/bind/include'

编译并安装

make

makeinstall

安装rpm封装的软件包:

rpm-Uhvbind-8.2.2-p5-9.i386.rpm

rpm-Uhvbind-devel-8.2.2-p5-9.i386.rpm

rpm-Uhvcache-nameserver-6.2-2.noarch.rpm

3.让服务器跑起来---基本篇

3.1

BIND可被配置成几种不同的运行方式,通用的BIND配置为纯解析器系统,纯缓存服务器,主服务器,辅服务器.

解析器是指通过域名服务器查询域信息的程序代码,在unix系统中,它是以库例程的方式实现的,而并不是一个单独的客户程序.纯解析器系统很容易配置,只要设置一下/etc/resolv.conf文件.这种方式通常用于由于某些限制不能在本地运行域名服务器软件的系统中.

例如:/etc/resolv.conf内容类似为:

searchtest.com

nameserver127.0.0.1

nameserver172.16.0.1

当配置解析器库以使用BIND名字服务进行主机查找,你也必须告知它使用哪个名字服务器。对此有一个独立的文件,称为resolv.conf。如果这个文件不存在或是空的,那么解析器就假设名字服务器在你本地的主机上。

如果在你的本地主机上运行一个名字服务器,你必须单独地设置它。

resolv.conf中最重要的选项是nameserver,它给出了要使用的名字服务器的IP地址。如果你通过几次给出nameserver选项指定了几个名字服务器,那么它们会以给出的顺序试用。因此,你应该首先给出最可靠的服务器。目前,至多支持三个名字服务器。

如果没有给出nameserver选项,那么解析器试图连接本地主机上的名字服务器。

其它两个选项,domain和search涉及到如果BIND不能用第一个请求解析主机名时附加在主机名上的缺省域。search选项指定了一个试用的域名列表。列表项是用空格或制表符分开的。

如果没有给出search选项,就会通过使用域名本身从本地域名以及直至root的父域中建立一个搜寻列表。本地域名可以使用domain语句给出;如果一个也没有给出,那么解析器就通过系统调用getdomainname(2)来获取。

3.2其它三类配置方式是用于域名服务器的

纯缓存服务器

纯缓存服务器运行域名服务器软件,但并没有域名服务器数据库文件,它记录下每一个从远程域名服务器获得的数据,以回答将来对同一信息的查询.

纯缓存服务器所需的三个基本配置文件:

/etc/named.conf

/var/named/named.ca

/var/named/named.local

创建或修改/etc/named.conf:

//generatedbynamed-bootconf.pl

options{

directory"/var/named";

/*

*Ifthereisafirewallbetweenyouandnameserversyouwant

*totalkto,youmightneedtouncommentthequery-source

*directivebelow.PreviousversionsofBINDalwaysasked

*questionsusingport53,butBIND8.1usesanunprivileged

*portbydefault.

*/

//query-sourceaddress*port53;

forwarders{172.16.0.1;172.16.0.11;};

};

//

//acachingonlynameserverconfig

//

zone"."{

typehint;

file"named.ca";

};

zone"0.0.127.in-addr.arpa"{

typemaster;

file"named.local";

};

在文件中"forwarders{172.16.0.1;172.16.0.11;};"其中的IP地址是你网络中主服务器和辅服务器的IP地址.
创建或修改/var/named/named.local

@INSOAlocalhost.root.localhost.(

1997022700;Serial

28800;Refresh

14400;Retry

3600000;Expire

86400);Minimum

INNSlocalhost.

1INPTRlocalhost.

创建或修改/var/named/named.ca:

至于/var/named/named.ca就要从redhatlinux光碟获得了.也用命令从互联网上获得:

[email protected]>/var/named/named.ca

如果是用rpm封装的软件包安装的话,这三个文件会自动生成,我们只需要修改/etc/named.conf.其中/var/named.ca一般是不用修改的.

主服务器

主服务器是给定域的所有信息的授权来源.它所装载的域信息来自于由域管理员所创建并在本地维护的磁盘文件.

我们用"test.com"作为例子,我们需要五个基本配置文件:

/etc/named.conf

/var/named/named.ca

/var/named/named.local

/var/named/named.test.com

/var/named/named.172.16.0

创建或修改/etc/named.conf:

//generatedbynamed-bootconf.pl

options{

directory"/var/named";

/*

*Ifthereisafirewallbetweenyouandnameserversyouwant

*totalkto,youmightneedtouncommentthequery-source

*directivebelow.PreviousversionsofBINDalwaysasked

*questionsusingport53,butBIND8.1usesanunprivileged

*portbydefault.

*/

//query-sourceaddress*port53;

};

//

//aPMnameserverconfig

//

zone"."{

typehint;

file"named.ca";

};

zone"0.0.127.in-addr.arpa"{

typemaster;

file"named.local";

};

//thereareourprimaryzonefiles

zone"test.com"{

typemaster;

file"named.test.com";

};

zone"0.16.172.in-addr.arpa"{

typemaster;

file"named.172.16.0";

};

文件中的zone"test.com"段是声明这是用于test.com域的主服务器,用于该域的数据从/var/named/named.test.com文件中装载.

文件中的zone"0.16.172.in-addr.arpa"段是指向映射IP地址172.16.0.*到主机名的文件.用于该域的数据从/var/named/named.172.16.0文件中装载.

创建或修改/var/named/named.local

@INSOAns.test.com.root.ns.test.com.(

2000051500;Serial

28800;Refresh

14400;Retry

3600000;Expire

86400);Minimum

INNSns.test.com.

1INPTRlocalhost.

注意:在修改named.*文件时每次存盘时要注意增加Serial值.如使用绝对域名时千万别忘了后面带的"."

资源记录中的@字符转变为当前的域test.com,IN表示资源记录使用TCP/IP地址,SOA表示管辖开始记录.ns.test.com.是这个域的主DNS服务器的标准名称,在之后是联系的EMAIL地址,其中@字符必须用"."代替.

创建或修改/var/named/named.test.com

@INSOAns.test.com.root.ns.test.com.(

2000051500;Serial

28800;Refresh

14400;Retry

3600000;Expire

86400);Minimum

INNSns.test.com.

nsA172.16.0.1

ns2A172.16.0.11

wwwA172.16.0.2

ftpCNAMEwww.test.com.

mailA172.16.0.3

MX10mail.test.com.

创建或修改/var/named/named.172.16.0

@INSOAns.test.com.root.ns.test.com.(

2000051500;Serial

28800;Refresh

14400;Retry

3600000;Expi