整个hteret大家庭中连接了数以亿计的服务器个人主机,其中大部分的网站,部件等服务器都使用了域名形式的地址,如www.google.com.mail 163.com 等。很显然这种地址形式要比使月01231317202103 7A 的户地址形式更加直观而且更容易被用户记住.

DNS系统在网络中的

作用处是维护着一个地址数现连,其中记录了各种主机城名与户地址的技关系上内便光安户租序现供正向的地址解析服务正向解析根据域名查IP 地址即将指定的域名解析为相对应的P地址,域名的正向解

析是DNS服务器最基本的功能也是最常用的功能,反向解析根据IP 地址查域名,即将指定的P地址解析为相对应的域名,域名的反向解析不是很常用,只在一些特殊场合才会用到如可用于反垃圾邮件的验证。

实际上,每一台Di 服务器都只负责管理一个有股范围一个或几个域内的生机端名和IP地址的对应关系,这些特定的DNS城或P 地址段称为“20 区域,根据地址解桥的方向不同

DNS 区域相应地分为正向区域(包含域名到P地址的解析记录和反向区域包含P地址到域名

的解析记录)。

根据所管理的区域地址数据的来源不同DNS 系统可以分为不同的类型,在同一台DNS 服务

器中,相对于不同的区域来说,也拥有不同的身份,常见的几种类型如下。

缓存域名服务器: 只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但

是没有自己控制的区域地址数据。构建缓存域名服务器时必须设置根域或指定其他DNS

服务器作为解析来源。

主域名服务器维护某一个特定DNS区域的地数据库,对其中的]解析记录具有自控

制权,是指定区域中唯一存在的权威服务器、官方服务器。构建主域名服务器时,需要自行建立所负责区域的地址数据文件,从域名服务器,与主域名服务器提供完全相同的DN 解析服务通常用于DNS服务器的热备份。对客户机来说。无论使用主域名服务器还是从域名服务器,查询的结果都是一

样的,关键区别在于,从城名服务器提供的解析结果并不是由自己决定的,而是来自于

主域名服务器,构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自

动同步区域的地址数据库

以上所述主,从服务器的角色只是针对某一个特定的DNS 区域来说的。例如,同一台DNS服务器

可以是china.net 区域的主域名服务器同时也可以是us.cn 区域的从域名服务器。

  1. 使用YUM仓库安装DNS软件包

[root@localhost ~]# yum install -y bind bind-utils

各软件包的主要作用如下。

bind:提供了域名服务的主要程序及相关文件。
bind-utils: 提供了对DNS 服务器的测试工具程序,如nslookup 等。
bind-libs: 提供了bind.bind-utils 需要使用的库函数。
bind-chroot: 为BIND 服务提供一个伪装的根目录(将/var/named/chroot/文件夹作力
的根目录),以提高安全性。

2.查询DNS所在的工作目录,配置文件等

[root@localhost ~]# rpm -qc bind

/etc/logrotate.d/named

/etc/named.conf

/etc/named.iscdlv.key

/etc/named.rfc1912.zones

/etc/named.root.key

/etc/rndc.conf

/etc/rndc.key

/etc/sysconfig/named

/var/named/named.ca

/var/named/named.empty

/var/named/named.localhost

/var/named/named.loopback

3.编辑dns的配置文件

[root@localhost ~]# vim /etc/named.conf

listen-on port 53 { any; };

allow-query     { any; };

 主配置文件named .conf 通常位于/etc/目录下,在named .conf 文件中,主要包括全后配置

区域配置两个部分,每一条配置记错录的行尾以分号”,表示结束,以“# ”号或。/ /”开始的
部分表示注释文字(大段注释可以使用“/*.....*/" 的格式)。
1) 全局配置部分
全局配置参数包括在形如options 1;的大括号中,如可以设置监听的地址和端口、区域
数据文件存放的目录,允许哪些客户机查询等。 

 options 

liscen-on port 53 173.16.16.1; 
//监听地址和端口
directory "/var/named";
/ 区城数据文件的默认存放位置
alloqguery 192.168.1.0724; 17 0.16.16.0 124;1.//元许使用本D5服务的阿度
上述配置内容中,除了dreclary 项通常会保留以外,其他的配置项都可以省略,若不指定
isten-on配置项时,named默认在所有接口的UDP 53端口监听服务,不指定日low query 配置项
时,默认会响应所有客户机的查询请求,

4.修改区域配置文件

[root@localhost ~]# vim /etc/named.rfc1912.zones

在末尾添加以下内容

zone "benet.com" IN {

        type master;

        file "benet.com.zone";

        allow-update { none; };

};

zone "accp.com" IN {

        type master;

        file "accp.com.zone";

        allow-update { none; };

};

