网络管理员指南 -6.名字服务和解决配置 -2>命名运行 -1)Named.boot文件

/ns/wz/net/data/20020808024407.htm

网络管理员指南 -6.名字服务和解决配置 -2>命名运行 -1)Named.boot文件


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson

命名运行



在大多数机器上提供域名服务的程序通常被命名了(读为 name-dee )。这原来是被开发了的、为BSD提供
名字服务到顾客的一个服务器程序,并且可能到其它的名字服务器。当前在大多数安装上被使用了的版本
似乎是 BIND-4.8.3 。新版本, BIND-4.9.3 ,目前被外部测试,并且应该不久就可得到。



这节要求理解一些域名系统工作的方法。如果下列讨论对你来讲都不明白,你可能要再读gif这一章,它对
于 DNS 的基础知识有一些更多的信息。



命名通常在系统引导时间时被启动,并且一直运行到机器再次停止。它从一个叫/etc/named.boot的配置文
件中获得它的信息,并且包含数据映射的各种各样的文件印射域名到地址等等。后者被称为地区文件。这
些文件的格式和语义将在下一节被解释。



运行命名,简单地进入


# /usr/sbin/named


在提示符。命名的愿望来,读 named.boot 文件和任何地区在那里被指定了的文件。它在 ASCII 中写它的进
程身份到 /var/run/named.pid ,从主要的服务器下载任何地区文件,如果必要,并且为 DNS 询问的端口 53
上开始听。




--------------------------------------------------------------------------------

Named.boot 文件



named.boot 文件通常很小并且包含一些其他的小东西,但是到掌握文件的指示器包含地区文件信息,以及
到其他名字服务者的指示器。在引导文件中的注释以一个分号开始并且扩大到下一个新行。在我们在更多的
详细讨论 named.boot 的格式以前,我们将看一下在图中被给的 vlager 样品文件。

Figure: The named.boot file for vlager.


;
; /etc/named.boot file for vlager.vbrew.com
;
directory /var/named
;
; domain file
;---------------------------------------------------
cache . named.ca
primary vbrew.com named.hosts
primary 0.0.127.in-addr.arpa named.local
primary 72.191.in-addr.arpa named.rev


缓存和在这个例子被显示出的主要的命令装载信息进入命名。这个信息来自第二个参数中被指定了的主人文件。
他们包含 DNS 资源记录的文本表示,我们将在下面看到。



在这个例子中,我们为三个域设置了作为主要名字服务器的命名,在文件末尾由主要的语句显示了。这些行的第
一行,例如,指示命名为 vbrew.com 充当一个主要的服务者,从文件 named.hosts中找到地区数据。目录关键词告
诉它所有的地区文件位于 /var/named中 。



缓存入口是很特殊的,并且应该出现在所有运行一个名字服务器的机器上。它的功能有两个:它指示命名启用它
的缓存,并且从指定的缓存文件中装载根命名服务器提示(在我们的例子中的 named.ca )。我们将在下面回到名
字服务器提示。



这有你能在 named.boot 中使用的最重要的选择的一张表:

目录

这个指定地区文件居住的一个目录。文件的名字可以相对这个目录被给出。若干目录可以由再三地使用目录被指定。
根据 Linux 文件系统标准,这应该是 /var/named 。

主要

这个作为一个参数得到一个域名和一个文件名字,声明本地服务器对于命名的域有权威。作为一个主要的服务器,
从给出的主人文件装载地区信息。通常,这里总是在每个引导文件中至少有一个主要的入口,也就是为网络
127.0.0.0的倒转映射,它是本地的 loopback 网络。

次要的

这个语句作为一个参数的域名,一张地址表,和一个文件名。它声明本地服务器为指定领域的一个次要的主人服
务器。一个次要的服务器也在域上保持权威的数据,但是它不从文件中收集它,但是试图从主要的服务器下载它。
至少一个主要服务器的IP地址必须这样被给在命名的地址表上。本地的服务器将依次联系他们每一个直到它成功
地转移地区数据库,然后它被存储在作为 第三个参数被给出的备份文件中。如果主要的服务器没有反应,地区数
据会从从备份文件中重新得到。然后命名将试图在常规的间隔中更新地区数据。这解释在下面,它与 SOA 资源
记录类型相关联。

缓存

这个作为参数得到域和一个文件名。这个文件包含根服务器提示,那是指向根名字服务器的一张记录表。仅仅 NS
和一个记录将被认出。域参数通常是根域名“.”。

这个信息是绝对关键命名:如果缓存语句不在引导文件中发生,命名根本将不开发本地的缓存。这将严重地退化执
行和增加网络负担,如果查询的下一个服务器不在本地的网上。而且,命名将不能到达任何根命名服务器,这样它
除了那些权威则不会解决任何地址。这条规则的一个例外是当使用运送服务器时( cf forwarders 选择在下面)。

forwarders

这个语句作为一个参数得到一张地址表。这张表上的IP地址指定一张可查询的命名服务器表,如果它不能从它的本
地缓存解决询问。他们有序的经过实验,直到他们中的一个对查询做出反应。

奴隶

这个陈述使名字服务器成为一个奴隶服务器。就是说,它决不会自己执行递归的询问,只是把他们提交给
forwarders 语句被指定了的服务器。



有两个选择我们将不在这里描述,是 分类表 和领域。另外,有两条指令可以在地区数据库文件中被使用。这些是
$INCLUDE 和 $ORIGIN。因为他们很少被需求,我们也将不在这里描述他们。