IP数据报长啥样——分析IP数据报格式
通过IP数据报的格式,我们能够更清楚的知道IP协议的作用。IPv4的数据报一般以32位为单位来描述,下面的图是一个IP数据报格式图:
我们建议学习IP数据报格式时,可以使用抓包工具(如wireshark),抓取一些IP数据报,认真观察对比。
现在,我们来看IP数据报首部各个字段的作用:
(1)版本:占4位,指IP协议的版本。
(2)首部长度:占4位,指首部长度(不含数据部分),单位为4字节。因为首部固定部分为20字节,所以该字段值最小为5(0101)
(3)区分服务:占8位,目前没啥用途。
(4)总长度:占16位,首部长度数据部分长度,单位为字节。那么理论上,一个IPv4的数据报长度最大为2的16次方减1字节,及65535字节。但数据报最大长度是受MTU(最大传输单元)控制的,一个数据报的长度不可以超过MTU设定值。这个设定值一般设置为1500。因为过长的数据报,路由器的转发速度就会变慢,但如果数据报太小,那么转发效率就会上不去。当一个数据报长度超过MTU的时候,就需要将一个长的数据报拆分成几个数据报分片。
(5)标识:占16位,系统中有一个计数器,每当产生一个数据报,这个计数器就自增1,标识字段的值就是这个自增的数字。通过这个标识值,以及后面会说到的标志字段和偏移量,就可以将分片重装为原来的数据报。
(6)标志:占3位,但目前就只有后两位有意义:
中间位,Don't fragment:不能分片。只有该位为0时,才允许分片
最后一位,More fragments:还有分片。若该值为0表示已经是最后一个分片了,否则表示后面还有分片。
(7)偏移量:占13位。它表示某分片的在原始分组的数据部分的相对位置。单位为8字节。
(8)跳数限制:占8位,它是为了防止一个数据报在网络中无限制的传播。这个字段的值表示该数据报最多能经过多少个路由器,当经过一个路由器时,该值就减1,等到该值为0时数据报还未交付成功,那么路由器就丢弃此数据报。
(9)协议:表示此数据报携带的数据使用哪种协议,常用的协议有:
ICMP:值为0
IP:值为4
TCP:值为6
UDP:值为17
(10)首部校验和:占16位,这个字段只校验数据报的首部,但不包括数据部分。通过该字段可以计算该数据报是否出些差错。
(11)源地址:占32位。
(12)目的地址:占32位。
(13)可选部分:几乎用不到。
以上是IP数据报长啥样——分析IP数据报格式的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

本文介绍了如何在Linux中使用正则表达式(REGEX)进行模式匹配,文件搜索和文本操作,详细列式,命令和工具,例如GREP,SED和AWK。

本文讨论了使用TOP,HTOP和VMSTAT监视Linux系统性能,并详细介绍其独特功能和自定义选项,以进行有效的系统管理。

本文提供了有关使用Google Authenticator在Linux上设置两因素身份验证(2FA)的指南,详细介绍了安装,配置和故障排除步骤。它突出了2FA的安全益处,例如增强的SEC

文章讨论了使用APT,YUM和DNF在Linux中管理软件包,涵盖安装,更新和删除。它比较了它们对不同分布的功能和适用性。

本文解释了如何管理Linux中的Sudo特权,包括授予,撤销和安全性最佳实践。关键重点是安全和sudoers安全和限制访问。Character数量:159

Linux初学者应掌握文件管理、用户管理和网络配置等基本操作。1)文件管理:使用mkdir、touch、ls、rm、mv、cp命令。2)用户管理:使用useradd、passwd、userdel、usermod命令。3)网络配置:使用ifconfig、echo、ufw命令。这些操作是Linux系统管理的基础,熟练掌握它们可以有效管理系统。

DebianSniffer是一个网络嗅探工具,用于捕获和分析网络数据包时间戳(Timestamp):显示数据包捕获的时间,通常以秒为单位。源IP地址(SourceIP):发送数据包的设备的网络地址。目标IP地址(DestinationIP):接收数据包的设备的网络地址。源端口(SourcePort):发送数据包的设备使用的端口号。目标端口(Destinatio

本文介绍几种检查Debian系统OpenSSL配置的方法,助您快速掌握系统安全状态。一、确认OpenSSL版本首先,验证OpenSSL是否已安装及版本信息。在终端输入以下命令:opensslversion若未安装,系统将提示错误。二、查看配置文件OpenSSL主配置文件通常位于/etc/ssl/openssl.cnf。您可以使用文本编辑器(例如nano)查看:sudonano/etc/ssl/openssl.cnf此文件包含密钥、证书路径及加密算法等重要配置信息。三、利用ope
