IP协议 二

   上次我们介绍了每个IP地址在网络里边必须是唯一的,不然一旦出现IP地址冲突,就会导致发送端无法区分应该把数据发给哪个地址。但是随着网络技术的不断发展和普及,IP地址不足的问题日趋显著,如果还是按照以前的放大采用唯一的地址的话,就会有IP地址耗尽的危险。对于那些没有连接互联网的独立网络也就是局域网中的主机,只要保证在这个局域网里边的地址设置成唯一的就可以了。

 

于是就有了私有IP和公有IP的概念,在上边范围内的IP都是私有IP,在此之外的地址是全局IP。私有IP最早没有计划链接互联网,只是用于互联网之外的独立网络,但是随着NAT技术的诞生,让配有私有地址的主机和配有全局地址的互联网主机实现了通信。所以私有地址结合NAT技术已经成为了现在解决IP地址分配问题的主流方案。NAT全称叫做Network Address Translation网络地址转换,NAT通常部署在一个组织的出口位置,当一个数据包出现在的局域网到广域网的时候,NAT技术就会把ip报文头部的地址信息改成自己的。

NAT技术包含很多种,生活里边常用的是NAT重载技术用一张图来说明

NAT重载技术利用了端口号的唯一性来实现公网IP和私有IP的转换,比如我们现在机器的IP是172.18.250.6,很有可能在另一个局域网里边的计算机也是这个IP地址,我们听过AT技术之后,当数据出局域网的时候会经过NAT网关,这时候NAT网关会给整个IP地址分配一个独一无二的端口号,这样IP地址和端口就变成了NAT网关的,219.155.6.240:1723,当数据包发给百度之后,百度就认为是219.155.6.240这个IP发起的请求,就会把返回的数据发给NAT网关,网关拿到之后看端口号之后这是172.18.250.6整个私有地址的数据就把数据发送给了我们的主机,这里边NAT是修改了我们的数据报文的。

 

和TCP/UDP一样,IP也是有一个属于自己的首部信息的。

首先第一个是IP的版本一般来说都是4因为我们大多数用的都是IPV4的协议。

第二个是首部长度,由四个比特位构成,表明IP首部的大小。单位为4个世界,对于没有选项的首部长度设置为5,也就是说当没有可选项的时候,IP首部的长度是20个字节。

第三个是区分服务,由八个比特位构成,用来表明服务质量

第四部分是总长度,也就是IP首部和数据部分合起来的总字节数,长16个比特位,因此IP包的最大长度为65535字节。

第五部分是标识由16个比特位组成,用于分片分组。通常每发送一个IP包,它的值也是逐渐增加的。

第六部分标志由三个比特位构成,表示包被分片的相关信息。第一位0还没有使用必须设置为0,第二位如果是1代表不能分片,0代表可以分片,当包被分片之后第三个比特位用来表示是不是最后一个包,如果是最后一个设置为0,不是最后一个设置为1。

第七部分片唯一由13个比特位钩虫,用来表示被分片的每一个分段相对于原始数据的位置,第一个分片对应的值是0

第八部分生存时间也就是我们常说的TTL,由8个比特位构成,它是指可以中专多少个路由器的意思,每经过一个路由器,TTL就会减少1,直到变成0则丢弃包。

第九部分协议由8个比特位构成, 用来告知IP首部的下一个首部是哪个协议的。

还有很多这里就不一一列举了

第十部分首部校验和,由16个比特位构成,也叫做IP首部校验和,该字段只能校验数据阿伯的首部,不能校验数据部分,主要是用来确保IP数据包不被破坏。

第十一部分源地址表示发送端的IP地址

第十二部分目标地址表示接收端的IP地址

第十三部分可选长度,长度是可以边的,通常只在实验或者诊断的时候才使用。

之后的填充在有选项的情况下,首部长度可能不是32个比特位的整数倍,一般通过向这个字段填充0,调整为32比特的整数倍。

 

上边是IPV4的IP头部格式,下边是IPV6的头部格式做一个了解。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值