浅谈Centos6.3下配置BIND服务器

这个折腾。。。折腾。。。。一个小小的错误折腾了我很久~表示就快要抓狂了。记录下这次的错误所在,woligequ~~~~我去年买了个表~好吧,记录下来,当作告诫~有需要的看到可能会有帮助的。错误是:** server can’t find www.abc.com: NXDOMAIN 如下:

[root@localhost named]# nslookup www.abc.com
Server: 192.168.2.111
Address: 192.168.2.111#53

** server can’t find www.abc.com: NXDOMAIN

[root@localhost named]#

原因:

[root@localhost named]# cp named.empty abc.com.zone  这样的cp。。。是个错误。至少不适用于Centos下bind服务器的搭建。正确的方法是加 -p 参数。之前一直没留意这东西,而且在RHEL下搭建bind下我是喜欢用p参数就用p参数,不喜欢用就没用,也没出现过什么问题。可以正常完成bind服务器的搭建。这次在Centos6.3下配置bind服务器。折腾的厉害。不多说,先来看下上述命令cp的结果:

错误的cp方法
错误的cp方法

不带p参数(没有源文件的属组属主属性。这样cp后的文件是root用户所属的,而bind服务有自己的用户。属组是root的。)我们应该改变该文件的属主用户,如下:

[root@localhost named]# chown root.named abc.com.zone
[root@localhost named]# service named restart
停止 named:. [确定]
启动 named: [确定]
[root@localhost named]# ll
总用量 44
-rw-r—– 1 root named 200 5月 2 03:50 2.168.192.zone
-rw-r—– 1 root named 183 5月 2 03:46 abc.com.zone
drwxr-x—. 6 root named 4096 3月 10 02:26 chroot
drwxrwx—. 2 named named 4096 5月 2 03:29 data
drwxrwx—. 2 named named 4096 5月 2 03:56 dynamic
-rw-r—– 1 root named 218 5月 2 03:49 kutea.net.zone
-rw-r—–. 1 root named 1892 2月 18 2008 named.ca
-rw-r—–. 1 root named 152 12月 15 2009 named.empty
-rw-r—–. 1 root named 152 6月 21 2007 named.localhost
-rw-r—–. 1 root named 168 12月 15 2009 named.loopback
drwxrwx—. 2 named named 4096 6月 22 2012 slaves
[root@localhost named]#

nslookup www.abc.com
nslookup www.abc.com

此文只为记录~~~有需要的看到可以检查。看来是该步步为细心哪~~~

DNS记录定义与其作用

