本文将会展示IP数据报格式,并利用wireshark抓包,然后加以分析
话不多说,直接上图
wireshark抓包分析
版本:占4位,Version 4(IPv4),指IP协议的版本
首部:占4位,可表示最大十进制数是15(1111),所以首部长度最大为60字节
区分服务:占8位,只有在使用区分服务时,这个字段才起作用
总长度:占16位,总长度指首部和数据之和的长度,单位为字节,数据报的最大长度为2^16-1=65535字节
标识:占16位,IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段
标志:占3位,但只有2位有意义
标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。
标志字段中间的一位记为DF(Don’t Fragment),意思是“不能分片”。只有当DF=0时才允许分片。
片偏移:占13位,片偏移指出:较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,除了最后一个分片,每个分片的长度一定是8字节(64位)的整数倍。
生存时间:占8位,TTL(Time To Live)是数据报在网络中的寿命,目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源,路由器在转发数据报之前就把TTL值减1,若TTL值减少到零,就丢弃这个数据报,不再转发
协议:占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程
首部校验和:占16位,这个字段只检验数据报的首部,但不包括数据部分
源地址:占32位
目的地址:占32位