一.BIND

现今使用最晚广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早由伯克利大学的一名学生编写,现在最新的版本是9,由ISC(Internet Systems Consortium)编写和维护。

  1.BIND支持现今绝大多数的操作系统(Linux、UNIX、Mac、Windows)

  2.BIND服务的名称称之为named

  3.我们可以通过以下命令安装BIND:

    yum install -y bind bind-chroot bind-utils

DNS默认使用UDP、TCP协议,使用端口号为53(domain),953(rndc)

二.BIND配置文件

BIND配置文件保存在两个主要位置:

  /etc/named.conf - BIND服务主配置文件

  /var/named/ - zone文件

如果安装了bind-chroot,BIND会被封装到一个伪根目录内,配置文件的位置变为:

  /var/named/chroot/etc/named.conf -BIND服务主配置文件

  /var/named/chroot/var/named/ -zone文件

chroot是通过将相关文件封装在一个伪根目录内,已达到安全防护的目的,一旦该程序被攻破,将只能访问伪根目录内的内容,而不是真实的根目录

不同于其他服务,BIND在安装后不会有预置的配置文件,但是在BIND的文档文件夹内(/usr/share/doc/bind-9.8.2),BIND为我们提供了配置文件模板,我们可以直接拷贝过来:

  cp -rv /usr/share/doc/bind-9.8.2/sample/etc/* /var/named/chroot/etc

  cp -rv /usr/share/doc/bind-9.8.2/sample/var/* /var/named/chroot/var

示例中的主配置文件内容较多,实验环境哦我们可以删减掉不需要的内容,最小化配置如下:

  

1 options{
2 
3       listion-on port 53{127.0.0.1; };
4 
5       directory "/var/named";
6 
7       };

三.域主服务器

一个域的主服务器(master)是这个域的信息的权威服务器,所以这个域的信息都是由域的主服务器控制,配置一个域的主服务器需要以下几个步骤:

  1.在bind的主配置文件中添加该域的定义

  3.在/var/named/chroot/var/named中创建该域的zone文件

  5.编辑zone文件,添加需要的信息

  7.启动bind服务或使bind刷新配置

  9.使用host或dig命令检测域信息是否正常

四.配置域主服务器

在bind的主配置文件中添加域linuxcast.net的定义:

  1.配置文件位置:

  /var/named/chroot/etc/named.conf

  2.在主配置文件中添加一行域的zone的定义:

1 zone "linuxcast.net"{ 
2         type master; 
3         file "linuxcast.net.zone"; 
4     };     

 

为定义的域添加zone配置文件:

  1.zone文件的位置:

  /var/named/chroot/var/named/linuxcast.net.zone

  2.zone文件内容:

  zone文件内容比较复杂,手工输入极容易输错,所以一般使用默认的named.localhost配置文件作为模版:

    cp named.localhost  linuxcast.net.zone

    添加一个资源记录(RR):

    www IN A 192.1.1.1

    1.启动bind服务或刷新配置:

     service named start

     service named reload

    2.将本机的dns配置指向本机:

     /etc/resolv.conf:

     nameserver 127.0.0.1

    3.使用命令host或dig验证dns配置是否成功:

     host www.linuxcast.net

     dig www.linuxcast.net

五.错误排查

DNS配置因为语法规则较为晦涩,所以极为容易出现配置错误,bind为我们提供了两个语法检测工具:

  1.命令named-checkconf 可以查看bind主配置文件的错误:

    named-checkconf /var/named/chroot/etc/named.conf

  2.命令named-checkzone 可以用来查看zone配置文件的错误:

    named-checkzone linuxcast.net linuxcast.net.zone

posted on 2016-11-30 15:05  加油AlwaysWin  阅读(439)  评论(0编辑  收藏  举报