目录
一.应用层3
1.http协议 3
二.传输层4
1. UDP协议 4
2. TCP协议 4
三.网络层9
1.ARP协议 9
2. IP报文 10
四. 数据链路层11
(1)MAC帧格式 11
(2)MAC地址分析 12
五. 总结13
一.应用层
1.http协议
(1)http请求报文
HTTP协议是运行在TCP协议之上的,该报文是实验主机向IP地址发出的HTTP请求。端口号为周知端口号80,主机上的源端口为55513,Next sequence number为311。
(2)http回复报文
这是目的主机给实验源主机发的HTTP回复报文,此时 Sequence Number 为162,Ack number为311,表示源实验主机发送的该号之前的字节它都已经收到。
二.传输层
- UDP协议
观看直播,抓取UDP包,如图所示,源端口49632,目标端口8000,数据报长度是227,校验和是0x5f80。
2.TCP协议
(1)建立连接
先找出GET/HTTP/1.1,右键追踪TCP流,上面三个就是TCP三次握手
第一次握手数据包:客户端发送请求报文段,源端口为49875,目的端口为80,序列号seq为0,标志位SYN=1,表示客户端请求建立连接
第二次握手数据包:服务器发回确认包,确认号ack=0+1=1,标志位ACK=1,SYN=1,选择的序号seq=0,表示收到连接请求,发回确认.
第三次握手数据包:客户端再次发送确认,ACK=1,发送序号seq=0+1=1,确认序号ack=0+1=1,TCP连接就此建立了
(2) 释放连接
第一次握手数据包:客户端给服务器发送TCP包,并停止再发送数据,主动关闭TCP连接。FIN=1,seq=372,ack=568
第二次握手数据包:服务器发出确认,确认号ACK=1,ack=372+1=373,seq=568
第三次握手数据包:服务器通知TCP释放连接,FIN=1,ACK=1,seq=568,ack=373
第四次握手数据包:客户端确认之后,发回ACK=1,seq=372+1=373,ack=568+1=569
三.网络层
1.ARP协议
(1)广播请求
由图可看出,硬件类型(hardware type)是以太网(0x0001)。协议类型(protocol type)为IPV4(0x0800),表示使用ARP的协议类型为IPV4。硬件地址长度(hardware size)为6。协议地址长度(protocol size)为4,操作类型(opcode)为1,表示报文类型为ARP请求。请求报文广播说:“谁有192.168.191.1的mac地址?告诉192.168.0.23”,这个报文为请求包,源ip地址是192.168.0.23,但是不知道目标ip地址192.168.191.1的mac地址
(2)单播应答
如图所示,操作类型(opcode)为2,表示报文类型为ARP应答。响应的报文对请求的地址单播说:“192.168.191.1的mac地址是4e:a0:67:1d:0e:8d”
2.IP报文
Version:4 是指版本为IPv4。
Header Length:20bytes(5) 是指首部长度为20字节。
Total length:129 代表ip报文段总长度是129。
Identification:0x55f3(22003)表示标识符
1=Don’t fragment:Set 表示不能分片
Time to live:128 表示生存时间为128bits
Protocol:TCP(6) 表示上层的协议为TCP
Header checksum:0x537e[validation disabled] 表示首部校验和为0x537e
Source:192.168.0.23和Destination:121.51.23.19表示源地址是192.168.0.23,目的地址是121.51.23.19
四.数据链路层
(1)MAC帧格式
第一行表示3965号帧,线路480字节,实际捕获480字节。
Frame Number:3975 表示帧序号
Packet Length:60 bytes 表示帧长度
Capture Length:60bytes 表示捕获长度
[Frame is marked: False] 表示此帧是否做了标记:否
[Protocols in frame: eth:ip:tcp] 表示帧内封装的协议层次结构
(2)MAC地址分析
表示是IPv4版本(十六进制0x0800)
五.总结
本次抓包实验让我收获良多。通过本次实验,首先我熟悉了使用Wireshark的使用方法,学会了Wireshark软件捕获各协议报文包括协议序列和报文内容,并观察研究其工作原理,其中一些过滤统计的技巧也让实验变得更容易。我透过对报文格式和各报文协同工作的分析,更加深入的ARP协议、HTTP协议、UDP协议以及TCP协议工作过程。在此次作业中,我遇到的问题有:
1.不懂得UDP协议是如何抓包的
解决方法:通过百度寻找资料,先是找到了UDP协议是用于直播等方面的,便从网页上打开一个直播,之后通过wireshark去筛选UDP协议。