六、配置高速缓存服务器缓解DNS访问压力

高速缓存服务器可运行域名服务器软件,但是没有域名数据库软件。它从某个远程服务器取得每次域名服务器查询的结果,一旦取得一个,就将它放在高速缓存中,以后查询相同的信息时就用它予以回答。高速缓存服务器不是权威性服务器,因为它提供的所有信息都是间接信息。对于高速缓存服务器只需要配置一个高速缓存文件,但最常见的配置还包括一个回送文件,这或许是最常见的域名服务器配置。

配置高速缓存域名服务器是很简单的。必须有named.conf和named.ca文件,通常也要用到named.local文件。下面是用于高速缓存服务器的named.conf文件的例子:

// generated by named-bootconf.pl

options {

directory "/var/named";

/*

* If there is a firewall between you and nameservers you want

* to talk to, you might need to uncomment the query-source

* directive below. Previous versions of BIND always asked

* questions using port 53, but BIND 8.1 uses an unprivileged

* port by default.

*/

// query-source address * port 53;

};

// a caching only nameserver config

//

// a caching only nameserver config

//

zone "." {

type hint;

file "named.ca";

};

zone "0.0.127.in-addr.arpa" {

type master;

file "named.local";

directory这一行告诉named到哪里去找寻文件。所有其后命名的文件都将是相对于此目录的。该文件告诉named去维持一个域名服务器响应的高速缓存,并利用named.ca文件的内容去初始化该高速缓存。该高速缓存初始化文件的名字可以是任何名字,但一般使用/var/named/named.ca。值得注意的是:如上的示例并不是表明在该文件中仅仅使用一个hint语句就能完成高速缓存配置,事实上是几乎每一种服务器的配置都要用到cache语句。在一些个别情况下,如果在配置中没有出现master和slave语句,则可以认为它就是一个高速缓存配置。

但是,在我们这个例子中却有一个master语句。事实上,几乎在每一个高速缓存的配置文件中都有这一个语句,它将本地服务器定义为它自己的回送域的主服务器,并假定该域的信息存储在named.local文件中。这个回送域是一个in-addr.arpa域in-addr.arpa域用于指定逆向解析,或IP地址到DNS名字解析),它将地址127.0.0.1映射为名字localhost。转换自己的回送地址对于大多数人都是有意义的,因为大多数的named.conf文件都包含这一项。

在大多数高速缓存服务器的配置文件中,这种directory、master和hint语句是唯一使用的语句,但也可以增加其他的语句,forwarders和slave等语句都可以使用。

七、配置DNS负载均衡

DNS负载均衡技术是在DNS服务器中为同一个主机名配置多个IP地址,在应答DNS查询时,DNS服务器对每个查询将以DNS文件中主机记录的IP地址按顺序返回不同的解析结果,将客户端的访问引导到不同的机器上去,使得不同的客户端访问不同的服务器,从而达到负载均衡的目的。

根据我们在上面介绍的区文件的相关知识可以满足DNS负载均衡的要求,我们通过下面的例子来进行介绍。

现假设有三台服务器来应对www.cmpbook.com的请求。在采用Linux系统上实现起来比较简单,只需在该域区文件的数据记录中添加类似下面的资源记录即可:

www1  IN  A  210.113.1.1

www2  IN  A  210.113.1.2

www3  IN  A  210.113.1.3

www   IN  CNAME  www1

www   IN  CNAME  www2

www   IN  CNAME  www3

上述六条资源记录的具体含义为:在DNS服务器中为www.cmpbook.com设定了三台服务器响应客户的访问请求。这三台服务器分别为www1、www2和www3,而他们均为www服务器的别名。因此,在访问www服务器时,DNS服务器将依次循环地将访问请求均衡到三台服务器中去,以达到负载均衡的目的。

51CTO.COM 独家特稿,转载请注明出处及作者!】


相关内容