2023年7月31日发(作者:)
计算机网络实验·报告
协议数据的捕获和解析实验报告
0 / 18
计算机网络实验·报告
目录
一、实验内容和实验环境描述
(1)实验内容和目的
(2)实验环境
二、实验步骤
三、IP 协议分析
(1)分析IP数据分组
(2)头部校验和分析
四、ICMP 协议分析
五、DHCP 协议分析
六、ARP 协议分析
七、IP包分片分析
八、实验所遇问题解决和心得体会
1 / 18
计算机网络实验·报告
一、实验内容和实验环境描述
(1)实验内容和目的
1、使用 Wireshark 软件捕获在使用 ping 命令时产生的 ICMP 消息;
2、分析网络层 IP 包头格式,理解各字段的作用,对于分段和校验和进行验证;
3、使用 Wireshark 软件捕获在使用 ARP 消息,分析其消息格式,理解其工作原理;
4、使用 Wireshark 捕获 DHCP 消息,分析其消息序列,理解 DHCP 的功能和操作原理。
通过本实验学生可以深入理解分层体系结构,理解和掌握 TCP/IP 协议栈的代表协议——IP、UDP、ICMP、ARP 和 DHCP 协议的要点。
(2)实验环境
1 台装有 MS Windows 系列操作系统的计算机,要求能够连接到 Internet,并安装浏览器软件和Wireshark 软件。
二、实验步骤
2 / 18
计算机网络实验·报告
准备工作
1. 下载 Wireshark 软件并了解其功能和使用方法。
2. 确保计算机已经连接到网络。
3. 启动Wireshark
对于 ping 命令,设置过滤器为 icmp ,设置捕获接口(Interface)为本机网卡,选中混杂模式(promiscuous mode)捕获选项,设置合适的捕获过滤器(Capture Filter):
对于 ping 命令,设置过滤器为 icmp
对于 DHCP 消息,设置过滤器为 udp port 67
对于 ARP 消息,设置过滤器为 arp
4. 开始捕获。
数据捕获
捕获 ICMP 协议数据
1. 运行 ping 命令(例如:c> ping 192.168.0.1),远程主机地址可以是本机地址、网关路由器地
址,也可以是域名(如 )。将捕获到的数据保存为文件。
2. 使用 Windows 中ping 命令的-l选项(例如:c>ping -l 8000 192.168.0.1),制作大于 8000 字
节的 IP 包并发送,捕获后分析其分段传输的包结构。
捕获 DHCP 协议消息
1. 使用 ipconfig 命令释放计算机的 IP 地址(c>ipconfig -release);
2. 使用 ipconfig 命令重新申请 IP 地址(c>ipconfig -r enew) 。
此时 wireshark 窗口中可以捕获到完整的 DHCP 地址分配的流程,将捕获到的数据保存为文
件。
捕获 ARP 协议数据
3 / 18
计算机网络实验·报告
采用与 7.2.2 相同的方法释放 IP 地址并重新申请,在wireshark 窗口中可以捕获到
ARP 请求
和响应消息,保存为文件。
协议分析
运行 Wireshark 软件,打开捕获数据文件,完成下列分析工作:
1. IP 包头分析:对于采用 ping 命令-l选项捕获的 ICMP 消息,对承载 ICMP 消息的
IP 包进行分析,
记录包头各字段的值,对照讲义和教材分析各字段的功能,并对于校验和和分段进行验证;
2. ICMP 消息分析:记录并分析 ICMP 消息中分析各字段的功能;
3. DHCP 消息分析:针对一次地址分配过程(Transaction ID 相同的 4 个消息) ,分析其通信过程,
画出地址分配的消息序列图,并记录采用 DHCP 协议配置的各个参数。
4. ARP 消息分析:对照讲义理解 ARP 的操作过程,记录并分析消息中各字段的功能。
三、IP 协议分析
IP基本功能:IP是英文Internet Protocol(网络之间互连的协议)的缩写,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。
捕获IP数据分组:
4 / 18
计算机网络实验·报告
IP分组格式为:
1、分析IP数据分组:
字段
版本
报头长度
服务类型
总长度
标示
标志
片偏移
生存周期
协议
报文(16进制)
4
45
00
003c
1706
00
0000
40
01
5 / 18
内容
版本为4
20 bytes
正常延迟,正常吞吐量,正常可靠性
60bytes
5894
MF=0,DF=0,允许分片,此片为最后一片
偏移量0
64s
ICMP(1)协议
计算机网络实验·报告
头部校验和
源地址
目的地址
2、头部校验和分析:
4938
76e5a214
7b7f860a
IP头部校验和为4938h
118.229.162.20
123.127.134.10
4500 0100 0101 0000 0000
003c 0000 0000 0011 1100
1706 0001 0111 0000 0110
0000 0000 0000 0000 0000
4001 0100 0000 0000 0001
4938 0100 1001 0011 1000
76e5 0111 0110 1110 0101
a214 1010 0010 0001 0100
7b7f 0111 1011 0111 1111
860a 1000 0110 0000 1010
简单求和后发现结果为:1111 1111 1111 1111 符合条件,是正确的包,即IP头部校验和为4938h是正确的。
四、ICMP 协议分析
ICMP基本功能:ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
6 / 18
计算机网络实验·报告
连接网站:执行 ping ,可以看到本地主机()每向(115.25.216.36)发送了一个长度均为74字节ICMP报文,sogou的服务器就回复一个相同的ICMP报文。总共进行四次。
捕获ICMP分组:
7 / 18
计算机网络实验·报告
ICMP部分
ICMP分组格式:
分析ICMP分组:
字段
类型
代码
校验和
类型报文(16进制)
08
00
4cdb
内容
终点可达
端口可达
头部校验和为4cdb
代码
检验和
8 / 18
计算机网络实验·报告
标识符
序列号
数据部分
此ICMP报文是请求报文,发送ping的请求,且发送成功。
五、DHCP 协议分析
DHCP基本功能:动态主机设置协议(Dynamic Host Configuration Protocol, DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址给用户给内部网络管理员作为对所有计算机作中央管理的手段。
执行ipconfig/release,释放连接,捕获到DHCP Release报文。
9 / 18
计算机网络实验·报告
1 . 执行ipconfig/renew更新所有适配器,由于本地主机没有被分配到IP地址,并且也不知道DHCP服务器的地址,所以发送DHCP Discover报文时,源地址为0.0.0.0,目的地址为255.255.255.255。本地网络上的所有主机都能收到DHCP Discover报文。
2.只有DHCP服务器收到这个DHCP Discover报文后,才向网络广播DHCP Offer报文作为回复。
3.本地主机(0.0.0.0)收到DHCP Offer报文后,向DHCP服务器发送DHCP
Request报文
4.DHCP(211.68.71.5)服务器收到DHCP Request报文后,回复DHCP ACK报文,给本地主机分配一个IP地址。本地主机就得到了一个临时IP地址()。至此四次握手完成。
在图中可以看到DHCP Offer报文的源地址显示为118.229.161.129,而不是211.68.71.5,这说明118.229.161.129是个中继代理的IP地址,本地主机与中继代理通过广播方式交换报文。
六、ARP 协议分析
ARP报文格式
本地局域网内的主机用广播的方式发送ARP报文,获取彼此的硬件地址。
10 / 18
计算机网络实验·报告
ARP基本功能:在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
七、IP包分片分析
分片原理:分片和重新组装的过程对传输层是透明的,其原因是当IP数据报进行分片之后,只有当它到达目的站时,才可进行重新组装,且它是由目的端的IP层来完成的。分片之后的数据报根据需要也可以再次进行分片。IP分片和完整IP报文差不多拥有相同的IP头,ID域对于每个分片都是一致的,这样才能在重新组装的时候识别出来自同一个IP报文的分片。在IP头里面,16位识别号唯一记录了一个IP包的ID,具有同一个ID的IP分片将会重新组装;而13位片偏移则记录了某IP片相对整个包的位置;而这两个表中间的3位标志则标志着该分片后面是否还有新的分片。这三个标志就组成了IP分片的所有信息(将在后面介绍),接受方就可以利用这些信息对IP数据进行重新组织。
例如:制作一个8000字节的IP数据分组,发送后捕获分析。由于分组长度大于1500字节,因此需要分片传输。
报文被分成了六片,可以看出偏移为1480字节(如果算上包头1500),由于最后分片为ICMP报文,多了8字节的首部,因此最后报文段大小为608字节,5*1480+600=8000字节。
分成六片
第一片:
IP数据分组:
11 / 18
计算机网络实验·报告
IP分组格式在8.2中已给出,分析IP分组得:
字段名称
版本
包头长度
服务类型
总长度
标识
标志
分段偏移
生命期
协议
头部校验和
源地址
目的地址
第二片:
IP数据分组:
报文
4H
5H
00H
05dcH
36d8H
02H
00H
40H
01H
e9f0H
76e5a214
d3444743H
含义
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为1500字节
标识为14040
MF=1,DF=0,允许分片,此后还有分片
偏移量为0
生命期为64秒
携带的数据来自ICMP协议
IP头部校验和为e9f0H
源地址为118.229.162.20
目的地址为211.68.71.67
分组格式:同2)
C.分析IP分组
字段名称 报文 含义
12 / 18
计算机网络实验·报告
版本
包头长度
服务类型
总长度
标识
标志
分段偏移
生命期
协议
头部校验和
源地址
目的地址
第三片:
IP数据分组:
4H
5H
00H
05dcH
36d8H
02H
b9H
40H
01H
e937H
76e5a26eH
76e5a214
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为1500字节
标识为14040
MF=1,DF=0,允许分片,此后还有分片
偏移量为1480
生命期为64秒
携带的数据来自ICMP协议
IP头部校验和为e937H
源地址为118.229.162.110
源地址为118.229.162.20
分组格式:同2)
C.分析IP分组
字段名称
版本
包头长度
服务类型
总长度
报文
4H
5H
00H
05dcH
含义
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为1500字节
13 / 18
计算机网络实验·报告
标识
标志
分段偏移
生命期
协议
头部校验和
源地址
目的地址
第四片:
IP数据分组:
36d8H
02H
172H
40H
01H
e87eH
76e5a214
d3444743H
标识为14040
MF=1,DF=0,允许分片,此后还有分片
偏移量为2960
生命期为64秒
携带的数据来自ICMP协议
IP头部校验和为e87eH
源地址为118.229.162.20
目的地址为211.68.71.67
分组格式:同2)
C.分析IP分组
字段名称
版本
包头长度
服务类型
总长度
标识
标志
分段偏移
生命期
报文
4H
5H
00H
05dcH
36d8H
02H
22bH
40H
含义
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为1500字节
标识为14040
MF=1,DF=0,允许分片,此后还有分片
偏移量为4440
生命期为64秒
14 / 18
计算机网络实验·报告
协议
头部校验和
源地址
目的地址
第五片:
IP数据分组:
01H
e7c5H
76e5a26eH
76e5a214
携带的数据来自ICMP协议
IP头部校验和为e7c5H
源地址为118.229.162.110
源地址为118.229.162.20
分组格式:同2)
C.分析IP分组
字段名称
版本
包头长度
服务类型
总长度
标识
标志
分段偏移
生命期
协议
头部校验和
源地址
目的地址
第六片:
15 / 18
报文
4H
5H
00H
05dcH
36d8H
02H
2e4H
40H
01H
e70cH
76e5a214
d3444743H
含义
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为1500字节
标识为14040
MF=1,DF=0,允许分片,此后还有分片
偏移量为5920
生命期为64秒
携带的数据来自ICMP协议
IP头部校验和为e70cH
源地址为118.229.162.20
目的地址为211.68.71.67
计算机网络实验·报告
IP数据分组:
分组格式:同2)
C.分析IP分组
字段名称
版本
包头长度
服务类型
总长度
标识
标志
分段偏移
生命期
协议
头部校验和
源地址
目的地址
报文
4H
5H
00H
0274H
36d8H
00H
39dH
40H
01H
09bcH
76e5a214
d3444743H
含义
版本为4
包头长为20字节
正常延迟,正常吞吐量,正常可靠性
数据分组总长度为628字节
标识为14040
MF=0,DF=0,允许分片,此片为最后一片
偏移量为7400
生命期为64秒
携带的数据来自ICMP协议
IP头部校验和为09bcH
源地址为118.229.162.20
目的地址为211.68.71.67
八、实验所遇问题解决和心得体会
实验遇到的问题和解决:
1、在选择网卡时可以先看看interfaces里的数据流,不要胡乱选一个网卡就去抓包,那样很可能抓不到数据。
16 / 18
计算机网络实验·报告
2、注意Wireshark截获的数据为16进制数,在分析时使用计算机自带的计算器可以转换为10进制数,较为方便。
3、为了方便阅读,在抓包时候设置过滤规则对于 如ping 命令,设置过滤器为 icmp ,对于 DHCP 消息,设置过滤器为 udp port 67 ,对于 ARP 消息,设置过滤器为 arp ,可以使要截获的数据集中。
4、注意在验证头部校验和的时候把各项简单求和,最高位可能产生进位,这时候应该把这些进位累加到最低位上去,比如之前算的结果为2FFFD,其中2是最高位的进位,应该加到D上去,结果应该是FFFF,从而验证头部校验和是否正确。
这次实验总体比较容易,一人即可完成。在熟悉Wireshark后进行抓包都很简单,关键是设置参数、过滤条件等,时间大多消耗在分析数据和整理实验报告上。最大的收获是对协议的结构有了更直观的认识,对IP ICMP DHCP ARP等有了更多的了解。
17 / 18
发布者:admin,转转请注明出处:http://www.yc00.com/web/1690779794a424098.html
评论列表(0条)