创建dns服务器:UNIX下DNS服务器之创建篇(下)




  我们知道UNIX DNS最常用软件Software是BIND它源自U.C. Berkeley但现在则由Internet Software Consortium.负责BIND提供了解析器和名字软件Software解析器做实际查询工作而名字服务器则提供响应BIND将名字服务器分成 3个部分:主域名服务器包含了有关个域全部数据;辅助域名服务器则有效地从主域名服务器拷贝DNS数据库;(唯)高速缓冲服务器通过缓冲查询来建立例外DNS数据库只有主域名服务器和辅助域名服务器才被当作涉及特定域授权服务器
  
  下面以AIX UNIX系统为例来介绍说明主域名服务器、辅助域名服务器和UNIX DNS客户机创建来实现“规划和设计篇”域名结构例子
  
  、 主域名服务器创建
  
  创建主域名服务器步骤:
  创建named控制文件;
  创建域名区域文件;
  创建IP区域文件和本地IP区域文件;
  创建缓冲区文件;
  
  1、named控制文件
  named控制文件是/etc/named.boot(BIND4版本)在named启动时读入它介绍说明named使用所有数据存放位置named用这些数据创建域名服务器数据库
  named.boot文件内容如下图所示:
  
 

  directory项告诉named在/etc/named.boot文件中所列文件存放目录
  Do项介绍说明本地主机所在域名服务器用它作为缺省域
  Primay项表明本地主机named作为哪个域主域名服务器以及从哪个文件获得描述本域数据
  反向映射域名永远以“in-addr.arpa”结尾形成个域名IP地址必须反写这是IP地址最重要8位位组应排在第而域名表达方式和IP表达方式恰好相反即最低有效8位位组排在最前面每个物理网络应用个资源文件和的对应
  在cache记录项do域中圆点“.”表示末列在其他地方任何领域缓存Cache文件(cache file)允许缺省域中个主机和该域的外其他主机通信
  
  /etc/named.conf(BIND8版本)文件内容如下:
  
  options {
  directory "/etc";
  };
  
  zone "." IN {
  type h;
  file "named.ca";
  };
  
  zone "localhost" IN {
  type master;
  file "localhost.zone";
  allow-update { none; };
  };
  
  zone "0.0.127.in-addr.arpa" IN {
  type master;
  file "named.local";
  allow-update { none; };
  };
  
  zone "ghq.js.com" IN {
  type master;
  file "resolv.conf";
  allow-update { none; };
  };
  
  zone "1.32.10.in-addr.arpa" IN {
  type master;
  file "named.revip1";
  allow-update { none; };
  };
  
  zone "2.32.10.in-addr.arpa" IN {
  type master;
  file "named.revip2";
  allow-update { none; };
  };
  
  笔者认为在这里不用解释大家也会知道上面配置具体含义
  
  2、域名区域文件
  AIX系统提供了创建区域文件awk文件awk文件将读取系统/etc/hosts文件然后创建相应区域文件但是awk文件并不意味着能为每个环境建立个完美区域文件它仅提供个创建区域文件入门手段文件建立以后就可用文件编辑器根据需要修改或添加记录作为个例子用awk文件生成区域文件思路方法如下:
  # cd /usr/samples/tcpip
  # ./hosts.awk /etc/hosts >/etc/named.dc
  # ./addrs.awk /etc/hosts >/etc/named.revip1
  # ./addrs.awk /etc/hosts >/etc/named.revip2
  
  下面给出了个域名区域文件/etc/named.dc内容
  /etc/named.dc文件内容如下图所示:
  
 

  资源记录格式为:
  NAME TTL CLASS TYPE RDATA
  其中:
  NAME:介绍说明个域、区域、个主机名字或者主机别名等它必须在文件若该域为空则其值为前个资源记录NAME域值;
  TTL:信息存活时间以秒为单位99999999表示信息永远不会超时如果没有TTL值则把TTL缺省值设置为SOA记录Minimum项的值;
  CLASS:记录地址类型有IN和ANY两个值其中IN代表Intemet地址而ANY代表任何其他地址类;
  TYPE:资源记录类型合法类型有:
  SOA----Start of Authority (中央权威机构);
  NS----NameServer(域名服务器);
  A----Address(地址);
  HINFO----标准各字;
  MX----邮件
  RDATA:介绍说明特殊资源记录类型细节它有几个特殊:
  :----表示注释;
  .----用在名字域时若圆点后无具体内容则该圆点表示当前域;
  @ ----用在名字域时单个“@”表示当前域;
  ----圆括号用来接续不止数据项
  SOA表示管理机构所在地SOA记录表明:
  数据文件所在主机名字以及负责维护数据文件用户E-mini地址;
  serial --表示数据文件版本号当数据文件里数据修改时这个版本号应随的增加;
  refresh --检查数据是否需要刷新时间间隔以秒为单位为辅助域名服务器用;
  retry --辅助域名服务器在做刷新时无法连接到主域名服务器情况下辅助域名服务器等待时间间隔以秒为单位;
  expire --上限时间;用于辅助域名服务器当辅助域名服务器直不能和主域名服务器通信时辅助域名服务器刷新数据时间上限;
  minimum --缺省最小存活时间当其他项TTL值比此值小时用此值替代
  
  3、IP区域文件和本地IP区域文件
  IP Zone文件如下所示
  /etc/named .revip1文件内容下图3所示:
  
 

  本地IP Zone文件如下所示
  /etc/named.local文件内容如下:
  
  @ IN  NS  sys1.ghq.js.com
  1  IN  PTR localhost.ghq.js.com
  
  在DNS里域名形成种层次结构为了解析个地址系统从根向下针对名字中每个域查询域名服务器把主机名字翻译成主机IP地址
  
  IP区域文件合法资源记录类型是SOA、NS和PTR----域名指针(Do Name Poer)由于另些系统位于10.32.2网络因此IP区域文件必须有两个每个网络这两个文件都由/etc/hosts生成而/etc/hosts文件中包含了两个网络登记项因此必须用文本编辑将另网络登记项删掉只保留本地网络上主机地址 8位位组(把本地网络主机网络地址部分 8位位组也删掉)
  
  除了这个IP区域文件外还必须有个本地IP区域文件它包含网络127.0.0.1回送地址其合法资源记录类型为SOA、NS和PTR对于本地IP区域文件SOA记录不是必要但在域名区域文件和IP区域文件中是必要
  
  4、缓存Cache文件
  当个名字不能在本区域解析时named进程会和缓存Cache文件中所列其他域名服务器进行交互直到它解析出这个名字为止或者直至它查询了所有列出域名服务器为止
  /etc/named.ca 文件内容如下:
  
  .          999999  IN   NS   sys99.js.com
  sys99.js.com  999999  IN   A    10.32.7.99
  
  缓存Cache文件包含域名服务器地址这些域名服务器是更高级域权威域名服务器
  
   2、辅助域名服务器创建
  
  创建辅助域名服务器步骤如下:
  创建named控制文件;
  创建本地IP区域文件和缓存Cache文件
  
  1、named控制文件
  
  辅助域名服务器named控制文件和主域名服务器略有区别它比主域名服务器Named控制文件至少多个secondary项Secondary项表示本地named进程是本域辅助域名服务器它接收来自指定IP地址域信息并把它存放在指定文件中这个文件是主域名服务器备份文件
  
  /etc/named.boot(BIND4版本)文件内容如下图所示:
  
 

  若从其中个主域名服务器收到域信息新拷贝则named进程将更新那个域名服务器备份文件named进程第次启动时辅助域名服务器就主域名服务器信息;辅助域名服务器根据SOA记录规定刷新时间间隔去主域名服务器查询相关信息
  
  /etc/named.conf(BIND8版本)文件内容如下:
  
  options {
  directory "/etc";
  };
  
  zone "." IN {
  type h;
  file "named.ca";
  };
  
  zone "localhost" IN {
  type master;
  file "localhost.zone";
  allow-update { none; };
  };
  
  zone "0.0.127.in-addr.arpa" IN {
  type master;
  file "named.local";
  allow-update { none; };
  };
  
  zone " ghq.js.com " IN {
  // type master;
  type slave;
  // type后面值已经成为slave;
  file " named.dc.bak ";
  //file 后面也可以是别文件名不必和主域DNS服务器设置
  masters { 10.32.1.1; };
  //10.32.1.1 为主域DNS服务器IP地址
  };
  
  zone "1.10.32.in-addr.arpa" IN {
  // type master;
  type slave;
  // typ
Tags:  dns服务器 联想服务器unix unix服务器 创建dns服务器

延伸阅读

最新评论

发表评论