《计算机组网试验-基本报文分析|CSDN创作打卡》杭州电子科技大学

【实验目的】

1、理解 IP 层的作用以及 IP 地址的分类方法;

2、理解子网的划分和子网掩码的作用;

3、掌握 IP 数据包的组成和网络层的基本功能;

实验拓扑图:

【实验内容】

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数据包报文格式如下图所示。

 

如上图所示,在 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 开始抓包

开始界面

 

wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。因为连接的是学校的局域网,所以我选择的网卡是WLAN,抓取的是学校官网的数据。

WireShark 主要分为这几个界面

Display Filter(显示过滤器), 用于过滤

Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。

Packet Details Pane(封包详细信息), 显示封包中的字段 4. Dissector Pane(16进制数据)

Miscellanous(地址栏,杂项)

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

 以学校的IP地址作为源地址或者目的地址进行过滤

wireshark与对应的5层模型

 从下图可以看到wireshark捕获到的TCP包中的每个字段

用wireshark实际分析下三次握手的过程。
打开wireshark, 打开浏览器输入某个网站,例如www.hdu.edu.cn 在wireshark中输入http过滤, 然后选中GET / HTTP/1.1的那条记录,右键然后点击"Follow TCP Stream",

 

第一次握手数据包
客户端发送一个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 地

址属于哪类?

本机IP: 162.9.20.18

子网掩码: 255.255.255.0

网络号:162.9.0.0

子网号:162.9.20.0 

主机的 IP 地址属于:B类地址

2、IP 数据包在从源主机出发到达目的主机的过程中,IP 首部中的 IP 源地址和目的

地址字段是否发生变化?

        会发生变化,一般用局域网上网的的用户都知道,一个路由器端口,都有一个路由器子分配的IP地址,就像上海闵行区的电信是:192.168.1.1如果路由器里分配的的时候自然就成了:192.168.1.100 192.168.1.101等。

 

 

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MCL.龙默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值