NS 记录
(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。您注册域名时,总有默认的DNS服务器,每个注册的域名都是由一个DNS域名服务器来进行解析的,DNS服务器NS记录地址一般以以下的形式出现:ns1.domain. com
MX 记录
(Mail Exchanger)记录叫做邮件交换记录,也有说法叫做邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的mail服务器上,然后即可自行操控所有的邮箱设置。您只需在线填写您服务器的IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。简单的说,通过操作MX记录,您才可以得到以您域名结尾的邮局。
A 记录
A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的WEB服务器上。同时也可以设置您域名的子域名。通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当你输入域名的时候给你引导向设置在DNS的A记录所对应的服务器.
CNAME 记录
CNAME (Canonical Name)别名指向记录,通常称别名指向。在这里,你可以定义一个主机别名,比如设置www1.kutea.net,用来指向一个主机www.kutea.net,那么以后就可以用www1.kutea.net来代替访问www.kutea.net了。
PTR 记录
PTR (Pointer Recore)指针记录俗称反向记录,是电子邮件系统中的一种数据类型。与其相对应的是A记录、地址记录。二者组成邮件交换记录。A记录解析名字到地址,而PTR记录解析地址到名字。地址是指一个客户端的IP地址,名字是指一个客户的完全合格域名。
TXT 记录
SPF记录就是通过TXT记录来实现的。SPF就是Sender Policy Framework。SPF可以防止别人伪造你来发邮件,是一个反伪造性邮件的解决方案。当你定义了你的domain name的SPF记录之后,接收邮件方会根据你的SPF记录来确定连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则则认为是一封伪造的邮件。
TXT记录一般指为某个主机名或域名设置的说明,如:(mail IN TXT “邮件主机,存放在xxx,管理人:AAA”)也就是您可以设置TXT,以便使别人联系到您
SRV 记录
SRV记录一般是为Microsoft的活动目录设置时的应用。DNS可以独立于活动目录,但是活动目录必须有DNS的帮助才能工作。为了活动目录能够正常的工作,DNS服务器必须支持服务定位(SRV)资源记录,资源记录把服务名字映射为提供服务的服务器名字。活动目录客户和域控制器使用SRV资源记录决定域控制器的IP地址。

Linux CentOS下BIND搭建智能DNS寻线

由于互联网的飞速发展,简单的DNS解析已经满足不了如今互联网的需求。于是出现了智能DNS的说法。下面就来简单介绍下CentOS下安装BIND软件搭建智能DNS服务器,这样的DNS服务器主要还是用acl和view的语句来实现的。它的好处可是实现CDN快速WEB缓存代理;控制查询源对应的结果等等…..好啦,其他不多说。关于CDN原理和Linux下搭建DNS服务器的安装这里就不多说。请参阅前面的博文。

实验环境:VMware 9 CentOS6.3操作系统虚拟机两台。

智能DNS寻线服务器:IP 192.168.2.125/24 (VMnet 2),客户机IP地址:192.168.2.126/24 192.168.2.127 /24 (VMnet 2)客户主机测试完后更换IP地址。

1.安装BIND软件搭建DNS服务器(略过)

2.配置智能寻线DNS主文件:

named.conf1named.conf2

配置zone区域解析文档:

cnc.zone ctc.zone

配置完成后启动DNS服务器:service named restart   。

3.客户机进行测试:(测试完一个IP后更换客户机IP地址再次进行测试)

下面是客户机(DNS查询源)IP地址192.168.2.126进行的模拟测试,查询结果是对应服务器地址为192.168.2.225 。查询正确!

126nslookup
客户机192.168.2.126查询正确

下面是客户机(DNS查询源)IP地址192.168.2.127进行的模拟测试,查询结果是对应服务器地址为192.168.2.227 。查询正确!

127nslookup
客户机192.168.2.126查询正确

这里还配置了本地查询源(DNS服务器本身)测试结果就不上图了。从上面的实验可以看出。智能DNS的使用可以解决负载均衡,网络安全,快速响应等等。使用了view和acl语句的话。默认不进行配置是连DNS服务器地址也无法查询的。简单搭建,不足之处请各位多多指点。欢迎各位友友进行讨论。

文章原创,转载请注明出处,多谢合作!

 

诠释BIND软件下的zone文件

BIND软件中的区域文件是由named.conf文档指定的,RHEL6中,如果没有安装chroot组件包的话。named.conf默认存放位置在/etc/目录下。而named.conf默认指定的区域文件就在/var/named/
目录下。下面先来看下一个基本的正向解析区域文档。

@ IN SOA kutea.net. root.kutea.net. (
1999051401 ; Serial
3600 ; Refresh
300 ; Retry
3600000 ; Expire
3600 ) ; Minimum

(@ 这符号是缩写,表示 named.conf 中这个 zone 文档所对应的区域,SOA 后面的两个是该zone文件中的参数,是指定这个zone文件是在哪部主机(kutea.net)定义的,以及这个zone文件的负
责人(root)既是(root.kutea.net),亦可以看成是 root@kutea.net )

(Serial 代表这个zone 文件的版本,每当zone 文件内容有变动,name server 管理者就应该增加这个号码,因为slave 会将这个号码与其copy 的那份比对以便决定是否要再copy 一次(即进
行zone 传输))

(Refresh Slave server 每隔这段时间(秒),就会检查Master server 上的serial number。不过这里会发生一个问题就是,在master server 在update data 完成到slave server 来检查时再update 可能还有好一段时间,因此这段期间master/slave DNS server间zone files 就可能出现不一致。所以在Bind较新的版本中便加入”notify”功能,使用者在”named.conf” 设定中在需要的zone 中加入”notify”的设定,则master server在update 完成某个zone file 的data 后便会主动发个讯息(NOTIFY),借以通知该其它的slave servers,因此如果slave servers 也有支援这个”notify”功能时,接下来slave servers 马上就可以做zone 传输来更新数据)

zone “kutea.net” IN {
type master;
file “kutea.db”;
notify yes;
also-notify { 192.168.0.15; }; //指定slave server的IP地址
};

(Retry 当从服务器无法和主站进行串行检查时,要每隔几秒再试一次)

(Expire 当时间超过Expire 所定的秒数而slave server 都无法和master 取得连络,那么slave 会删除自己的这份copy)

(Minimum 代表这个zone 文件中所有record 的内定的TTL 值,也就是其它的DNS server cache 这个record时,最长不应该超过这个时间)

NS :
IN NS ns1.kutea.net. (name server, 用来指定操作的DNS服务器主机名称,NS记录是不允许用主机IP地址来表示的。有过域名注册和使用域名的朋友或许知道 域名商要求你指定你域名解释的NS服务器时,你用服务器IP地址来替换,就会报错。就是这个原因了。NS记录其本身就不允许用IP地址来制定)

A 和 AAAA :
A记录 address,即主机记录。(就是将一个域名对应IP地址的记录。)
例如下面的IPv4和IPv6指定A记录的格式是:
www IN A 122.128.109.86
mail IN AAAA CDCD:910A:2222:5498:8475:1FF1:3900:2027

PTR (其中这个记录是出现在反向解析zone文件中):
Pointer , 定义某一 IP 地址对应的 domain name ,就是将 IP 地址转换成主机的FQDN
86 IN PTR www.kutea.net. (注意别名记录后面有个小数点)

CNAME :
Canonical name , 可为同一部主机设定许多别名,例如cdn.kutea.net的别名可为www.kutea.net和ftp.kutea.net 因此所设定的别名都会连到同一台服务器上。

MX :
mail exchanger,设定区域中担任邮件服务器的主机,所有要送往那部机器的mail 都要经过mail exchanger 转送。注意 而数字则是该主机邮件传递时的优先次序,此值越低表示有越高的邮件处理优先权。
mail IN MX 3 ns.kutea.net.

来总结下,以上就是DNS服务器之BIND软件中的zone文档诠释。其中应该注意的是,上文提到的PTR记录出现在反向区域文档中。SOA授权的一些参数在正向反向都存在的,MX(邮件交换)记录中的邮件级别值越低就有越高的邮件处理优先权。

好啦,到此为止!