一、了解DNS相关概念

  DNS是一个分布式数据库,在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户机/服务器模式在整个网络上存取。通过采用复制技术和缓存技术使得整个数据库稳定可靠的同时,又拥有良好的性能。

  DNS服务器即运行DNS服务器程序的计算机,它储存了DNS数据库信息。DNS服务器将尝试解析客户机的查询请求。在解答查询时,如果DNS服务器能提供所请求的信息。就直接回应解析结果,如果该DNS服务器没有对应的域名信息,则为客户机提供另一个能帮助解析查询的服务器地址。如果以上两种请求均失败,则回应客户机没有所请求的信息或请求的信息不存在。

  DNS服务器的主要作用就是维护一个计算机名与IP地址的对应关系数据库,主要为客户端网络程序提供以下两个方面的解析功能:

  正向解析:将计算机名称解析为对应的IP地址。

  逆向解析:将计算机的IP地址解析为对应的域名。

二、DNS查询方法

递归查询

迭代查询

三、DNS服务器安装

1、BIND:它是一款实现DNS服务器的开放源码软件,包括下面三个部分:

DNS服务器

DNS解析库

测试服务器的软件工具

2、使用RPM方式安装bind包

1) BIND域名相关的主要软件包如下:

bind-9.2.0-8.i386.rpm(BIND服务器软件包) 
caching-nameserver-7.2-1.noarch.rpm(DNS高速缓存服务器软件包) 
bind-utils-9.2.0-8.i386.rpm(DNS测试程序软件包) 

bind-chroot-9.3.3.7.e15.i386.rpm (为bind提供伪装的根目录,以增强安全性 奖/var/named.chroot目录作为BIND的根目录)

2)进入到Media的DVD的Server目录下,find 命令很容易找到三个软件包

rpm -ivh命令安装

3)BIND服务控制:
service   service-name    start/stop/restart/status

四、BIND的简单配置

1、主配置文件

/etc/named.conf 用于设置DNS全局参数,指定区域文件名称及其保存路径

/var/named/named.ca 指向根域名服务器,用户高速缓存服务器的初始配置

正向和反向区域数据文件保存路径都必须是/var/named目录

1)首先在/etc目录下创建主配置文件named.conf :

touch /etc/named.conf

2)编辑主配置文件:

options {    #options 语句定义全局参数,只能在配置文件中出现一次。

    directory "/var/named";  #设置named要读写数据文件的路径。directory选项定义了DNS区域数据文件的路径,配置文件中后续的语句如果只指定文件名没有给出路                                                  #径,则默认此路径。

    allow-query {any ;};  #允许任何客户端的查询请求

};



zone "." IN {    #创建根区域

    type hint;  #设置根区域的服务器类型为高速缓存服务器,当服务器启动的时候,能找到根DNS服务器并得到它的最新列表。

    file "named.ca"  #指定根区域的数据文件名称为"named.ca",包括了internet上的根服务器的对应IP地址。BIND根据该文件得到根服务器的IP地址。

};



zone "sina.com" IN {  #创建正向解析区域

  type master;  #主服务器

  file "sina.com.zone";  #指定正向解析区域的数据文件名称为 "sina.com.zone"

  allow-update {none; };   #

};



zone "122.168.192.in-addr.arpa" IN {  #创建反向解析区域

  type master;  #主服务器

  file "122.168.192.in-addr.arpa.zone";  #指定反向解析区域的数据文件名称为  "122.168.192.in-addr-arpa.zone"
  allow-update {none; };   #

};

2、获取根区域数据文件:

touch /var/named/named.ca

dig > /var/named/named.ca  (获取根DNS服务器目录并写入named.ca)

可以使用cat /var/named/named.ca命令查看文件内容

3、获取并编辑正向区域数据文件

touch /var/named/sina.com.zone

vi /var/named/sina.com.zone

编辑:

$TTL   86400  #生存周期,表示解析的地址在数据库中缓存的时间
@      IN     SOA    dns.sina.com.  root (  #@表示本域   SOA表示其实授权记录  dns.sina.com.表示本区域的授权域名服务器,应是本区

                                #域的域名服务器的完全合格域名
               42                     ; serial (d. adams)   (序列号)
                   3H                    ; refresh                (3小时更新)
                   15M                  ; retry                   (15分钟重试)
                     1W                   ; expiry                 (1周)从服务器上数据保存的最长时间
                     1D                    ; minimum            (1天)
)

@              IN      NS    dns.sina.com.   #本区域的DNS服务器的完全合格域名
dns.sina.com.      IN      A      192.168.0.8   #计算机主机域名和IP地址的绑定
game               IN      A      192.168.0.8

  

4、获取并编辑反向区域数据文件:

touch /var/named/122.168.192.in-addr.arpa.zone

vi /var/named/122.168.192.in-addr.arpa.zone

 

$TTL     86400

@       IN    SOA    dns.sina.com.  root (

            42
            200000
            14400
            360000
            86400 )

@      IN    NS    dns.sina.com.
8      IN    PTR    dns.sina.com.
2      IN     PTR    game.sina.com

  

五、DNS服务的简单测试

1、为计算机指定DNS服务器

vi /etc/resolv.conf

修改nameserver 192.168.122.1

2、service named restart

3、nslookup 

输入匹配的主机域名或者IP测试。

 

*****第一次配置的时候,顺手把chroot安上了...然后.../etc和/var的配置文件就失效了...然后...惨淡的教训..

*****反向解析一直失败....持续失败......

吼吼...

再次被qu大神解救...

反向解析区域的文件名全部改成这个...122.168.192.in-addr.arpa.zone..应该是固定格式的吧...

然后测试该文件里绑定的IP ,如果是dns.sina.com.就会出现这个域名,如果是game.sina.com就会是game.sina.com.122.168.192.in-addr.arpa.zone这么奇怪的域名呢....

讲道理应该是会加好看的后缀而不是这么奇怪的吧...

posted on 2016-06-20 21:56  小小八  阅读(374)  评论(0编辑  收藏  举报