21.3. 仅缓存域名服务器

仅缓存域名服务器是指除了以下域之外,对任何域都不具有权威性的服务器0.0.127.in-addr.arpa,即 localhost。一个仅缓存域名服务器可以查找您区域内外的名称,域名服务器和域名服务器也可以。不同之处在于,当一个仅缓存域名服务器最初查找您区域内的名称时,它最终会向您区域的域名服务器或域名服务器之一请求答案。

设置一个简单的缓存域名服务器所需的文件是

  1. named.conf

  2. db.127.0.0

  3. db.cache

  4. named 脚本

要配置/etc/named.conf文件以用于简单的缓存域名服务器,请对所有不充当域名服务器的服务器使用此配置。为本地客户端机器设置一个简单的缓存服务器将减少网络主服务器的负载。许多拨号连接用户可能会将此配置与 bind 一起用于此目的。创建named.conf文件,touch/etc/named.conf并在文件中添加以下行
 options {
 directory "/var/named";
 forwarders { 208.164.186.1; 208.164.186.2; };(1)
 forward only;
 };

 //
 // a caching only nameserver config
 zone "." in {
 type hint;
 file "db.cache";
 };

 zone "0.0.127.in-addr.arpa" in {
 type master;
 file "db.127.0.0";
 };
 

(1)
在 forwarders 行中,208.164.186.1208.164.186.2是您的 IP 地址 DNS 服务器。它们也可以分别是您的 ISPDNS 服务器和另一个 DNS 服务器的 IP 地址。

Tip: 为了提高您的 BIND/DNS 服务器的安全性,您可以阻止它在转发器宕机或没有响应时尝试联系场外服务器。使用forward only选项在您的named.conf文件中设置后,如果转发器没有给出答案,域名服务器不会尝试联系其他服务器来查找信息。

要配置/var/named/db.127.0.0文件以用于简单的缓存域名服务器,您可以对网络上所有不充当 域名服务器的机器使用此配置。db.127.0.0文件涵盖了环回网络。在/var/named/中创建以下文件,touch/var/named/db.127.0.0并在文件中添加以下行
 $TTL 345600
 @       IN      SOA     localhost. root.localhost.  (
 00	; Serial
 86400	; Refresh
 7200	; Retry
 2592000	; Expire
 345600 )	; Minimum
 IN      NS      localhost.

 1        IN      PTR     localhost.
 

配置/var/named/db.cache文件以用于简单的缓存域名服务器,在启动您的 DNS 服务器之前。您必须复制一份db.cache文件,并将此文件复制到/var/named/目录。<0xE2><0x80><0xAF>db.cache告诉您的服务器 域的服务器在哪里。

在您组织中的另一台 Unix 计算机上使用以下命令来查询新的db.cache文件,用于您的 DNS 服务器,或从您的 Red Hat Linux CD-ROM 源发行版中选择一个
 [root@deep]# dig @.aroot-servers.net . ns > db.cache
 
不要忘记复制db.cache文件到/var/named/您正在安装 DNS 服务器的服务器上的目录,在通过 Internet 检索它之后。

Tip: 像这样的内部地址192.168.1/24由于安全原因,未包含在 DNS 配置文件中。非常重要的是,公司网络和外部主机上的主机之间不存在 DNS