然而,这些地址分配不是一成不变地,如果ISP想拥有更多的小子网,完全可以做到(当然,土豪ISP可能会要求再来一个80位网络空间)。最高的48位地址是相互独立地,也就是说ISP与ISP之间虽然可能分到相同地80位网络空间,但是这两个空间是相互隔离的,好处就是一个网络空间里面的地址会聚合在一起。
固定的消息头长度
IPv4消息头长度可变,但IPv6消息头长度被固定为40字节。IPv4会由于额外的参数导致消息头变长,IPv6中,如果有额外参数,这些信息会被放到一个紧挨着消息头的地方,不会被路由器处理,当消息到达目的地时,这些额外参数会被软件提取出来。
IPv6消息头有一个部分叫“flow”,是一个20位伪随机数,用于简化路由器对数据包的路由过程。如果一个数据包存在“flow”,路由器就可以根据这个值作为索引查找路由表,不必慢吞吞地遍历整张路由表来查询路由路径。这个优点使IPv6更容易被路由。
自动配置
IPv6中,当主机开机时,会检查本地网络,看看有没有其他主机使用了自己的IP地址。如果地址没有被使用,就接着查询本地的IPv6路由器,找到后就向它请求一个IPv6地址。然后这台主机就可以连上互联网了——它有自己的IP地址,和自己的默认路由器。
如果这台默认路由器宕机,主机就会接着找其他路由器,作为备用路由器。这个功能在IPv4协议里实现起来非常困难。同样地,假如路由器想改变自己的地址,自己改掉就好了。主机会自动搜索路由器,并自动更新路由器地址。路由器会同时保存新老地址,直到所有主机都把自己地路由器地址更新成新地址。
IPv6自动配置还不是一个完整地解决方案。想要有效地使用互联网,一台主机还需要另外的东西:域名服务器、时间同步服务器、或者还需要一台文件服务器。于是dhcp6出现了,提供与dhcp一样的服务,唯一的区别是dhcp6的机器可以在可路由的状态下启动,一个dhcp进程可以为大量网络提供服务。
唯一的大问题
如果IPv6真的比IPv4好那么多,为什么它还没有被广泛使用起来(Google在2014年5月份估计IPv6的市场占有率为4%)?一个最基本的原因是“先有鸡还是先有蛋”。服务商想让自己的服务器为尽可能多的客户提供服务,这就意味着他们必须部署一个IPv4地址。
当然,他们可以同时使用IPv4和IPv6两套地址,但很少有客户会用到IPv6,并且你还需要对你的软件做一些小修改来适应IPv6。另外比较头疼的一点是,很多家庭的路由器压根不支持IPv6。还有就是ISP也不愿意支持IPv6,我问过我的ISP这个问题,得到的回答是:只有客户明确指出要部署这个时,他们才会用IPv6。然后我问了现在有多少人有这个需求,答案是:包括我在内,共有1个。
与这种现实状况呈明显对比的是,所有主流操作系统:Windows、OS X、Linux都默认支持IPv6好多年了。这些操作系统甚至提供软件让IPv6的数据包披上IPv4的皮来骗过那些会丢弃IPv6数据包的主机,从而达到传输数据的目的。
总结
IPv4已经为我们服务了好长时间。但是它的缺陷会在不远的将来遭遇不可克服的困难。IPv6通过改变地址分配规则、简化数据包路由过程、简化首次加入网络时的配置过程等策略,可以完美解决这个问题。
问题是,大众在接受和使用IPv6的过程中进展缓慢,因为改变代价太大了。好消息是所有操作系统都支持IPv6,所以当你有一天想做出改变,你的电脑只需要改变一点点东西,就能转到全新的架构体系中去。
关注天下网吧微信,了解网吧网咖经营管理,安装维护:
本文来源:不详 作者:佚名