前篇
上一篇文章我们引入了一个实例,让大家了解了用Wireshark能实现的价值。要精通Wireshark,其实需要做到2点:一是熟悉Wireshark的界面、功能及使用方法;而是对网络协议有深层次的理解。所以免不了要讲一些和基础相关的东西,希望不要跳过基础知识学习。本篇文章细节内容较多,可能会比较费时。
前言
这周行里上新设备,挺折腾,没能第一时间更新。要周末了,终于有点儿时间可以给大家继续讲解Wireshark。今天计划跟大家讲讲Wireshark的数据包解码界面,周末构思了很久,觉得还是有必要把网络分层模型、数据包封装解封装和数据包结构给大家讲解一下,在对这些基础知识掌握了以后,再使用Wireshark才能够做到水到渠成。希望大家能一步一个脚印,不要想着一口气吃成个大胖子。
一、网络分层模型和数据包结构
我不想把文章写成教材里面的样子,能用大白话就尽量用大白话来解释。先看张图(图片来源于网络):
相信计算机相关专业的都知道OSI7层模型或TCP/IP分层模型。我这里就把分层模型和数据包结合着讲,其实就是把网络职责进行分工:
(1)物理层:实现数据包物理传递(研究通过各种载体(线缆),把电压电平信号传递到对面去,保证我网卡发出10100110,对面收到也是10100110)。数据包里看不到物理层的信息,wireshark解码中看到的数据包标号和捕获时间都是网卡加上去的。
(2)数据链路层(2层):解决局域网(本地网)通信的一层。举例:你要上互联网,所有的数据就需要交给网关,你和本地网关(比如你家里的TP-Link路由器)通信就是局域网通信的一种。2层通信靠MAC地址,在二层传输要实现数据包传输,数据包就必须包含足够的二层信息(包含在数据包包头中)。
(3)网络层(3层)