您的位置:首页 > 运维架构 > Linux

linux中DNS服务器的安装与配置

2012-12-14 15:41 477 查看
DNS服务器的[b]安装[/b]

查看DNS服务是否已经安装




如果已经安装,则会显示bind-libs-9.3.6-4.P1.el5_4.2与bind-9.3.6-4.P1.el5_4.2等字样,否则就是没有安装

安装DNS服务

[root@localhost Server]# rpm -ivh bind-9.3.6-4.P1.el5_4.2.i386.rpm
[root@localhost Server]# rpm -ivh bind-libs-9.3.6-4.P1.el5_4.2.i386.rpm
[root@localhost Server]# rpm -ivh bind-utils-9.3.6-4.P1.el5_4.2.i386.rpm
[root@localhost Server]# rpm -ivh bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm #可有可无,为安全起见安装此包
DNS服务器的配置

配置DNS服务器的主配置文件/etc/named.conf(/var/named/chroot/etc/named.conf)

#指定named从/var/named目录下读取DNS数据文件,这个目录用户可自行指定并创建,指定后所有的DNS数据文件都存放在此目录下
options {

directory "/var/named";
};
include "/etc/rndc.key";
#指定named从named.ca文件中获得Internet的顶层“根”服务器地址
zone "." IN {
type hint;
file "named.ca";
};
#指定正向解析区域并指定正向解析区域的文件名
zone "risesoft.local" IN {
type master;
file "risesoft.local";
allow-update { none;};
};
#指定反向解析区域并指定方向解析区域文件名
zone "1.168.192.in-addr.arpa" IN {
type master;
file "1.168.192.in-addr.arpa";
};

设置DNS正向解析区域的配置文件(注意一下每行需要顶格写)(/var/named/chroot/var/named/risesoft.local)

#@则代表相应的域名,如在这里代表risesoft.local,即表示一个域名记录定义的开始。IN表示后面的数据使用的是INTERNET标准。而
server.risesoft.local则是这个域的主域名服务器,而root.risesoft.local则是管理 员的邮件地址。注意这是邮件地址中用.来代替常见的邮件地址中的@.而SOA表示授权的开始
@ IN SOA server.risesoft.local. mail.risesoft.local. (
#正向解析区域的序列号。需要注意的是,当更改过主 DNS服务器数据后,需要将Serial数据加大,并且确定正向解析区域和反向解析区域的序号一致,这样辅DNS服务器才会自动更新DNS Cache数据库
2008061001 ;Serial
#定义的是以为单位的刷新频率 即规定从域名服务器多长时间查询一个主服务器,以保证从服务器的数据是最新的
10800 ;refresh
#这个值是规定了以秒为单位的重试的时间间隔,即当从服务试图在主服务器上查询更时,而连接失败了,则这个值规定了从服务多长时间后再试
7200 ;retry
#这个用来规定从服务器在向主服务更新失败后多长时间后清除对应的记录,上述的数值是以分钟为单位的
604800 ;expire
#DNS服务器将主机的域名信息保存在本地Cache中的时间,其他客户端查询时,就自动返回Cache中的数据
86400 ;default_ttl
)
#NS:表示是这个主机是一个域名服务器
#A:定义了一条A记录,即主机名到IP地址的对应记录
#MX 定义了一邮件记录
#CNAME:定义了对应主机的一个别名
@ IN NS server
server IN A 192.168.1.155
localhost IN A 127.0.0.1
loopback IN CNAME localhost

mail IN MX 10 server
mail1 IN MX 11 server.risesoft.local.

host1 IN A 192.168.1.101
host2 IN A 192.168.1.155
host3 IN A 192.168.1.100
host4 IN A 192.168.1.86
host5 IN A 192.168.1.90
host6 IN A 192.168.1.21
xxxholic IN CNAME host1
xxxholic1 IN CNAME host1

设置DNS反向解析区域的配置文件(注意一下每行需要顶格写)(/var/named/chroot/var/named/1.168.192.in-addr.arpa)

