通信导论-网络协议抓包分析
Posted happy--hh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通信导论-网络协议抓包分析相关的知识,希望对你有一定的参考价值。
一、 网络
- 网络规划表
源IP地址 |
默认网关 |
目的IP地址 |
域名 |
备注 |
192.168.43.16 |
192.168.43.1 |
104.74.21.164 |
360.com |
360浏览器网页地址 |
192.168.43.16 |
192.168.43.1 |
182.232.136.130 |
yy.com |
直播YY平台网页地址 |
2.配置
步骤:控制面板—网络和Internet—网络和共享中心—连接—属性—Internet协议版本4(TCP/IPv4)—属性—手动输入IP地址和DNS服务器地址
3.连通性测试
Ip地址配置成功后,打开浏览器,出现以下界面,说明网络连接完成且能正常上网
二、应用层
- www
打开wireshark,再打开360浏览器,开始抓包,通过显示过滤器过滤http,筛选出一个HTTP,打开hypertext transfer protocol,把网址右键—copy—value完成复制
通过复制超文本传输协议hypertext transfer protocol中的网址,在浏览器打开,出现以下内容
2.直播
打开wireshark,再打开yy直播,开始抓包
复制抓包超文本传输协议hypertext transfer protocol中的网址,在浏览器打开,出现直播人的简介及信息
三、 传输层
- TCP协议
Transmission Control Protocol为传输控制协议
同步序列号SYN=1表示这是一个连接请求或连接接受报文
确认号字段ACK=1表示确认号字段有效,为0时无效
终止序列号FIN=1表明此报文段的发送端的数据已发送完毕,并要求释放传输连接
Sequence Number是发送序列号,用来标识从源端向目的端发送的数据字节流,表示在这个报文端中的第一个数据字节的顺序号
Acknowledgment Number是确认序列号,表示包涵了发送确认一端所期望收到的下一个顺序号,则是上次成功接收到数据的顺序号加1
最大分片大小 MSS = MTU - IP头部长度 - TCP头部长度
建立连接
- 第一次握手:客户端发起TCP连接请求SYN=1,seq=0
- 第二次握手:服务器响应连接请求 SYN=1,ACK=1,seq=0,ack=1,MSS=1400
- 第三次握手:客户端确认服务器要求同步 ACK=1,seq=1,ack=1
释放连接
- 第一次挥手:客户端发起连接释放请求FIN=1,ACK=1,seq=588,ack=340
- 第二次挥手:服务器发出确认,客户端到服务器方向连接释放ACK=1(第二次挥手与第三次挥手同时)
- 第三次挥手:服务器通知TCP释放连接 FIN=1,ACK=1,seq=340,ack=588
- 第四次挥手:客户端确认 ACK=1,seq=589,ack=341
2.UDP协议
使用过滤器输入udp筛选出了DNS,DNS是基于UDP的传输层之上的协议,没有流量控制和差错控制,广泛应用于视频,网络电视等,缺点是容易丢包
User Datagram Protocol(UDP)为用户数据报协议
Source Port:52462表示源端口
Destination port:53 表示目标端口
Length:40 表示数据报长度
四、 网络层
- IP报文
Version:4 这里指的是IPv4
Header Length:20 bytes表示IPv4 的首部是固定的,就是20字节。
Total Length:627代表IP报文总长度,报文总长度不能超过1500字节,否则需要分片。1500字节的限制是以太网在数据链路层带来的。IP数据部分最大长度1480,头部20字节。
Don’t fragment=1表示不能被分割
More fragments=0,表示没有后一个分片。
Time to live:128 代表还剩余多少跳被丢弃,即还可以经过多少个路由器,设置该字段的目的在于防止网络环路。
Protocol:上层的协议TCP,tcp报文正是基于ip协议的,tcp是传输层协议,而ip是它底下的网络层协议
Source,Destination:源地址,目的地址。家里的网络一般是192.168开头的,这是一个典型的本地地址。
2.ARP
Address ResolutionProtocol 为ARP协议
ARP广播请求报文(request)——目的MAC地址为全0
Info 信息的意思是“谁有192.168.43.16?告诉192.168.43.1”
Protocol type:IPv4(0x0800)表示协议类型为IPv4
Protocol size:4表示协议长度为4
Opcode:request(1)表示提问操作码,该值为1说明是ARP请求包
Sender IP address:192.168.43.1 表示发送端IP地址
Target IP address:192.168.43.16 表示目标IP地址
ARP单播的应答报文——它在响应包里面把MAC地址补全,单播发给了源地址192.168.43.1
Opcode:replay(2)表示回复操作码,该值为2说明是ARP应答包
Info 信息的意思是“192.168.43.16的MAC地址时94:53:30:be:2d:d7”
五、 数据链路层
- MAC帧格式
此帧格式包括物理层的数据帧、数据链路层以太网头部信息、互联网层IP包头部信息、传输层数据段头部信息
Frame:物理层的数据帧概论
Arrival Time: May 21, 2019 14:06:54.509470000 表示捕获日期和时间
Time delta from previous packet:0.00000 seconds 表示此包与前一包的时间间隔
Time since reference or first frame: 3.303822000 seconds 表示此包与第1帧的间隔时间
Frame Number: 51 表示帧序号
Packet Length: 641 bytes 表示帧长度
Capture Length: 641 bytes表示捕获长度
Frame is marked: False 表示此帧做了否标记
Protocols in frame: eth:ip:http 为帧内封装的协议层次结构
Coloring Rule Name: HTTP 表示用不同颜色染色标记的协议名称HTTP
Coloring Rule String: http || tcp.port == 80 || http2表示染色显示规则的字符串
Ethernet II:数据链路层以太网帧头部信息
Ethernet II表示以太网协议版本II
Src: VivoMobi_1a:11:4c (94:63:72:1a:11:4c) 表示源地址
Dst: HonHaiPr_be:2d:d7 (94:53:30:be:2d:d7)表示目的地址
Type: IPv4 (0x0800) 表示帧内封装的上层协议类型为IPv4(十六进制码0x800)
2.MAC地址分析
Sender MAC address:VivoMobi_1a:11:4c (94:63:72:1a:11:4c) 表示发送端MAC地址
Target MAC address:00:00:00_00:00:00 (00:00:00:00:00:00) 表示目标MAC地址(现在具体目的MAC不知道则为全0)
六、 总结
- 知识点总结
- OSI参考模型各层功能
应用层:直接面向用户已满足不同需求的,利用网络资源,唯一向应用程序直接提供服务的层
传输层:对上层屏蔽下层网络的细节保证通信质量,消除产生的错误,流量控制
网络层:向传输层提供最基本的端到端的数据传送服务,定义逻辑源地址和逻辑目的地址,提供寻址方式。关键技术为路由选择,常见网络层协议有IP协议
数据链路层:负责数据链路的建立维持和拆除,将网络层送下来的信息包组成帧传送,包括数据和一些必要的控制信息。定义物理源地址和物理目的地址,帧的顺序控制和流量控制
- Wireshark窗口介绍
- 遇到的困难
1.修改属于自己的IP地址后,网络断开,在连接不上网络
解决办法:先打开cmd命令提示符,ipconfig查找IP地址和网关,再手动修改IP地址
2.连上网络,但是打不开网页
解决办法:使用360网络修复箱,自动查找异常项,自动修复,DNS服务器地址自动修复正确
3.在进行直播抓包时,利用bilibili直播平台抓到的包的网址无法复制打开
解决办法:经过百度和多次尝试,发现bilibili直播平台是加密的,不解密是无法打开的,需要在相应的播放器中打开,而不能直接在浏览器中打开直播视频
3.总结
即使课后复习千万次,都不及一次真正的实操。当我独立完成一次抓包分析时,收获是无法想象的多,我需要先将课本上的知识熟记于心,在结合课本上的知识进行操作,操作过程中时不时出现小问题,就得靠自己百度、查找资料来解决,而在翻阅大量资料后也加深了对某个知识点的影响并且扩充了知识面。
以上是关于通信导论-网络协议抓包分析的主要内容,如果未能解决你的问题,请参考以下文章