0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IPv4报文格式各字段的含义

网络技术干货圈 来源:网络技术干货圈 2023-12-13 09:43 次阅读

来源:公众号【网络技术干货圈】

作者:圈圈

ID:wljsghq

IPv4报文格式

4675d14c-994c-11ee-8b88-92fbcf53809c.png

上图中各字段的含义如下:

Version版本 4Bit :ip报文中,用来表示该协议采用的是那一个版本的ip,相同版本的ip才能进行通信。一般此处的值为4,表示ipv4。

Header Length头部长度 4Bit :表示整个ip包头的长度,其中单位是4字节。即二进制数0000-1111(十进制数0-15),其中一个最小长度为0字节,最大长度为60字节。一般来说此处的值为0101,表示头长度为20字节。

Type of Service(ToS) 8Bit :差分服务等级的标记。

Total Length总长度 16Bit :该字段表示ip报文的总长度,单位是1字节。能表示的最大字节为2^16-1=65535字节。不过由于链路层的MTU限制。超过1480字节后就会被分片(以太帧MTU为1500的情况下,除去20字节的包头)。

Identification标记位 16Bit :该字段是ip软件实现的时候自动产生的,该字段的目的不是为了接受方的按序接受而设置的,而是在ip分片以后,用来标识同一片分片的。方便ip分片的重组。

Flag标志 3Bit :该字段是与ip分片有关的。其中有三位,第一位保留,其他两位分别为DF,MF。MF标识后面是否还有分片,为1时,表示后面还有分片。DF标识是否能分片,为0表示可以分片,如果为1不能分片,但偏移量字段又不为0,那么就会丢弃该报文。

Fragment offset偏移量 13Bit :该字段是与ip分片后,相应的ip片在总的ip片的位置。该字段的单位是8字节。比如,一个长度为2000字节的ip报文,到达路由器。这是超过了链路层的MTU,需要进行分片,2000字节中,20字节为包头,1980字节为数据,需要分成2个ip片(链路层MTU为1500),那么第一个分片的片偏移就是0,表示该分片在1980的第0位开始,第1479位结束。第二个ip片的片偏移185(1480/8),表示该分片开始的位置在原来ip的第1480位,结束在2000。

TTL 8Bit :该片表示生存周期,该值占8bit。ip分片每经过一个路由器该值减一,它的出现是为了防止路由环路,浪费带宽的问题。

Protocol协议 8Bit :该值标识上层的协议。其中1标识ICMP、2标识IGMP、6标识TCP、17标识UDP、88标识OSPF。

Header CheckSum校验和 16Bit :该值是对整个数据包的包头进行的校验。

源IP和目的IP各32Bit。

如果有Option字段,但没到32Bit,由Padding补齐(补0)。

什么情况下两主机的子网掩码不同,却可以相互通信?

一台主机为172.31.1.1 255.255.255.0
一台主机为 172.31.1.2 255.255.255.224
测试可以ping通……
问: 为什么,什么情况下两主机的子网掩码不同,却可以相互通信?
答:
因为这两台主机都在百同一网段度172.31.1.0,所以能相互通信问
A机的地址:172.31.1.1 255.255.255.0
转换为:10101100 00011111 00000001 00000001
(对齐)11111111 11111111 11111111 00000000
进行相与运算,1与1为1,0与0为0,1与0为0
等于: 10101100 00011111 00000001 00000000 (172.31.1.0)
B机的地址:172.31.1.2 255.255.255.224
转换为:10101100 00011111 00000001 00000010
(对齐)11111111 11111111 11111111 11100000
等于: 10101100 00011111 00000001 00000000 (172.31.1.0)

总结两地址IP地址和掩码相与结果相同即可通信。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ip地址
    +关注

    关注

    0

    文章

    290

    浏览量

    16988
  • IPv4
    +关注

    关注

    0

    文章

    141

    浏览量

    19843
  • Type
    +关注

    关注

    1

    文章

    134

    浏览量

    22629
  • 报文
    +关注

    关注

    0

    文章

    38

    浏览量

    4012

原文标题:网络的基石——IPv4

