TCP/IP / IP 头

本文深入解析了IPv4与IPv6的版本区别,详细介绍了IP数据包的结构,包括首部长度、总长度、标识、标志字段、段偏移、TTL、协议字段、校验和以及源和目的IP地址等关键概念。同时,文章阐述了IP包如何在网络中进行分段、重组和转发,以及TTL如何避免路由环路。

1、版本

  • b0100,IPv4 。
  • b0110,IPv6 。

2、首部长度,固定为 20B 。

3、服务器类型,略。

4、总长度,IP 头 + 数据 的总字节数量,因为占用16bit,故最大长度为 65525 。

5、标识,该字段 和 标志、段偏移量 字段联合使用,对较大的上层数据包进行分段(fragment)操作。路由器将一个包拆分后,所有拆分开的小包被标识相同的值,以便目的端设备能够区分哪个包属于被拆分开的包的一部分。

6、标志字段中的 DF(Don't Fragment)位,DF位设为 1 时表明路由器不能对该上层数据包分段。如果一个上层数据包无法在不分段的情况下进行转发,则路由器会丢弃该上层数据包并返回一个错误信息。

7、标志字段中的 MF(More Fragments)位,当路由器对一个上层数据包分段,则路由器会在除了最后一个分段的IP包的包头中将 MF 位设为 1。

8、段偏移,表示该IP包在该组分片包中位置,接收端靠此来组装并还原 IP 包。

9、寿命,TTL,当IP包进行传送时,先会对该字段赋予某个特定的值。当IP包经过每一个沿途的路由器的时候,每个沿途的路由器会将IP包的TTL值减少1。如果TTL减少为0,则该IP包会被丢弃。这个字段可以防止由于路由环路而导致IP包在网络中不停被转发。

10、协议,标识了上层所使用的协议。以下是比较常用的协议号:

协议名称
1ICMP
2IGMP
6TCP
17UDP

11、校验和,用来做 IP 头部的校验,但不包含数据部分。 因为每个路由器要改变TTL的值,所以路由器会为每个通过的数据包重新计算这个值。 

12、源 IP 和目的 IP,略。

 

(SAW:Game Over!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值