第四次作业.docx

上传人:b****5 文档编号:29078811 上传时间:2023-07-20 格式:DOCX 页数:15 大小:1.29MB
下载 相关 举报
第四次作业.docx_第1页
第1页 / 共15页
第四次作业.docx_第2页
第2页 / 共15页
第四次作业.docx_第3页
第3页 / 共15页
第四次作业.docx_第4页
第4页 / 共15页
第四次作业.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

第四次作业.docx

《第四次作业.docx》由会员分享,可在线阅读,更多相关《第四次作业.docx(15页珍藏版)》请在冰豆网上搜索。

第四次作业.docx

第四次作业

第4次作业:

以实验方式呈现并详细讲述DHCP、DNS的工作过程与原理

要求:

独立完成实验,切实掌握dhcp/dns工作原理;认真观察dhcp/dns工作过程中数据包的转发过程

批改完成计划:

第4周布置,第5周上交并批改

 

 

     DHCP,全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 BOOTP,它工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务器获取它们的配置信息的自举协议。

       DHCP使用客户端/服务器模式,请求配置信息的计算机叫做DHCP客户端,而提供信息的叫做DHCP的服务器。

DHCP为客户端分配地址的方法有三种:

手工配置、自动配置、动态配置。

       DHCP最重要的功能就是动态分配。

除了IP地址,DHCP分组还为客户端提供其他的配置信息,比如子网掩码。

这使得客户端无需用户动手就能自动配置连接网络。

【DHCP的工作流程】

    

      发现阶段,即DHCP客户机寻找DHCP服务器的阶段。

DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送DHCP discover发现信息来寻找DHCP服务器,即向地址255.255.255.255发送特定的广播信息。

网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。

 

       提供阶段,即DHCP服务器提供IP地址的阶段。

在网络中接收到DHCP discover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCP offer提供信息。

 

      选择阶段,即DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。

如果有多台DHCP服务器向DHCP客户机发来的DHCP offer提供信息,则DHCP客户机只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。

之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址。

 

      确认阶段,即DHCP服务器确认所提供的IP地址的阶段。

当DHCP服务器收到DHCP客户机回答的DHCP request请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCP ACK确认信息,告诉DHCP客户机可以使用它所提供的IP地址。

然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址。

 

      重新登录,以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。

当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ACK确认信息。

如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给DHCP客户机回答一个DHCP NACK否认信息。

当原来的DHCP客户机收到此DHCP NACK否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。

 

     更新租约,DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。

如果DHCP客户机要延长其IP租约,则必须更新其IP租约。

DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。

【DHCP的报文格式】

 

我们来介绍一下DHCP的报文格式,如图1,

 

 

OP

(1)

Htype

(1)

Hlen

(1)

Hops

(1)

TransactionID(4)

Seconds

(2)

Flags

(2)

Ciaddr(4)

Yiaddr(4)

Siaddr(4)

Giaddr(4)

Chaddr(16)

Sname(64)

File(128)

Options(variable)

(图1DHCP的报文格式)

OP:

若是client送给server的封包,设为1,反向为2;

Htype:

硬件类别,ethernet为1;

Hlen:

硬件长度,ethernet为6;

Hops:

若数据包需经过router传送,每站加1,若在同一网内,为0;

TransactionID:

事务ID,是个随机数,用于客户和服务器之间匹配请求和相应消息;

Seconds:

由用户指定的时间,指开始地址获取和更新进行后的时间;

Flags:

从0-15bits,最左一bit为1时表示server将以广播方式传送封包给client,其余尚未使用;

Ciaddr:

用户IP地址;

Yiaddr:

服务器分配给客户的IP地址;

Siaddr:

用于bootstrap过程中的IP地址;(服务器的IP地址)

Giaddr:

转发代理(网关)IP地址;

Chaddr:

client的硬件地址;

Sname:

可选server的名称,以0x00结尾;

File:

启动文件名;

Options:

,厂商标识,可选的参数字段

 

【抓包分析】

此次用的软件是:

wireshark(在宿舍内)

1.发现阶段:

2.提供阶段:

3.选择阶段

4.确认阶段:

【总结】

 

 

       DNS工作原理

域名解析有正向解析和反向解析之说,正向解析就是将域名转换成对应的IP地址的过程,它应用于在浏览器地址栏中输入网站域名时的情形;而反向解析是将IP地址转换成对应域名的过程,但在访问网站时无须进行反向解析,即使在浏览器地址栏中输入的是网站服务器IP地址,因为互联网主机的定位本身就是通过IP地址进行的,只是在同一IP地址下映射多个域名时需要。

另外反向解析经常被一些后台程序使用,用户看不到。

除了正向、反向解析之外,还有一种称为“递归查询”的解析。

“递归查询”的基本含义就是在某个DNS服务器上查找不到相应的域名与IP地址对应关系时,自动转到另外一台DNS服务器上进行查询。

通常递归到的另一台DNS服务器对应域的根DNS服务器。

