dns解析过程:

如图所示,PC1主机的域名为www.cisco.com, ip地址为1.1.1.1 ,PC2主机的域名为www.kernel.org,ip地址为2.2.2.2 。现以PC1访问PC2的过程来介绍dns解析过程。

1.在PC1的浏览器上输入www.kernel.com,PC1先查看自己的dns缓存记录,若缓存中有该记录,直接将www.kernel.org 解析成ip地址,进而通过该ip地址进行访问。

2.若PC1的缓存中没有该条记录,则将该域名发送给自己指定的dns服务器dns6.

3.dns6查看自己的dns缓存,若缓存中有www.kernel.org   的条目,则将条目对应的ip地址发送给主机PC1。

4.若dns6 上没有www.kernel.org  的缓存,则向它的上一级dns2服务器进行查询。

5.dns2查看自己的缓存是否存在www.kernel.org  条目,若有则将ip地址发送给dns6,由dns6发送给PC1主机。若dns2服务器的缓存内也没有该条记录,dns2则向上一级的根dns1查询。

6.dns1收到请求后,检查域名www.kernel.org 发现它的顶级域名为org,而自己知道管理org区域的dns服务器为dns4,就将dns4的ip地址发送给dns2。

7.dns2得到dns4de ip后,向dns4查询www.kernel.org 的信息,dns4检查域名结构发现是到达kernel组织的请求,将负责kernel区域的dns服务器dns7的ip地址发送给dns2。

8.dns2得到dns7的地州,将查询请求发送到dns7 ,查询www.kernel.org,dns7 检查域名结构,发现请求的是自己管理的一台主机的域名www.kernel.org  ,将该主机的ip地址发送给dns2 ,dns2将该条记录记录到自己的dns缓存内,以备将来使用,同时将该ip地址发送给dns6,dns6同样将该条记录记录到自己的dns缓存内,同时将ip地址发送给PC1,这样PC1就得到了www.kernel.org的ip地址。

 

案例一:

实验要求:

有3台dns服务器,两台dns服务器dns server1 和 dns server 2 为linux服务器,另一台为windows sever2008 服务器。要求windows dns server 与dns server 1互相备份, dns server 1管理父域 abc.com和子域bj.abc.com ,dns server 2 管理子域sh.abc.com, dns server 1授权dns server 2 来管理子域sh.abc.com;在dns server 2上做根提示和转发(有条件和无条件转发)使子域sh.abc.com内的主机能够解析父域 abc.com和子域bj.abc.com的主机。

拓扑示意图:

clip_p_w_picpath002

Linux DNS Server 1 配置:

1.新建挂载点/mnt/cdrom ,将光盘挂载到挂载点上

clip_p_w_picpath004

2.安装域名解析软件:

bind-9.3.6-4.P1.el5.i386.rpm 主程序软件

bind-chroot-9.3.6-4.P1.el5.i386.rpm 安全软件

caching-nameserver-9.3.6-4.P1.el5.i386.rpm 生成caching-only只做缓存的服务器,以及生成配置文件named.conf的模版

clip_p_w_picpath006

clip_p_w_picpath008

clip_p_w_picpath010

3.将/var/named/chroot/etc/named.caching-nameserver.conf 复制为 named.conf,复制时要加上-p 参数,这样named.conf 的权限和所有者,所属组就相同了。

clip_p_w_picpath012

4.编辑bind的配置文件named.conf

clip_p_w_picpath014

5.检查named.conf配置文件是否有错误:named-checkconf named.conf

clip_p_w_picpath016

6.编辑区域声明文件:named.rfc1912.zones

clip_p_w_picpath018

7.产生区域文件,由于在上步的区域声明文件中指明了两个区域文件,切换到/var/named/chroot/var/named 将localdomain.zone 复制成abc.com.zone和bj.abc.com.zone,要加-p 选项

clip_p_w_picpath020

8.编辑abc.com.zone文件

clip_p_w_picpath022

编辑bj.abc.com.zone

clip_p_w_picpath024

Linux DNS Server2 配置:

1.新建挂载点/mnt/cdrom ,将光盘挂载到挂载点上

clip_p_w_picpath025

2.安装域名解析软件:

bind-9.3.6-4.P1.el5.i386.rpm 主程序软件

bind-chroot-9.3.6-4.P1.el5.i386.rpm 安全软件

caching-nameserver-9.3.6-4.P1.el5.i386.rpm 生成caching-only只做缓存的服务器,以及生成配置文件named.conf的模版

clip_p_w_picpath026

clip_p_w_picpath008[1]

clip_p_w_picpath027

3.将/var/named/chroot/etc/named.caching-nameserver.conf 复制为 named.conf,复制时要加上-p 参数,这样named.conf 的权限和所有者,所属组就相同了。

clip_p_w_picpath028

4.编辑bind的配置文件named.conf