区域配置参数使用~zone.....{ 的配置格式,一台DNS 服务器可以为多个区域提供解

析,因此在named conf文件中也可以有很多个zone配置段,区域类按照解析方向可分为正向区

域、反向区域,

// 正向"benet.com“区域

zone "benet.com" IN 1

//类型为主区城

t ype mas te r ;

//区城数据文件为benet.com.zone

file "benet.com.zone";

/1允许下载的从服务器地址

allow-transferI 173.16.16.2; 1;

zone "16.16.173.in-addr.arpa" INI //反向"13.16.16.0/24“区城

t ype ma s te ;

file "173.16.16.arpa";

//区城数据文件为173.16.16.arpa

在上述配置内容中,有几个地方需要注意。

每个zone区域都是可选的(包括根域、回环域、反向域) 具体根据实际需要而定zone

配置部分的“N 关键字也可以省略。

反向区域的名称由倒序的网络地址和。in-addrapa 组合而成._例如,对于

192.168.10/24网段,其反向区域名称表示为“168.192.in-add apa.

file配置项用于指定实际的区域数据文件,文件名称由管理员自行设置,

区域配置中的部分参数(如allew- transfer) 也可以 放在全面置里,

修改完主配置文件以后,可以执行named-checkconf 命令对named conf 文件进行语法检查

如果文件中没有语法错误,该命令将不给出任何提示反之,则会给出相应的提示信息,只要根

据出错提示修正文件中的错误即可。带一2 选项的named-checkconf 命令还可以尝试加载主配

置文件中对应的区域数据库文件,并检查该文件是否存在问题。例如,当出现“lenotfound

的错误时,表示找不到对应的文件。

关于named.conf 文件中各种配置项的详细说明。可以执行nam named conf 查看手册页

5.修改区域数据配置文件

将原有的模版拷贝至新添加的模版(保留原有权限)

[root@localhost named]# cp -p named.localhost benet.com.zone

6.编辑新的模板

$TTL 1D

@       IN SOA  @ rname.invalid. (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      @

        A       127.0.0.1

        AAAA    ::1

        PTR     localhost.

www     IN A    192.168.100.70

将benet拷贝成accp

[root@localhost named]# cp -p benet.com.zone accp.com.zone

收重区城名称。管理部箱,以及为从域名服务指定更新参数。

STTL 86400                    有效解析记录的生存周期

@ IN SOA benet.com.adnin.benet.com.        SOA 标记、域名、管理邮箱

3H                        刷新时间,重新下载地址数据的间隔

2011030501                    更新序列号,可以是10 位以内的整数

15M                         重试延时,下载失败后的重试间隔

IW                        失效时间,超过该时间仍无法下载则放弃

1D                        无效解析记录的生存周期

上达配置内容中,时间单位默认为秒,也可以使用以下单位,M (分。H (时),W(周。

"benet.com."."admin.benet.com

天),文件中的'@ 符号表示当前的DNS区域名,相当于

表示域管理员的电子邮箱地址(由于’@ 符号已有其他含义,因此将邮件地址中的~@”用

代替),SOA记录中的更新序列号用来同步主、从服务器的区域数据,当从服务器判断区域更新时,

若发现主服务器中的序列号与本地区域数据中的序列号相同,则不会进行下载。

2) 地址解析记录部分

地址解析记录用来设置DNS 区域内的域名,P 地址映射关系,包括正向解析记录和反向解析

记录。反向解析记录只能用在反向区域数据文件中。

@     IN    NS    ns1.benet.com.

       IN    MX 10   mail.benet.com.

nsl    IN    A    58.119.74.203

www    IN    A    173.16.16.1

mail    IN      A    173.16.16.4

ftp    IN    CNAME    www

上述配置内容中,用到以下四种常见的地址解析记录,

NS域名服务器(Name Server) 记录当前区域的DNS 服务器的主机地址,

以邮件交换(Mail Exchange)记录当前区域的部件服务器的主机地址,数字10 表示当

有多个以记录时选择部件服务器的优先级,数字越大优先级越低。

A 地址(address) 记录正向服析条目。

CNAME别名(Canonical Name):记录一个正向解析的其它名称。

7.启动服务

[root@localhost ~]# service named start (red hat 6)

[root@localhost ~]# systemctl start named (red hat 7)

8.指定dns地址

[root@localhost named]# echo "nameserver 192.168.100.70" > /etc/resolv.conf

8.验证

[root@localhost named]# nslookup www.benet.com

Server:         192.168.100.70

Address:        192.168.100.70#53

Name:   www.benet.com

Address: 192.168.100.70

[root@localhost named]# nslookup www.accp.com

Server:         192.168.100.70

Address:        192.168.100.70#53

Name:   www.accp.com

Address: 192.168.100.70