因为对于提供互联网域名解析的互联网服务商,无论从性能上,还是从安全上来说,都不可能只有一台DNS服务器,而是由一台或者两台根DNS服务器(两台根DNS服务器通常是镜像关系),然后再在下面配置了多台子DNS服务器来均衡负载的(各子DNS服务器都是从根DNS服务器中复制查询信息的),根DNS服务器一般不接受用户的直接查询,只接受子DNS服务器的递归查询,以确保整个域名服务器系统的可用性。

当用户访问某网站时,在输入了网站网址(其实就包括了域名)后,首先就有一台首选子DNS服务器进行解析,如果在它的域名和IP地址映射表中查询到相应的网站的IP地址,则立即可以访问,如果在当前子DNS服务器上没有查找到相应域名所对应的IP地址,它就会自动把查询请求转到根DNS服务器上进行查询。

如果是相应域名服务商的域名,在根DNS服务器中是肯定可以查询到相应域名IP地址的,如果访问的不是相应域名服务商域名下的网站,则会把相应查询转到对应域名服务商的域名服务器上。

DNS服务器性能

在递归查询过程可能需要占用大量资源,但对于DNS服务器来说它仍然具有一些性能上的优势。

例如,在递归过程中,执行递归查询的DNS服务器,获得有关DNS域名空间的信息。

该信息由服务器缓存起来并可再次使用,以便提高使用此信息或与之匹配的后续查询的应答速度。

虽然打开与关闭DNS服务时,这些缓存信息将被清除,但是随着时间的推移,它们会不断增加并占据大量的服务器内存资源。

 

DNS解析过程

DNS服务器解析的过程如下所示:

第一步:

客户机提出域名解析请求,并将该请求发送给本地的域名服务器。

第二步:

当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。

第三步:

如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。

第四步:

本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。

第五步:

重复第四步,直到找到正确的纪录。

第六步:

本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。

让我们举一个例子来详细说明解析域名的过程。

假设我们的客户机如果想要访问站点:

此客户本地的域名服务器是,一个根域名服务器是NS.INTER.NET,所要访问的网站的域名服务器是,域名解析的过程如下所示:

(1)客户机发出请求解析域名的报文。

(2)本地的域名服务器收到请求后,查询本地缓存,假设没有该纪录,则本地域名服务器则向根域名服务器NS.INTER.NET发出请求解析域名。

(3)根域名服务器NS.INTER.NET收到请求后查询本地记录得到如下结果:

NS(表示域中的域名服务器为:

),同时给出的地址,并将结果返回给域名服务器。

(4)域名服务器收到回应后,再发出请求解析域名的报文。

(5)域名服务器收到请求后,开始查询本地的记录,找到如下一条记录:

A211.120.3.12(表示域中域名服务器的IP地址为:

211.120.3.12),并将结果返回给客户本地域名服务器。

(6)客户本地域名服务器将返回的结果保存到本地缓存,同时将结果返回给客户机。

DNS:

DomainNameSystem域名系统

DNS作用:

将域名解析为IP地址

将IP地址解析为域名

DNS查询类型:

从查询方式上分

递归查询:

客户端得到结果只能是成功或失败(客户端与本地DNS之间的交互)

迭代查询:

服务器以最佳结果作答(DNS服务器之间的交互)

从查询内容上分

正向查询:

由域名查找IP地址

反向查询:

由IP地址查找域名

DNS查询进程分两部分进行:

1.名称查询从客户端计算机开始,并传输至解析程序即DNS客户端服务程序进行解析。

2.不能在本地解析查询时,可根据需要查询DNS服务器来解析名称。

本地解析程序

该请求随后传输至DNS客户端服务,以便使用本地缓存信息进行解析。

如果可以解析查询的名称,则应答该查询,该进程完成。

本地解析程序的缓存可包括从两个可能的来源获取的名称信息:

如果在本地配置主机文件,则来自该文件的任何主机名称到地址的映射,在DNS客户端服务启动时将预先加载到缓存中。

从以前的DNS查询应答的响应中获取的资源记录,将被添加至缓存并保留一段时间。

综上所述:

客户端查询DNS的整个过程如下:

本地host文件---本地缓缓----DNS服务器

DNS服务器的应答:

权威性应答:

肯定应答:

参考性应答:

否定应答:

如果查询的最终应答太长而不能在一个UDP消息数据包中发送和解析,则DNS服务器可以在TCP端口53上发送故障转移响应消息,以便在TCP连接会话中完全应答客户端。

(为什么DNS会使用到TCP53端口)

默认情况下,在执行递归查询并联系其他DNS服务器时,DNS服务器使用若干默认的时间设置。

它们是:

3秒的递归重试间隔。

这是DNS服务在递归查询期间重试查询之前等候的时间长度。

15秒的递归超时间隔。

这是DNS服务在重试的递归查询失败之前等候的时间长度。

默认情况下,DNS服务器使用根提示文件Cache.dns,该文件存储在服务器计算机的systemroot\System32\Dns文件夹中。

当服务启动时,该文件的内容预先加载到服务器存储区,并包含运行DNS服务器所在的DNS命名空间的根服务器的指针信息。

DNS高级选项:

禁用递归(也禁用转发器):

默认为启用此项

BIND辅助区域:

如果区域数据不正确,记载会失败:

启用循环:

保护缓存防止污染:

系统为了安全起见,这个设置也是默认被开启的。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1