clip_p_w_picpath029

5.检查named.conf配置文件是否有错误:named-checkconf named.conf

clip_p_w_picpath030

6.编辑区域声明文件:named.rfc1912.zones

clip_p_w_picpath032

7.切换到/var/named/chroot/var/named,将localdomain.zone 拷贝成 sh.abc.com.zone

cp -p localdomain.zone sh.abc.com.zone

clip_p_w_picpath034

windows DNS Server配置:

1.安装dns服务器

clip_p_w_picpath036

2.打开DNS管理器,右击主机名新建区域,使该服务器可以复制具有相同名称的主dns的区域内的记录

clip_p_w_picpath038

3.由于该服务器用作DNS Server 1的备份服务器,所以在此选择新建辅助区域

clip_p_w_picpath039

4.选择正向查找区域

clip_p_w_picpath040

5.该辅助dns服务器负责的区域,要与主dns服务器上的区域名称相同。

clip_p_w_picpath041

6.写出该服务器复制主dns服务器的ip地址

clip_p_w_picpath042

7.同理,新建区域bj.abc.com,使该辅助dns服务器可以复制主dns服务器上相同区域名称的记录。

clip_p_w_picpath043

8.写出该服务器复制主dns服务器的ip地址

clip_p_w_picpath042[1]

9.刷新,可以看到已经复制了主dns服务器的区域abc.com和bj.abc.com的记录

clip_p_w_picpath045

clip_p_w_picpath047

现在拿一台测试PC,将其dns指向父域dns192.168.101.250

解析父域内的主机

clip_p_w_picpath049

解析子域bj.abc.com内的主机

clip_p_w_picpath051

解析子域sh.abc.com区域内的主机

clip_p_w_picpath053

将该测试PC的dns指向子域sh.abc.com的ip 192.168.101.249。

清空dns缓存

clip_p_w_picpath055

解析该区域内的一台主机

clip_p_w_picpath057

解析父域abc.com区域内的主机,解析失败

clip_p_w_picpath059

可以在管理区域sh.abc.com饿dns服务器上配置根提示或者转发器 使dns2不能解析的转发到其他dns服务器上进行解析,下面先配置根提示:

在/var/named/chroot/var/named下有一个named.ca文件

clip_p_w_picpath061

编辑该文件,编辑后重新加载文件

clip_p_w_picpath063

clip_p_w_picpath064

再次解析,能够成功解析

clip_p_w_picpath066

clip_p_w_picpath068

下面设置转发,使dns2无法解析的域名发送到dns1。

转发分为有条件转发和无条件转发

首先删除刚设置的根提示转发到dns1的条目,修改named.conf文件(文件named.rfc1912不行) (无条件转发

clip_p_w_picpath070

重启服务,或rndc reload

clip_p_w_picpath072

clip_p_w_picpath074

或者是修改named.rfc1912.zones文件(有条件转发

clip_p_w_picpath076

clip_p_w_picpath078

clip_p_w_picpath080

 

 

案例二:

 

一、linux作为主dns,windows server2003作为辅助dns

clip_p_w_picpath002[2]

1.在linux上配置dns服务器,管理的区域名为:abc.com

clip_p_w_picpath004[2]

clip_p_w_picpath006[2]

clip_p_w_picpath008[2]

clip_p_w_picpath010[2]

clip_p_w_picpath012[3]

clip_p_w_picpath014[6]

更改刷新策略,便于验证

clip_p_w_picpath016[3]

禁用防火墙

clip_p_w_picpath018[6]

在windows上安装dns辅助服务器

1.

clip_p_w_picpath020[2]

2.

clip_p_w_picpath022[3]

3.

clip_p_w_picpath024[2]

4.此处为辅助dns,所以区域名称应和主dns区域相同

clip_p_w_picpath026[2]

5。主dns服务器地址

clip_p_w_picpath028[2]

6.

clip_p_w_picpath030[2]

7.改变序列号

clip_p_w_picpath032[3]

8.rndc reload

clip_p_w_picpath034[2]

9.日志文件,显示完全备份完成

clip_p_w_picpath036[2]

10.

clip_p_w_picpath038[2]

11.改变序列号,增加一条,保存,rndc reload

clip_p_w_picpath040

12.

clip_p_w_picpath042

clip_p_w_picpath044

在当前情况下,所有的辅助dns都能和主dns进行同步,不×××全。要对辅助dns进行限制

13.man 5 named.conf,查找关于allow的关键字,在options下找到allow-transfer{},将其添加到named.conf中。或者是在named.rfc1912.zones中区域abc.com中添加相同的语句

:allow-transfer { 192.168.2.102; };

clip_p_w_picpath046

clip_p_w_picpath048

man 5 named.conf 查找zone,可知在named.rfc1912.zones也可添加该语句

clip_p_w_picpath050

14 此时只有IP地址为192.168.2.102的辅助dns才能和主dns同步

再次更改序列号,但是辅助dns ip地址还是2.101

clip_p_w_picpath052

15.可以发现,同步被拒绝

clip_p_w_picpath054

clip_p_w_picpath056

16.。将辅助dns ip 地址给位192.168.2.102,,更改序列号,再次rndc reload

clip_p_w_picpath058

17.

clip_p_w_picpath060

clip_p_w_picpath062

 

 

案例三:

二、linux作为辅助dns,windows server2003作为主dns

clip_p_w_picpath064

1.在windows20003上安装DNS服务器

clip_p_w_picpath066[2]

clip_p_w_picpath068[2]

clip_p_w_picpath070[2]

clip_p_w_picpath072[2]

clip_p_w_picpath074[2]

2.在linux上安装bind软件

clip_p_w_picpath076[2]

clip_p_w_picpath078[2]

3. cp –p named.caching-nameserver.conf named.conf ,编辑named.conf

clip_p_w_picpath080[3]

4.编辑named.rfc1912.zones

clip_p_w_picpath082

5.重启dns服务,打开日志,切换到/var/named/chroot/var/named/slaves

clip_p_w_picpath084

clip_p_w_picpath086

在windows中dns中增加记录

clip_p_w_picpath088

clip_p_w_picpath090

 

案例四:

三 、linux dns管理父域,windows dns管理子域

拓扑图

clip_p_w_picpath092

1.在linux上配置dns服务器

clip_p_w_picpath094

2.

clip_p_w_picpath096

clip_p_w_picpath098

3. vim named.rfc1912.zones ,新建区域 父域abc.com 和子域 bj.abc.com

clip_p_w_picpath100

4.分别编辑两个区域文件

clip_p_w_picpath102

编辑abc.com.db文件

clip_p_w_picpath104

5.

clip_p_w_picpath106

clip_p_w_picpath108

6.该DNS服务器需要对管理子域的windows dns服务器进行授权。

在父域的区域文件中添加语句:

sh.abc.com. IN NS ns.sh.abc.com.

ns.sh.abc.com. IN A 192.168.2.101

clip_p_w_picpath110

7.对dns2 配置

clip_p_w_picpath112

8.

clip_p_w_picpath114

9.

clip_p_w_picpath116

10.

clip_p_w_picpath118

11.

clip_p_w_picpath120

12 。另外找一台PC进行测试

先将DNS指向dns1

clip_p_w_picpath122

13.

clip_p_w_picpath124

clip_p_w_picpath126

clip_p_w_picpath128

在dns1上询问dns2管理的域

clip_p_w_picpath130

14.更改验证PC的dns指向,指向dns2

clip_p_w_picpath132

clip_p_w_picpath134

15。此时解析sh.abc.com区域,能够解析

clip_p_w_picpath136

16.要是对父域abc.com 和bj.abc.com区域进行解析,发现无法解析

clip_p_w_picpath138

17.这是由于在sh.abc.com上未设置上层dns的位置。

有两种方式:一.根提示的方式。 二.转发器

一.根提示的方式

在windows server 2003 中

clip_p_w_picpath140

clip_p_w_picpath142

clip_p_w_picpath144

此时在验证PC 上,解析成功

clip_p_w_picpath146

clip_p_w_picpath148

二.转发器

删除刚刚配置的根提示配置。确保验证PC 不再能解析父域abc.com 和bj.abc.com 区域。

clip_p_w_picpath149

clip_p_w_picpath151

clip_p_w_picpath153

clip_p_w_picpath155

clip_p_w_picpath157

18.使用转发器,如果按照当前配置,全部dns请求都将转发到ns.abc.com. 也就是192.168.2.100 服务器进行处理。如果有用户请求该windows server 2003 dns 服务器对百度等网站进行请求,该dns也将把不能解析的请求发送到192.168.2.100 服务器,则将无法解析,所以应该对转发器进行修改。

原来的配置

clip_p_w_picpath159

更改为

clip_p_w_picpath161

clip_p_w_picpath163

只将查找abc.com区域的才会转发到192.168.2.100

 

案例五:

四 、windows dns管理父域,linux dns管理子域

拓扑图

clip_p_w_picpath165

1.在windows 2k3上安装dns域名解析服务

clip_p_w_picpath167

2.

clip_p_w_picpath169

3.

clip_p_w_picpath171

clip_p_w_picpath173

4.新建主要区域bj.abc.com

clip_p_w_picpath175

5.

clip_p_w_picpath177

6.

clip_p_w_picpath179

7.在linux上配置dns服务器,创建区域sh.abc.com

clip_p_w_picpath181

2.

clip_p_w_picpath183

3.

clip_p_w_picpath185

clip_p_w_picpath187

4.

clip_p_w_picpath189

5.

clip_p_w_picpath191