IP协议抓包分析 wireshark源文件,包括切片(一文看完IP包分析,附源文件,ppt,操作视频)

目录

 

一.原理

二.IP包分析

三.TTL字段分析

四.切片分析

五.源文件下载


一.原理

前言:TCP/IP四层模型和OSI模型对照,以及FTP在模型中的位置。

1.IP协议包格式

2.各个字段注解:

版本 : 4 , IP 协议的版本 . 通信双方使用的 IP 协议版本必须一致
首部长度 : 4 , 可表示的最大十进制数值是 15. 请注意 , 这个字段所表示数的单位是 32 位字 (1 32 位字长是 4 字节 ), 因此 , IP 的首部长度为 1111 , 首部长度就达到 60 字节 . IP 分组的首部长度不是 4 字节的整数倍时 , 必须利用最后的填充字段加以填充 . 因此数据部分永远在 4 字节的整数倍开始 , 这样在实现 IP 协议时较为方便 . 首部长度限制为 60 字节的缺点是有时可能不够用 . 这样做的目的是希望用户尽量减少开销 . 最常用的首部长度就是 20 字节 ( 即首部长度为 0101), 这时不使用任何选项 .
服务 : 8 , 用来获得更好的服务 . 这个字段在旧标准中叫做服务类型 , 但实际上一直没有被使用过 .1998 IETF 把这个字段改名为区分服务 DS(Differentiated Services). 只有在使用区分服务时 , 这个字段才起作用 .

总长度:总长度指首都及数据之和的长度,单位为字节.因为总长度字段为 16,所以数据报的最大长度为 216-1=65 535字节.IP层下面的每一种数据链路层都有自己的帧格式,其中包括帧格式中的数据字段的最大长度,即最大传送单元 MTU (Maximum Transfer Unit).当一个数据报封装成链路层的帧时,此数据报的总长度 (首部加上数据)一定不能超过下面的数据链路层的MTU,否则要分片.

标识 (Identification):16.IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加 1,并将此值赋给标识字段.但这个"标识"并不是序号,因为 IP是无连接的服务,数据报不存在按序接收的问题.当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中.相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报.

生存时间(Time To Live):8, 其表明数据报在网络中的寿命.由发出数据报的源点设置这个字段.其目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源.最初的设计是以秒作为 TTL的单位.每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间.若数据报在路由器消耗的时间小于 1 ,就把TTL值减 1.TTL值为 0,就丢弃这个数据报.

协议:8 .协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程.

首部检验和:16.这个字段只检验数据报的首部,但不包括数据部分.这是因为数据报每经过一个路由器,都要重新计算一下首都检验和 (一些字段,如生存时间,标志,片偏移等都可能发生变化),不检验数据部分可减少计算的工作量.

源地址:32.

目的地址:32


二.IP包分析

1.访问内部搭建的www网站,ip地址为1922.168.1.154,抓包如下

2.对于TCP中的字段分析,其ip版本号和头部长度字段如下:

3.服务字段(无用处)

4.总长度

5.标识

6.标志,片偏移

7.生存时间(Time To Live)

8.协议类型(TCP)

9.首部检验和

10.源地址

11.目的地址


三.TTL字段分析

      TTL(生存时间)是网络发送的数据包中包含的计时器值,它告诉接收者在丢弃和过期数据(数据包)之前要保留或使用该数据包多长时间。对于不同的操作系统,TTL值是不同的。

一般情况下:

设备/操作系统

TTL

* nix(Linux / Unix)

64

Windows

128

1.上面的ttl字段如下,win10系统

2.ping实验室一台linux服务器(后面-l 4000 用于下文的ip切片分析)

3.ping百度:

4.使用tracert命令 对访问百度所经过的路由进行跟踪:

tracer命令主要原理:使用ICMP协议的回显,进行判断。主要操作:设置从0开始的ttl字段的长度,然后依次低增1,直到抵达目标地址。根据不同的ICMP回显,来进行追踪。


四.切片分析

原理:

数据链路层(用以太网来举例)对上一层数据(网络层数据)长度的限制

在单个帧中, IP 数据包必须小于 1500 字节 ,这个 1500 就是 MTU(max transmission unit) 能达到的最大值 ,   它是数据链路层允许的最大 IP
下面 通过使用 ICMP 包,来产生 IP 分片 数据包。 ICMP 包进行测试时,如果不指定包的大小,可能无法查看被分片的 数据包。
由于 IP 首部占用 20 个字节, ICMP 首部占 8 个字节,所以 捕获的 ICMP 包数据部分大小 最大为 1472 字节
这里使用 ping 命令通过 ICMP 协议,发送大于 1472 的包,便可产生切片。

1.使用ping命令构造较大数据包,使得产生切片:

2.抓包结果如下:(过滤条件ip.addr== 192.168.1.146)

(由上可知,将会分成3个片段)

3.分析前三个包即可(通过标识位可验证是否属于同一个包),第一个包如下:

DF位=0,MF位=1,说明后面还有数据包。标识位:0xe25b(57947)

4.第二个包如下:

DF位=0,MF位=1,说明后面还有数据包。标识位:0xe25b(57947)

5.第三个切片如下:

DF位=0,MF位=0,说明后面没有该数据包。标识位:0xe25b(57947)

6.偏移量计算:

7总结:


五.源文件下载

下载地址:IP协议抓包分析wireshark源文件,包括切片-互联网文档类资源-CSDN下载

本文链接:CSDN

形成的ppt以及操作视频:计算机网络IPFTP协议分析.ppt(wireshark抓包分析)-互联网文档类资源-CSDN下载

wireshark源文件github地址:GitHub - 869019048/ftp_ip_protocel_wiresharkfile

  • 3
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Alocus_

如果我的内容帮助到你,打赏我吧

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

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

打赏作者

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

抵扣说明:

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

余额充值