文章出处:【微信号:网络技术干货圈,微信公众号:网络技术干货圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    IPv6相对于IPv4 WinSock的改变是什么?

    IPv6相对于IPv4 WinSock的改变是什么?兼容IPv4IPv6的WinSock网络编程规则是什么?IPv4
    发表于 05-31 07:09

    跨越IPv4 IPv6转换网关的研究与实现

    互联网的飞速发展使IPV4 协议暴露出了很多问题, 下一代IP 协议IPV6 取代IPV4 是发展的必然,如何解决IPV6 与IPV4 互联
    发表于 01-07 16:04 9次下载

    ipv4ipv6有什么区别

    IPV6和IPV4协议早已为人所共知。IPv4,是互联网协议(Internet Protocol,IP)的第四版,也是第一个被广泛使用,构成现今互联网技术的基石的协议。它的下一个版本就是IPv
    发表于 12-26 16:36 1.7w次阅读
    <b class='flag-5'>ipv4</b>和<b class='flag-5'>ipv</b>6有什么区别

    一种基于粗糙集聚类的报文格式推断方法

    报文格式推断方法,该方法包括预处理、基于粗糙集的聚类、特征词提取和报文格式推断4个阶段。首先,通过数据预处理分离出目标报文中的业务类报文
    发表于 04-25 11:45 3次下载
    一种基于粗糙集聚类的<b class='flag-5'>报文格式</b>推断方法

    网络协议栈:MQTT的报文格式解析

    在上一篇文章,直接在本地搭建了服务器和客户端,简单的实践了MQTT的用法。而这一篇来解析MQTT的报文格式。MQTT的报文字段很精简。但是解析起来还是有些复杂的。 解析报文最好的工具是采用
    的头像 发表于 05-13 14:06 5276次阅读
    网络协议栈:MQTT的<b class='flag-5'>报文格式</b>解析

    什么是ipv6 ipv4ipv6的区别

    ipv6的英文全称是Internet Protocol Version 6,中文为互联网协议第6版。ipv6是互联网工程任务组设计的用于替代IPv4的下一代IP协议,ipv6数量很多,
    的头像 发表于 09-03 16:03 2.2w次阅读

    ipv4中ip分为几类 ipv4ipv6的过渡技术有哪些

    双协议栈:即在IPv4IPv6之间同时部署一个双协议栈,使得IPv4IPv6可以共存。双协议栈过渡技术适用于IPv4
    发表于 05-15 18:15 6759次阅读

    什么是ipv4什么是ipv6 ipv6技术的优缺点

    IPv4IPv6的地址格式不同,它们之间没有直接的换算方法。但是,可以使用IPv4IPv6的双栈机制,实现
    发表于 05-17 18:12 5205次阅读

    ipv6和ipv4有什么区别 ipv4ipv6哪个网速快

    IPv6可以和IPv4兼容,支持IPv4地址的传输和访问,同时也支持IPv4IPv6之间的转换。总之,
    发表于 05-17 18:13 2w次阅读

    Path延时测量相关报文格式介绍

    Pdelay_Req报文格式定义 如下图15所示为IEEE802.1AS定义的报文格式定义: 图15 Pdelay_Req报文格式定义 上图中header与SYNCMessage头信息定义
    的头像 发表于 07-24 10:45 988次阅读
    Path延时测量相关<b class='flag-5'>报文格式</b>介绍

    IP地址:IPV4IPV6的区别

    IPV4互联协议版本4,有版本V4之前就有IPV1 IPV2IPV3,同样有IPV5
    发表于 10-26 10:41 2346次阅读
    IP地址:<b class='flag-5'>IPV4</b>和<b class='flag-5'>IPV</b>6的区别

    恒讯科技分析:IPv4IPv6的网络速度与配置如何选择?

    IPv4(Internet Protocol version 4)和IPv6(Internet Protocol version 6)是两种互联网协议,用于在网络上唯一标识和寻址设备。在选择I
    的头像 发表于 04-03 17:03 1123次阅读

    IPv4IPv6的定义和主要区别

    IPv4IPv6的定义 IPv4,即互联网协议版本4(InternetProtocolversion4),是互联网使用最为广泛的协议之一。
    的头像 发表于 07-11 13:48 352次阅读

    什么是IPV4?什么是IPV6?

    号进行地址分配。 本身不强制要求安全性,但可以通过IPsec等技术来提供安全保障,实施相对复杂。 IPv4报文格式特性: 报文格式较为复杂,包含多个可选字段。 报头长度可变,最小为20
    的头像 发表于 09-23 14:13 205次阅读

    IPv6与IPv4的区别

    IPv6(互联网协议第六版)和IPv4(互联网协议第四版)是用于互联网上设备之间通信的两种主要协议。以下是它们之间的一些主要区别: 地址空间 : IPv4IPv4使用32位地址,提
    的头像 发表于 10-29 17:11 356次阅读