FreeBSD连载(38):配置缓冲或转发方式的named

2009-05-13 12:20:55来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


配置缓冲或转发方式的named
  在Internet中主要使用名字进行连接,因此网络中的DNS查询会十分频繁。很多情况下,会有大量且重复的DNS查询。尤其在使用拨号连接的条件下,由于名字服务器位于ISP端,即使是曾经查询过的名字,其信息仍然保存在线路的另一端的名字服务器的缓冲区内,重复的DNS查询将占据宝贵的线路带宽。并且DNS查询还往往使得网络连接软件不能正确获得超时信息,不能适时断开连接以节省电话连接时间。
  因此,最好的办法是将查询结果保存在本地计算机上,以避免重复查询造成的无谓的网络流量。虽然很多TCP/IP 客户机能够在本机内保存一个名字解析缓冲区,但这个缓冲区相对来讲太小了,起不到很有效的作用,然而如果要将这个缓冲区设置的较大,又不能及时刷新名字解析数据。要想很好的缓冲DNS数据,最好的缓冲区还是DNS服务器本身,因为DNS 的实现方式就是一种经常刷新的缓冲方式,并且named可以根据不同zone的不同设置,来实现数据刷新。
  因此,最简单的办法就是设置一个具备缓冲能力的名字服务器,它将能够用做名字解析的缓冲,这就要需要设置名字服务器的过程。

  • 在/etc/resolv.conf中,将127.0.0.1作为第一个可选服务器,其他DNS服务器作为备份,使得名字查询通过本地的名字服务器进行,以利用它的缓冲机制;
  • 在/etc/rc.conf中,将named_enable设置为”YES”,允许启动named,rc.conf中有关named的其他选项不需改变;
  • 改变到/etc/namedb目录下,运行make-localhost程序,这将产生针对本计算机的解析数据localhost.rev文件;
  • 修改/etc/namedb/named.conf文件,使其符合一个转发系统的要求。
  • 启动名字服务器,可以使用root身份直接执行named守护进程,并在rc.conf中更改named_enable的设置值。


  • 设置named.conf

  要成功配置named,最重要的一步就是改变配置文件named.conf,一个用于转发的设置文件应为:
options {
        directory "/var/namedb";
        datasize 20M;
        forward only;
        forwarders {
            202.102.224.68
        };
};
zone "." {
        type hint;
        file "named.root";
};
zone "0.0.127.in-addr.arpa" {
        type master;
        file "localhost.rev";
};
  这个设置文件中去除了任何注释项,named中使用与C++相同的注释方式,即用两个斜线来表示一行注释,而设置语句也类似C的语法。
  第一个语句options用于设置named的参数,directory指明named的工作目录为/etc /namedb,datasize用于设置缓冲区的大小,forward only和forwarders用于指明这个服务器只是一个转发服务器,并设置转发的名字服务器的地址。这两个转发选项不是必须设置的,不进行设置时named 就能很好的适应解析和缓冲任务。这样名字服务器初始时就从根名字服务器中获得信息,这些信息将保存在named的缓冲区内,此后就可以查询缓冲区内的相关服务器来获得进一步的名字解析。
  第二个语句用于设置根zone,这用于设置Internet上的根名字服务器,一切本地无法解析的数据将发送给那些根名字服务器进行解析,设置了工作目录下的named.root文件中记录了这些根名字服务器的地址,记录根名字服务器的文件名字也可能为root.hints。第三句定义了对127.0.0.0的反向查询的数据,0.0.12 7.in-addr.arpa为一个反向解析zone,其IP地址也是反序排列的,并且使用in-addr.arpa 后缀,而对应的反向解析数据在localhost.rev文件中定义。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD连载(37):DNS的体系结构

下一篇:FreeBSD连载(39):定义自己的名字服务