ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

IP协议详解

2021-05-12 09:59:32  阅读:426  来源: 互联网

标签:协议 fragment IP 偏移量 1500 详解 分片 数据包


文章目录

参考视频

https://www.bilibili.com/video/BV12K4y1d7kX/

抓取IP协议内容

在这里插入图片描述

IP协议字段解释

  • version:版本
  • header length:头长度
  • differentiated service field:差分服务区域
  • total length:总长度
  • identification:标识位
  • flags:标志位
  • fragment offset:偏移量
  • time to live:生存周期
  • Protocol:上层协议
  • Header checksum:校验和
  • Source:源IP地址
  • destination:目的IP地址

IP协议处理分片

MTU

  • 最大传输单元,默认是1500字节
  • 指的是一个数据包从网卡发出时,最大的total length的长度
  • 如果大于1500字节就会进行分片

举例讲解

ping -s 5000 192.168.1.2

ping -s 4000 192.168.1.2

理解identification的作用

  • 数据包1:5000字节需要分片,分成1500,1500,1500,500,四片
  • 数据包2:4000字节需要分片,分成1500,1500,1000,三片

identification的作用就是用来标识一个分片的,也就是说:数据包1的identification都是一致的,数据包2的identification也都是一致的

理解flags的作用

  • Reserved bit:保留位,暂时没作用
  • Don’t fragment:DM位,该位置1,说明该数据包不能被分片
    • 当一个数据包大于接口的MTU时,又不能分片,那么网络设备就会丢弃该数据包。主要是用来测试接口的MTU大小的
  • More fragment:FM位,如果是最后一个分片,就用0来表示,不是最后一个分片就用1来表示

理解fragment offset的作用

  • fragment offset也叫偏移量,偏移的计算是payload部分
  • payload指的是去掉二层头部和三层头部后的内容
  • 1500字节的分片,指的是IP+payload的大小
  • 加上E2,整个数据包抓包看到的大小是1514字节

整个数据包的组成

14B + 20B + 1480B

  • 第一个分片的payload取值范围:0~1479

    • 偏移量:0
  • 第二个分片的偏移量:1480-2959

    • 偏移量:1480
  • 第三个分片的偏移量:2960-4439

    • 偏移量:2960
  • 第四个分片的偏移量:4440~5919

    • 偏移量:4440

抓包验证分片字段

标签:协议,fragment,IP,偏移量,1500,详解,分片,数据包
来源: https://blog.csdn.net/u010599211/article/details/116696069

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有