#@则代表相应的域名,如在这里代表risesoft.local,即表示一个域名记录定义的开始。IN表示后面的数据使用的是INTERNET标准。而 server.risesoft.local则是这个域的主域名服务器,而root.risesoft.local则是管理 员的邮件地址。注意这是邮件地址中用.来代替常见的邮件地址中的@.而SOA表示授权的开始
@ IN SOA server.risesoft.local. mail.risesoft.local. (
#正向解析区域的序列号。需要注意的是,当更改过主 DNS服务器数据后,需要将Serial数据加大,并且确定正向解析区域和反向解析区域的序号一致,这样辅DNS服务器才会自动更新DNS Cache数据库
2008061001 ;Serial
#定义的是以为单位的刷新频率 即规定从域名服务器多长时间查询一个主服务器,以保证从服务器的数据是最新的
10800 ;refresh
#这个值是规定了以秒为单位的重试的时间间隔,即当从服务试图在主服务器上查询更时,而连接失败了,则这个值规定了从服务多长时间后再试
7200 ;retry
#这个用来规定从服务器在向主服务更新失败后多长时间后清除对应的记录,上述的数值是以分钟为单位的
604800 ;expire
#DNS服务器将主机的域名信息保存在本地Cache中的时间,其他客户端查询时,就自动返回Cache中的数据
86400 ;default_ttl
)
#NS:表示是这个主机是一个域名服务器
#PTR:表示反向记录
@ IN NS server.risesoft.local
21 IN PTR host6.risesoft.local
86 IN PTR host4.risesoft.local
90 IN PTR host5.risesoft.local
100 IN PTR host3.risesoft.local
101 IN PTR host1.risesoft.local
155 IN PTR host2.risesoft.local

配置DNS根服务器提示

ftp://ftp.internic.net/domain 上下载 named.root文件,并修改文件名为named.ca保存到路径(/var/named/chroot/var/named)下
wget ftp://ftp.internic.net/domain/named.root mv named.root /var/named/chroot/var/named/named.ca

启动关闭DNS服务器
service named start
service named stop
service named restart
启动和关闭DNS的时候可能出现权限错误,主要分为两个原因,

rndc.key设置错误,具体解决办法

默认安装BIND9以后,是无法直接使用 ndc 或 rndc 命令的。

先重新生成 rndc.conf

rndc-confgen > /etc/rndc.conf

将 rndc.conf 下面注释部分 Copy 到 /etc/rndc.key 文件中(必须将前面的#去掉)。

如:

# key "rndc-key" {

# algorithm hmac-md5;

# secret "xbPNyGOcwJp8pEJDLo26cQ==";

# };

#

# controls {

# inet 127.0.0.1 port 953

# allow { 127.0.0.1; } keys { "rndc-key"; };

# };

如果 /etc/named.conf 中包含有 controls 这一Section,先注释掉。

然后在后面添加一行 include "/etc/rndc.key";

这样做是为了安全考虑,否则可以直接copy到 named.conf 文件中。

selinux权限问题,导致某些文件无法访问,具体如何解决通过查看日志

测试DNS服务器是否配置成功

修改DNS客户端配置/etc/resolv.conf,将首选DNS服务器设置为刚才设置的DNS服务器的IP

vim /etc/resolv.conf

;添加一行:
nameserver 192.168.1.155

测试DNS服务器是否正常运行:
[root@localhost ~]# nslookup

> host1.risesoft.local

Server: 192.168.1.155

Address: 192.168.1.155#53

Name: host1.risesoft.local

Address: 192.168.1.101

> server.risesoft.local

Server: 192.168.1.155

Address: 192.168.1.155#53

Name: server.risesoft.local

Address: 192.168.1.155

> host5.risesoft.local

Server: 192.168.1.155

Address: 192.168.1.155#53

Name: host5.risesoft.local

Address: 192.168.1.90
可以看到DNS服务器运行正常,能够正确解析对应的主机域名映射,至此,DNS服务器简单配置完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: