IPv4地址池已于2011.02.03分配完毕,但这个似乎对我们的生活没产生什么影响,11年后,在我们国家至少就增加了数亿部的手机,也没有听说过哪里上不了网,聊不了天,15年AppStore也正式有了IPv6的要求,但这个除了把App开发者折磨了一通之外,也似乎没产生什么影响。
实际上是我们通过复杂的但对个人无感的技术抹掉了地址短缺对我们的影响,比如张三要给李四发微信,那么张三的信息先发到腾讯的服务器上,然后再由服务器转发到李四的手机,那为什么张三不能直接发给李四呢?那是因为李四没有公网IP,李四与公司几十号同事共享一个IP,如果我们发快递,可以署名李四,那么尽管共用一个办公室,快递还是能到李四手上了,这个时候李四其实是成立快递地址的一部分,但李四却不能成为IP地址的一部分。那么腾讯的服务器为什么可以发到李四呢?因为李四的微信客户端(其实所有人的客户端都一样)周期性(每分钟)都在给腾讯服务器发一个特殊消息,俗称“心跳包”,维持信息的长久连接,那么就是说借助张三到腾讯的长连接,然后再通过腾讯与李四的长连接,那么张三的消息就可以发到李四了,李四回给张三也是走同样的路。
那么为什么张三能和腾讯服务器维持一个长连接呢?张三也是在公司里啊。这里就用了IPv4的IP共享技术“NAT”,全称“Network Address Translation”,就是网络地址转换,本质上来讲,张三的公司只有一个IP地址,但通过NAT,又增加了2个字节的端口地址,作为地址的一部分,比如说张三公司IP是202.105.39.75,通过NAT,给张三微信配了一个独立的通道202.105.39.75:1456, 通过1456,信息就可以准确到达张三了,但话又说回来,为什么李四不能通过202.105.39.75:1456 把消息直接发送的,这里的问题就是1456是临时为腾讯服务器与张三通信创建的,这个时间段智能他们双方用,下个十分钟也许这个地址也许就不在了,为了维持这个202.105.39.75:1456地址可用,那么就得双方一直维持这个会话,没有真实消息的时候,那么就发心跳包来维持这个连接。
但这个连接的创建却不是想建就能建的,比如说腾讯服务器要和张三连,那么就会遇到地址共用的问题,不能直接找到张三,但张三却可以找到腾讯,因为腾讯服务器地址是服务器独占的,不存在共享的问题,那么就是说张三必须要作为连接的发起人来创建这个连接。
但在嵌入式与工业领域,却没有这么好的服务,几十K的RAM完全没法运行起Android来,没法装微信,那么就只能通过自建服务器来完成中转,因为几乎每个这类设备都会有类似需求,所以各种“云”开始层出不穷,云提供了数据中转,云也可以存贮数据,但这个云无论是公有云还是私有云都要付出成本。
云也有很多问题,无数的设备要共享带宽,共享存贮,安全与速度都是个问题,用户想自由操作数据也是个问题。
那么有什么好办法呢?
答案就是IPv6!
IPv6是面向下一代的互联网协议。它的提出最初是因为采用32位地址长度的IPv4协议,只有大约43亿个地址。为了扩大地址空间,拟通过IPv6重新定义地址空间。IPv6采用128位地址长度,几乎可以不受限制地提供地址。
IPv4有(232)4,294,967,296个地址。 IPv6有(2128)340,282,366,920,938,463,463,374,607,431,768,211,456个地址(340万亿万亿万亿个地址),相当于地球表面每平方米可以分配到67万亿个地址作为消费主体的“个人”已无独立IP地址可用。 无限的扩展能力:(IPv4地址空间43亿)×43亿×43亿×43亿,足以让地球上每粒沙子都有一个地址
那么就是说我们的个人电脑、传输用的路由器、工厂里的传感器、遥控器或者电机、电灯都可以有了唯一的地址,所以张三再要给李四发消息就再也不用通过腾讯了。
如果IPv6用在工业上,就是说我们的DTU、RTU都可以直达,通过它们的路由,我们的PC也可以直达下挂的微型设备了!
|