在centOS里最常用的DNS服务工具应该是bind了。下面就以bind为例做一个DNS服务。
首先查看bind 是否已经安装
Rpm -qa | gerp bind
如果没有的话就用yum 安装一下Bind
Yum -y install bind
这样就安装好了bind
配置named.conf文件
把listen-on port 53{x.x.x.x;};
改成listen-on port 53{any;};
这样它就会监听所有的ip地址了
后边的ipv6可以把它注释掉。(也可以不管它),
后面再把allow-query {localhost;};
改成allow-quety{any;};
其它地方保持默认就好了
然后打开named.rfc1912.zone文件
输入自己需要部分,其它都删除掉就好了
EX.
zone “abc.com” IN {
type master;
file “abc.com.zone”;
allow-update{ none };
};
zone “1.168.192.in-addr.arpa” IN {
Type master;
File “1.168.192.zone”;
Allow-update{none;};
};
然后打开named.conf文件中directory 指定的目录/var/named
这些记不住没有关系 真正配置的时候可以参考下相同文件夹下的named.localhost文件
稍作修改就好了,反向查询可以通过cp named.loopback来进行
在这里建立一个zone文件
EX.
$TTL 86400
@ IN SOA dns.abc.com. root.abc.com.(
42;serial
3H;refresh
15M;retry
1W;expire
1D);minimum
@ IN NS dns.abc.com.
Dns IN A 192.168.1.1
www IN A 192.168.1.1
配置反向解析文件
EX.
$TTL 86400
@ IN SOA dns.abc.com. root.abc.com.(
42;serial
3H;refresh
15M;retry
1W;expire
1D);minimum
@ IN NS dns.abc.com.
3 IN PTR dns.abc.com
2 IN PTR dhcp.abc.com
:wq保存文件 就OK了
这里特别注意一下serial这个值必须都要不同 named服务才能启动
用named -checkconf /etc/named.conf 来查看自己的配置有没有错误
要是没有任何问题,那么service named start!
用nslookup查看下域名是不是都能解析了?
也许很多人的解析还是失败的。因为大多数人在建立zone文件的时候都忽略了这个一个问题。自己在使用root权限!
所有这个时候建立的zone文件也都是属于root的
Bind没有那么高的权限,所以无法从zone文件中获得配置
这时候让我们来使用下 chgrp命令
chgrp named /abc.com.zone
chgrp named /1.168.192.zone
现在再看看是不是能解析了呢?