《网络协议分析》实验指导书
“hops”大于4(现在也有规定为16)时,这个DHCP报文就不能再进行处理,而是丢弃; 5)Xid(4):客户端发起依稀请求时选择的随机数,用来标识一次地址请求过程; 6)Secs(2):DHCP客户端开始DHCP请求后经过的时间; 7)Flags(2):标识DHCP服务器响应报文是单播还是广播发送,只用第一个比特; 8)Cliaddr(4):DHCP客户端IP地址; 9)Yiaddr(4):DHCP服务器分配给客户端的IP地址; 10)Siaddr(4):DHCP客户端获取IP地址等信息的服务器IP地址; 11)Giaddr(4):DHCP客户端发出请求报文后经过的第一个DHCP中继IP; 12)Chaddr(4):DHCP客户端的硬件地址,即MAC地址; 13)Sname(64):DHCP客户端获取IP地址等信息的服务器名称; 14)file(128):服务器客户端指定的启动配置的名称; 15)option(variable):可选变长选项字段,包含报文的类型、有效租期、DNS(domain name system,
域名系统)、服务器的IP地址等配置信息。
四、实验过程
1.启动Windows 命令提示符窗口,输入“ipconfig /release”。这条命令会释放主机目前的IP地址,此时,主机IP地址会变为0.0.0.0
2.启动Wireshark分组俘获,开始分组俘获。
3.现在回到Windows命令提示符窗口,输入“ipconfig /renew”命令。这条命令让主机获得一个网络配置,包括新的IP地址。
4.等待,直到“ipconfig /renew”终止。然后再次输入“ipconfig /renew” 命令。
5.当第二个命令“ipconfig /renew” 终止时,输入命令“ipconfig /release” 释放原来的已经分配的IP地址。
6.最后,输入“ipconfig /renew”再一次给你的I主机分配IP地址。 7.停止分组俘获。
8.分析收到的报文,找出需要的报文,并对结果进行分析。 为了只看到DHCP分组,在filter field中输入“bootp”(DHCP是从BOOTP协议产生的)。BOOTP和DHCP使用同样的端口号,67和68。
从图二中可以看出,第一个ipconfig/renew 命令产生四个DHCP分组: DHCP Discover报文; DHCP Offer报文; DHCP Request报文; DHCP ACK报文;
五.利用上述的分析结果,填写如下表格:
阶段 Discover Offer Request Ack 源MAC 目标MAC 源IP 目标IP
答案提示:(将其中的内容替换为具体的地址) 阶段 源MAC 目标MAC 第 36 页 共 49 页
源IP 目标IP 《网络协议分析》实验指导书
Discover Offer Request Ack
PC机的MAC Dhcp服务器或者中继器路由的MAC PC机的MAC Dhcp服务器或者中继器路由的MAC 全FF Dhcp客户机的MAC 全FF Dhcp客户机的MAC 0.0.0.0 Dhcp服务器或者中继路由器的IP地址 0.0.0.0 Dhcp服务器或者中继路由器的IP地址 255.255.255.0 准备分配的IP地址 255.255.255.0 准备分配的IP地址 实验七 DNS 协议分析
一.实验目的:
1.了解DNS协议的主要内容; 2.掌握获取DNS协议报文的方法; 3.熟悉DNS协议报文格式;
4.理解DNS协议中的几种资源记录的用途和作用
二.实验内容
捕获DNS报文,并进行分析,完成实验。
三.实验原理
1.DNS 协议简介
DNS 是域名系统 (Domain Name System)的缩写,是一种分层次的、基于域的命名方案,主要用来将主机名和电子邮件目标地址映射成IP 地址。当用户在应用程序中输入DNS 名称时,DNS 通过一个分布式数据库系统将用户的名称解析为与此名称相对应的IP 地址。 (1)域名服务器和域名解析
在互联网中,DNS 的实现是通过域名服务器实现的。域名服务器构成对应的层次结构,每个域名服务器保存着它所管辖区域内的主机的名字和IP 地址的对照表。这组域名服务器是域名解析的核心。域名解析有两种:递归解析和反复解析。 (2)域名解析
递归解析就是本地域名服务器系统一次性地完成域名到IP 地址的转换,即使它没有所要查询的域名信息,它也会查询别的域名服务器。反复解析则是当本地域名服务器中没有被查询的主机域名的信息时,它就会将一个可能有该域名信息的 DNS服务器的地址返回给请求域名解析的DNS 客户,DNS 客户再向指定的DNS 服务器查询。
在实际应用中通常是将两种解析方式结合起来进行域名解析。当本地域名服务器没有所要查询的域名信息时,就请求根域名服务器,根域名服务器将有可能查到该域名信息的域名服务器地址返回给要求域名解析的本地域名服务器,本地域名服务器再到指定的域名服务器上查询,如指定域名服务器上还没有该域名信息,它再将它的子域名服务器的IP 地址返回给要求域名解析的本地域名服务器,这样直到查询到待解析的域名的IP 地址为止(没有注册的主机域名除外),本地域名服务器再将查询结果返回给DNS 客户,完成域名解析。 (3)DNS 高速缓存
每个域名服务器都维护着一个高速缓存,存放最近用到过的域名信息和此记录的来源。当客户请求域名解析时,域名服务器首先检查它是否被授权管理该域名,若未被授权,则查看自己的高速
第 37 页 共 49 页
《网络协议分析》实验指导书
缓存,检查该域名是否最近被转换过。如果有这个域名信息,域名服务器就会将有关域名和IP 地址的绑定信息报告给客户,并标志为非授权绑定,同时给出获得此绑定的域名服务器的域名,本地域名服务器也会将该绑定通知客户。但该绑定信息可能是过时的。
根据是强调高效还是准确性,客户可以选择接受该绑定信息还是直接与该绑定信息的授权服务器联系。
2.实验工具软件简介
(1)DNS服务
试验中需安装DNS服务器软件,可以使用windows server中自带的DNS服务功能,只需安装一台即可。学生实验时需将本机的网络设置中的DNS服务器地址设置为安装的DNS服务器的IP。 (2)NSLOOKUP 命令工具
Nslookup 是Windows 系统自带的命令工具,可以显示域名解析,除得到域名主机IP 外, 还可以得到 DNS 解析服务器的主机名称和对应的 IP 地址。由于本次实验只需要获取 DNS 报文,因此选择它作为客户端工具。 3.实验环境与说明
实验环境应联网,保持网络的通畅。每个学生独立一组,开展实验。
4.实验步骤
步骤1:查看本机的网络设置,测试网络的连通性,并需查看DNS服务器的设置是否为实验指定的DNS服务器的IP地址。方法是打开 “网络和Internet 连接”的“网络连接”窗口,“本地连接”,右键快捷菜单 “属性”,在常规选项卡中打开“Internet 协议(TCP/IP)属性”对话框。设置首选DNS 服务器地址为 192.168.10.10(可更改)。 步骤2:清空DNS 服务器缓存,在DNS服务器上完成。
步骤3:在学生机上启动Wireshark,设置截获条件“host 192.168.10.10 ”,开始截获报文。 步骤4:在学生机上打开命令行窗口。执行Nslookup,查询www.sina.com。
步骤5:停止截获报文并将截获的结果分别保存为DNS-C。分析DNS 的请求和应答报文,完成下面的要求:
从DNS-C 中选择一条计算机发出的DNS 请求报文和相应的DNS 应答报文(它们的 Transaction ID 字段的值相同),将两条报文的信息填入下表。
表10 DNS 请求报文和应答报文信息 DNS 报文类型 DNS 请求报文 报文序号 源站点 目的站点 报文信息 DNS 应答报文
实验八 HTTP 协议分析
一.实验目的:
1.了解HTTP协议的主要内容;
第 38 页 共 49 页
《网络协议分析》实验指导书
2.掌握获取HTTP协议报文的方法;
3.理解HTTP协议基本的交互方式及HTTP协议报文格式。
二.实验内容
捕获HTTP报文,并进行分析,完成实验。
三.实验原理 1.HTTP 协议
HTTP 是超文本传输协议 (Hyper Text Transfer Protocol)的缩写,用于WWW 服务。 (1)HTTP 的工作原理
HTTP 是一个面向事务的客户服务器协议。尽管HTTP 使用TCP 作为底层传输协议,但HTTP协议是无状态的。也就是说,每个事务都是独立地进行处理。当一个事务开始时,就在万维网客户和服务器之间建立一个TCP 连接,而当事务结束时就释放这个连接。此外,客户可以使用多个端口和和服务器 (80 端口)之间建立多个连接。其工作过程包括以下几个阶段。
① 服务器监听TCP 端口 80,以便发现是否有浏览器 (客户进程)向它发出连接请求; ② 一旦监听到连接请求,立即建立连接。
③ 浏览器向服务器发出浏览某个页面的请求,服务器接着返回所请求的页面作为响应。 ④ 释放TCP 连接。
在浏览器和服务器之间的请求和响应的交互,必须遵循HTTP 规定的格式和规则。 当用户在浏览器的地址栏输入要访问的HTTP 服务器地址时,浏览器和被访问HTTP 服 务器的工作过程如下:
① 浏览器分析待访问页面的URL 并向本地DNS 服务器请求IP 地解析;
② DNS 服务器解析出该HTTP 服务器的IP 地址并将IP 地址返回给浏览器; ③ 浏览器与HTTP 服务器建立TCP 连接,若连接成功,则进入下一步; ④ 浏览器向HTTP 服务器发出请求报文 (含GET 信息),请求访问服务器的指定页面; ⑤ 服务器作出响应,将浏览器要访问的页面发送给浏览器,在页面传输过程中,浏览 器会打开多个端口,与服务器建立多个连接; ⑥ 释放TCP 连接;
⑦ 浏览器收到页面并显示给用户。
(2)HTTP 报文格式
HTTP 有两类报文:从客户到服务器的请求报文和从服务器到客户的响应报文。图17显示了两种报文的结构。
第 39 页 共 49 页
《网络协议分析》实验指导书
图17 HTTP 的请求报文和响应报文结构
在图46 中,每个字段之间有空格分隔,每行的行尾有回车换行符。各字段的意义如下: ① 请求行由三个字段组成:
* 方法字段,最常用的方法为 “GET”,表示请求读取一个万维网的页面。常用的方法 还有 “HEAD(指读取页面的首部)”和“POST(请求接受所附加的信息); * URL 字段为主机上的文件名,这时因为在建立TCP 连接时已经有了主机名; * 版本字段说明所使用的HTTP 协议的版本,一般为 “HTTP/1.1”。 ② 状态行也有三个字段:
* 第一个字段等同请求行的第三字段; * 第二个字段一般为 “200”,表示一切正常,状态码共有41 种,常用的有:301 (网站已转移),400(服务器无法理解请求报文),404(服务器没有锁请求的对象)等; * 第三个字段时解释状态码的短语。
③ 根据具体情况,首部行的行数是可变的。请求首部有Accept 字段,其值表示浏览器可以接受何种类型的媒体;Accept-language,其值表示浏览器使用的语言;User-agent 表明可用的浏览器类型。响应首部中有Date、Server、Content-Type、Content-Length 等字段。在请求首部和响应首部中都有 Connection 字段,其值为Keep-Alive 或 Close,表示服务器在传送完所请求的对象后是保持连接或关闭连接。
④ 若请求报文中使用 “GET”方法,首部行后面没有实体主体,当使用 “POST”方法时,附加的信息被填写在实体主体部分。在响应报文中,实体主体部分为服务器发送给客户的对象。
图18 和图19 显示了Wireshark 捕获的HTTP 请求和响应报文,结合上面的介绍,请自己分析和体会。
图18 HTTP 请求报文示例
第 40 页 共 49 页
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《网络协议分析》实验指导书 - 图文(8)在线全文阅读。
相关推荐: