计算机网络实验|基本报文分析

基本报文分析

【实验目的】
1、理解 IP 层的作用以及 IP 地址的分类方法;
2、理解子网的划分和子网掩码的作用;
3、掌握 IP 数据包的组成和网络层的基本功能;

【实验环境】
实验拓扑图
计算机网络实验|基本报文分析_第1张图片

【实验内容】
1、学会根据 IP 地址的分类方式区分各类 IP 地址;
2、掌握 IP 数据报的格式、长度以及各字段的功能;
3、学会利用子网掩码确定 IP 地址的网络号、子网号和主机号;
4、学会分析给定数据包的 IP 首部信息;
5、学会手工计算 IP 校验和的方法;

【实验流程】
1、安装wireshark;
2、熟悉软件使用;
3、分析IP数据包格式;
4、抓包分析http、ping等协议。

【实验原理】
网际协议 IP 是 TCP/IP 协议栈的心脏,也是网络层中最重要的协议。目前几乎所有的上层 网络协议都是基于 IP 协议。在接收数据的时候,网络层接收由数据链路层发送的数据包进 行解封装,并把该数据包发送到更高层——传输层,在发送数据的时候,网络层接受由传输 层发送的数据包进行 IP 封装,然后把数据报交给下层——数据链路层。

IP 协议处于 TCP/IP 协议栈的网际层,用于管理数据通信中源端和目的端之间的报文传送,
是互联网最重要的网际协议。IP 地址是也叫逻辑地址,用于在网络中标识主机。在 IP网络
中,主机之间进行通信时使用 IP 地址来指定接收端的主机地址。 数据进行封装过程中,IP层负责将数据封装成 IP包,IPv4数据包报文格式如下图所示。
计算机网络实验|基本报文分析_第2张图片
如上图所示,在 IP 包中,各字段含义如下所述:
版本:长度为 4 比特,含义为版本号,对于 IPv4 来说,版本号为 4。

报头长度:报头长度字段为 4 比特,用于表示 IP 报头长度,在 IPv4 中,由于选项字段长度可变,因此,报头长度并不固定,报头字节长度为这一字段值的 4 倍。

业务类型:业务类型字段长度为 8 比特,主要用于标识 QOS 服务等级。

总长度:总长度字段共 16 比特,因此 IP 报的最大长度为 65535 字节。

标识符(Identifier):长度 16 比特。该字段和标识及分段偏移字段联合使用,对大的上层数据包进行分段(fragment)操作。

标记(Flags):长度 3 比特。该字段第一位不使用,第二位是 DF 位,DF 位设为1 时表明路由器不能对该上层数据包分段。如果一个上层数据包无法在不分段的情况下进行转发, 则路由器会丢弃该上层数据包并返回一个错误信息。第三位是 MF位,当路由器对一个上层 数据包分段,则路由器会在除了最后一个分段的 IP 包的包头中将 MF 位设为 1。

分段偏移(Fragment Offset):长度 13 比特。用于指明分片 IP 包在原 IP 包中的 偏移量。由于 IP 包在网络上传送的时候不一定能按顺序到达,这个字段保证了目标路由器 在接受到 IP 包之后能够还原分段的上层数据包。当某个包含分段的上层数据包的 IP 包在 传送时丢失,则整个一系列包含分段的上层数据包的 IP 包都会被要求重传。

生存时间(TTL):长度 8 比特。当 IP 包进行传送时,先会对该字段赋予某个特定的 值。当 IP 包经过每一个路由器的时候,路由器会将 IP 包的 TTL 值减少 1。如果TTL 减 少为 0,则该 IP 包会被丢弃。这个字段可以防止由于路由故障而导致 IP 包在网络中不停 被转发。

协议号(Protocol):长度 8 比特。标识了上层所使用的协议。 报头校验和(Header Checksum):长度 16 位,由于 IP 包头是变长的,所以提供一个头部校验来保证 IP 包头中信息的正确性。

源和目标地址(Source and Destination Addresses):这两个地段都是 32 比特。标识了这个 IP 包的起源和目标地址。 可选项(Options):这是一个可变长的字段。该字段由起源设备根据需要改写。

【实验步骤】
步骤一:设定实验环境
1、参照实验拓扑连接网络拓扑;
2、配置 PC 机及路由器 IP 地址;

步骤二:wireshark安装使用
wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。使用wireshark的人必须了解网络协议,否则就看不懂wireshark 了。

为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。

wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS 中的内容,总结,如果是处理HTTP,HTTPS 还是用Fiddler,其他协议比如TCP,UDP 就用 wireshark。

wireshark 开始抓包

开始界面
计算机网络实验|基本报文分析_第3张图片
wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。

点击Caputre->Interfaces… 出现下面对话框,选择正确的网卡。然后点击"Start"按钮, 开始抓包
计算机网络实验|基本报文分析_第4张图片

Wireshark 窗口介绍


WireShark 主要分为这几个界面

  1. Display Filter(显示过滤器), 用于过滤
  2. Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。
  3. Packet Details Pane(封包详细信息), 显示封包中的字段 4. Dissector Pane(16进制数据)
  4. Miscellanous(地址栏,杂项)
Wireshark 显示过滤

在这里插入图片描述
使用过滤是非常重要的, 初学者使用wireshark时,将会得到大量的冗余信息,在几千 甚至几万条记录中,以至于很难找到自己需要的部分。搞得晕头转向。

过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。

过滤器有两种, 一种是显示过滤器,就是主界面上那个,用来在捕获的记录中找到所需要的记录 一种是捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录。在Capture -> Capture Filters 中设置

保存过滤
在Filter栏上,填好Filter的表达式后,点击Save按钮, 取个名字。比如"Filter 102"
计算机网络实验|基本报文分析_第5张图片
Filter栏上就多了个"Filter 102" 的按钮
在这里插入图片描述

过滤表达式 用途
http 只查看 HTTP 协议的记录
ip.src == 192.168.1.102 or ip.dst ==192.168.1.102 源地址或者目标地址是 192.168.1.102
封包列表(Packet List Pane)

封包列表的面板中显示,编号,时间戳,源地址,目标地址,协议,长度,以及封包信息。 你可以看到不同的协议用了不同的颜色显示。
你也可以修改这些显示颜色的规则, View ->Coloring Rules.

封包详细信息 (Packet Details Pane) 这个面板是我们最重要的,用来查看协议中的每一个字段。
各行信息分别为:
Frame: 物理层的数据帧概况
Ethernet II: 数据链路层以太网帧头部信息
Internet Protocol Version 4: 互联网层IP包头部信息
Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议

wireshark与对应的OSI七层模型

从下图可以看到wireshark捕获到的TCP包中的每个字段
计算机网络实验|基本报文分析_第6张图片

TCP三次握手过程

计算机网络实验|基本报文分析_第7张图片
用wireshark实际分析下三次握手的过程。
打开wireshark, 打开浏览器输入某个网站,例如www.hdu.edu.cn 在wireshark中输入http过滤, 然后选中GET / HTTP/1.1的那条记录,右键然后点击"Follow TCP Stream",

这样做的目的是为了得到与浏览器打开网站相关的数据包,将得到如下图

图中可以看到wireshark截获到了三次握手的三个数据包。第四个包才是HTTP的, 这说 明HTTP的确是使用TCP建立连接的。

第一次握手数据包
客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图

第二次握手的数据包
服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置 为客户的I S N加1以.即0+1=1, 如下图

第三次握手的数据包
客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序 号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图:

就这样通过了TCP三次握手,建立了连接

步骤三:wireshark捕获IP数据包格式分析
步骤四:wireshark捕获完整HTTP、ping数据流

【思考问题】
结合实验过程中的实验结果,问答下列问题:
1、实验所用主机的 IP 地址、子网掩码、网络号、子网号分别是多少?该主机的 IP 地址属于哪类?
2、IP 数据包在从源主机出发到达目的主机的过程中,IP 首部中的 IP 源地址和目的地址字段是否发生变化?

你可能感兴趣的:(基本报文分析,计算机网络)