报文分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
任务三、网络协议报文分析
实验目的:
在任务二配置的网络服务环境下,通过合理设置客户端Wireshark的捕获条件,捕获各类数据报文流,进行相关分析,理解TCP/IP网络中的协议封装形式,掌握DNS、HTTP、FTP、ICMP等因特网应用协议的工作原理。
实验设备:
一台安装了Windows 2003 server和Wireshark软件的个人计算机;
实验内容:
(1)使用Wireshark或sniffer软件分别捕获不同类型的数据包,并对数据包进行具体的分析;记录不同类型数据包的捕获条件(如ICMP、TCP、UDP、DNS、HTTP、FTP等)。记录所找到的协议使用了哪些下层协议,被哪些上层协议所使用?它们各处于OSI 模型的第几层?
我这里列出DNS报文的具体分析,其他报文分析类似。
以下是DNS报文分析
这是第883帧,帧的长度为74字节,整个帧内部各层使用的协议(分别是eth、ip、udp、dns)
以太网帧的首部14字节,
6个字节的目的地址14 14 4b 59 63 43
6个字节的本地主机地址54 42 49 5b a6 c2
2个字节类型字段08 00 表名里面的数据是IP数据报。
这个IP数据报的首部有20字节长,详细的数据分析如下:
V ersion:版本4,目前使用的是IPV4。
Header length:首部长度20字节(5个单位,每个单位4字节)。
Differentiated Services Field:区分服务00(简称为DS,默认值是00,路由器根据DS字段不同的值来提供不同等级的服务质量,其中,前6位是区分服务码点DSCP,后面两位目前不使用,记为CU)。
Total Length:1500字节。
Identification:标识2497(9367)。
Flags:标志,占3比特位,分别是000。第一位是保留位,目前不使用,值为0;第二位记为DF,值为1表示不能分片,值为0表示允许分片;第三位记为MF,值为1表示后面还有分片的数据报,值为0表示这已是若干数据报片中最后一个。
Fragement Offset:片偏移0个单位。
Time to live:生存时间64,表明这个数据报之前已经经过了0(64减去64等于0)个网关路由节点。(该报文由本地出去)
Protocol:协议17表示内部数据是UDP报文段。
Header checksum:首部检验和为0000,incorrect表明检验失败。
Source:源IP地址10.12.42.69。
Destination:目的地址59.77.139.1。
这是一段UDP报文段:
Source port:源端口52713。
Destination port:目的端口53。(表明目的端使用的应用层协议是DNS)。Length:长度40
Checksum:oxfad8
为询问报文。
ftp报文(我在校园网上下载了一个.doc文件)
使用OSI中的物理层、数据链路层、网络层、传输层
http报文
使用OSI中的物理层、数据链路层、网络层、传输层、应用层
(2)分别捕获一个邮件发送和邮件下载报文分析他们的层次结构。
使用的OSI层次有物理层、数据链路层、网络层、传输层、应用层SMTP报文的传送分为三个阶段:连接建立、邮件传送、连接终止。
连接建立
在端口25建立TCP连接后,就开始了连接阶段。
邮件传送
在SMTP客户端与服务器建立连接后,发件人就可以与一个或多个收件人交换单个的报文了。
连接终止
在报文传送成功后,客户就终止连接,此时TCP连接也必须关闭。
这里利用的一层的数据流用来作数据在底层线缆之间的传输。
利用二层的MAC+LLC 子层协议作为二层寻址的协议。
利用三层通用的IP 协议,利用IP地址来逻辑寻址。
利用四层的TCP协议,作为可靠传输的保障,以及报文的port号正确映射。
利用七层的SMTP,以及POP3 协议作为e-mail的收发。
(3)分别捕获以下ping 命令产生的报文流,分析他们的结构特点: Ping–n 2 <目标主机>
分析:
Icmp报文格式:
ping,就是响应请求(Type=8)和应答(Type=0),一台主机向一个节点发送一个Type=8的ICMP报文,如果途中没有异常(例如被路由器丢弃、目标不回应ICMP或传输失败),则目标返回Type=0的ICMP报文,说明这台主机存在,更详细的tracert通过计算ICMP报文通过的节点来确定主机与目标之间的网络距离。
类型为8,表示回应请求报文,传递的ping命令通常用于测试信宿的可到达性。
类型为0,表示回应应答报文。
比较这组报文对,其标识符和序列号是一样的.且数据部分也是一样的(本例中发送方指定数据abcdefghijklmnopqrstuvwabcdefghi,接收方原样返回)。
Ping -l 5500 <目标主机>
数据超过最大传输单元,所以要分段传输。可以看到flag为001 第三个为1表示还有分片的数据报。
Ping -f <目标主机>
-f 命令设置报文中的flag的DF为1,表示不允许分片传输。
任务总结:
在这之前对报文分析并不是很了解,做这个任务的时候不得不去查找各种资料,学习怎么去分析,到现在算是懂了点东西,通过这个任务,我深刻体会到学计算机的学生对英语水平的要求要比较高,所以英语还是要继续好好学习的。分析的不到位或者有错误忘老师指正。