IPv6:连接一切
IPv6的口号是:连接一切。
到今天,全球联网设备数量首次超过了全世界的人口。
未来几年,汽车、电视、数字机顶盒、电表、摄像头、医疗健康...等数十亿规模的设备将连接网络。据Gartner预计,到2020年将有超过260亿个物联网设备连接到互联网。
不幸的是,IPv4早在上个世纪80年代就开发出来了,IPv4只有43亿个IP地址,而全球人口早已超过60亿,每人平均可分配量不到一个,到2020年,随着设备连接数量的增长, IPv4地址空间可以容纳的连网设备不到估值的20%。
如果互联网和物联网要持续发展,就必须建立在IPv6基础之上。
何为IP
IP代表了电脑在Internet网络上独一无二的地址,用来与其他节点 (电脑)相连沟通。
作用如同门牌号码一般。IP地址是用来分辨网络上的不同电脑,让我们可以很容易的知道,谁来过这里做了什么事情。
举一个日常生活中的例子。
如上图所示,住在北大街的住户要能互相找到对方,必须各自都要有个门牌号,这个门牌号就是各家的地址,门牌号的表示方法为:
北大街+XX号。假如1号住户要找6号住户,过程是这样的,1号在大街上喊了一声:”谁是6号,请回答。”,
这时北大街的住户都听到了,但只有6号作了回答,这个喊的过程叫”广播”,北大街的所有用户就是他的广播范围,假如北大街共有20个用户,那广播地址就是:
北大街 21号。也就是说,北大街的任何一个用户喊一声能让”广播地址-1”个用户听到。
从这个例中可以抽出下面几个词:
街道地址:北大街,如果给该大街一个地址则用第一个住户的地址-1,此例为:北大街0号
住户的号:如1号、2号等。
住户的地址:街道地址+XX号,如北大街 1号、北大街 2号等
广播地址:最后一个住户的地址+1,此例为:北大街21号
Internet网络中,每个上网的计算机都有一个像上述例子的地址,这个地址就是IP地址,是分配给网络设备的门牌号,为了网络中的计算机能够互相访问,IP地址=网络地址+主机地址,图1中的IP地址是192.168.100.1,这个地址中包含了很多含义。如下所示:
网络地址(相当于街道地址): 192.168.100.0
主机地址(相当于各户的门号): 0.0.0.1
IP地址(相当于住户地址): 网络地址+主机地址=192.168.100.1
广播地址: 192.168.100.255
IP地址的结构
IP地址 = 网络地址+主机地址。
网络地址(Network ID)
网络地址位于 IP 地址的前段,可用来识别所属的网络。同一网络上的所有设备,都会有相同的网络地址。IP路由便是依据IP地址的网络地址,决定要将IP包送至哪的网络。
主机地址(Host ID)
主机地址位于IP的后段,可用来识别网络上个别的设备。同一网络上的设备都会有相同的网络地址,而各设备之间则是以主机地址来区别。
由于各个网络的规模大小不一,大型的网络应该使用较短的网络地址,以便能使用较多的主机地址;反之,较小的网络则应该使用较长的IP地址。
为了符合不同网络规模的需求,IP在设计时便依据网络地址的长度,划分出IP地址等级。
常见的3种地址等级
Class A
网络地址长度为8 Bits,最左边的Bit必须为 0。 Class A 的网络地址可从00000000(二进位)至 01111111(二进位),,总共有 27=128 个。由于Class A 的网络地址长度为8 Bits,因此主机地址长度为 32-8=24Bits,亦即每个Class A 网络可用的主机地址只有2^24=16777216个(一千六百多万)。
大部分Class A的IP地址,早已分配给当初参与ARPAnet(Internet 的前身)实验的政府机关、学术单位、企业和非营利组织,例如:美国国防部、麻省理工学院和惠普公司。
Class B
网络地址的长度为16 Bits,最左边的 2 Bits必须为10(2进制),因此Class B 的 IP 地址必然介于128.0.0.0 与191.255.255.255 之间。每个Class B网络可用的主机地址有 2^16=65536个,通常用来分配给一些大企业或 ISP使用.
Class C
网络地址的长度为 24 Bits,最左边的3 Bits必须为110(2进制),因此Class C的IP 地址必然介于 192.0.0.0 与 223.255.255.255之间。每个 Class C网络可用的主机地址只有 2^8=256个,通常用来分配给一些小型企业。
IPv4演进
IPv4使用32Bits地址,因此只有 4,294,967,296(232)个地址。不过,一些地址是为特殊用途所保留的,如专用网络(约18 百万个地址)和多播地址(约 270 百万 个地址)。
随着地址不断被分配,IPv4地址枯竭问题也在随之产生。
1981年9月, IETF发布RFC791,此RFC替换了于1980年1月发布的RFC 760,以面向之前未曾考虑到的移动终端设备。
但是,网络的快速发展,规模远超设计当初的预期。1990年代前期,IETF开始检讨以下3个问题:
①IPv4的极限
②IPv4的延续策略
③设计新的IP
IPv4的极限
•IP地址数的不足
•路由表太大
接续上的网络数量增加的话路由表也会跟着变大
因此提出了三种解决办法:CIDR、NAT和IPv6。
CIDR
废止IP分类方式,让网络地址的位数不再一定是8的倍数,而是可变动的,加入维持路径表大小的技术,利用路由汇整方式来维持路由表的大小 。
遭遇困难:汇集的网络都必须是集中在附近的,这跟目前实际依组织分配,分布全球的IP规划是大不相同的,也使得实际达成的可能性微乎其微。
NAT (Network Address Translation)
只对出入网关分配真实地址,内部的主机则采用私有地址的方式;以网关器来做转换。
遭遇问题:NAT坏点对点的透明性( 无法确认真实身份 ),没有真实地址,无法达成P2P通信;NAT使得 QoS 、 Security功能及协定失效;提高网络隐藏性的成本等等。
因此,IPv4的延续策略尽管暂时缓解IPv4地址紧张,但不是根本解决办法。
▲需要注意的是,地址空间不足并不是IPv6的唯一驱动力
于是,开始考量下一代IP协议,转向IPv6。
转向IPv6
地址空间扩充
IPv4的地址长度为32位,地址空间为2的32次方,约42亿(世界上平均3个人有2个IP地址)。
IPv6的地址长度为128位,地址空间为2的128次方,约3.4×10^38个(地球上每一粒沙子都有一个IP地址)。
IPv6地址表示
IPv4地址表示二进制:10101100 00010000 00000001 00000001 十进制:172.16.1.1
IPv6地址表示十六进制 2001:0410:0000:0001:0000:0000:0000:45ff
IPv6地址与IPv4地址表示方法有所不同,用十六进制表示,4位一组,中间用“:”隔开。
IPv6地址的压缩表示
若以零开头可以省略,连续全零的组可用“::”表示
IPv6地址 = 前缀 + 接口标识
前缀:相当于IPv4地址中的网络ID
接口标识:相当于IPv4地址中的主机ID
前缀长度用“/xx”来表示
2001:da8:207::8207/64
地址前缀部分,或者有固定的值,或者是路由或子网的标识。例如:站点本地地址
IPv6地址分类
单播地址(Unicast Address)
如同 IPv4 的Unicast模式,适用在单一节点对单一节点的数据传送。标识一个接口,目的地址为单播地址的报文会被送到被标识的接口。
这种类型的IPv6地址可区分为Global、Site-Local、Link-Local和IPv4-Compatible 4种型态。
①Global 地址:
前3 bits为首码,内容固定是001,最后的64 bits 为接口标识(Interface ID)。Interface ID的功能如同 IPv4 的主机地址(Host ID)。
②Site-Local 地址:
前10 bits 为首码,内容固定为1111111011,间隔38 bits的0之后,接着16 bits 的子网地址(Subnet ID),最后才是 64 bits 的接口标识。
③Link-Local 地址:
也是用前10 bits为首码,内容固定为1111111010,接着是连续54 bits的0,最后的64 bits也是接口标识。
④IPv4-Compatible 地址: 没有所谓的首码与接口标识,只有原本32 bits的IPv4地址前面,加上96 bits的 0。
组播地址(Multicast Address)
IPv6 的组播整合了IPv4的Multicast及广播传送 (Broadcast),适用于单一节点对多节点的传送。标识多个接口,目的地址为组播地址的报文会被送到被标识的所有接口。
这种类型的 IPv6 地址用前8 bits为首码,内容固定为11111111,最后112 bits为Group ID。
任播地址(Anycast Address)
Anycast是IPv6地址新增的类型。它的特殊之处在于:一个Anycast地址可以被多个节点使用,但是传送给此地址的报文,并非真的将它送到这些节点来,而仅仅是送给距离最近或成本最低(根据路由表来判断)的一个节点。
以目前的应用为例,Anycast地址只能分配给路由器,不能分配给电脑使用,而且不能作为发送端的地址。这种IPv6地址的首码长度不固定,首码以外的位元都是0。
IPv6与IPv4的并存和转换
IPv6的实现需通过既有IPv4设备过渡至IPv6, 才能以最少的代价实现IPv6应用。过渡技术主要解决IPV4和IPV6网络共存状况下的互联互通,主要有三种策略:
双栈 (Dual-Stack)
双栈是在原有网路层 (Network Layer) 上, 再增加一个 IPv6的堆栈 (Stack) ,让主机同时具备IPv4和IPv6通讯能力。
隧道技术( Tunneling )
在 IPv6 报文进入IPv4的网域时,将IPv6报文前面加上 IPv4报头, 再送入IPv4 网域。当离开IPv4网域进入IPv6网域时, 再将IPv4的抱头移除,还原回原本的IPv6报文。或由MPLS承载在IPv4 Internet海洋中连接多个IPv6孤岛。
协议转换
提供IPV4和IPV6的互通动作。如NAT-PT等提供IPv6与IPv4互相访问地技术,适用于IPv6 Inernet与IPv4 Internet共存,而两者又需要互相通讯的要求。
IPv6的优点
近乎无限的地址空间
更简洁的报文头部
内置的安全性
IPv4原本是为学术研究而生,因而使用初衷较为单纯且环境也较为封闭,所以安全机制并不是很完善,
随着时代的演进,网络的普及程度已今非昔比,所以安全问题更加受到关注,虽然IPv4通过IPSec提供安全保护,但架设与管理也是额外的负担。
而IPv6在设计时已对安全性的问题进行考量,希望提供内嵌式的点对点安全保护能力,改善安全问题。
更好的QoS支持
更好的移动性
编址层次等级
IPv6应用举例
移动通信:随时随地移动上网
时时在线,双向通信:网络游戏、网络课堂、随时随地资源共享
万物连接:
组播应用:
应用于出租车联网:
还有利用IPv6无状态自动配置的特点部署IPv6视频摄像头等等...
总之,由于IPv4网络地址随着网络的需求量而慢慢的被消耗殆尽, 而IPv6补足IPv4所欠缺的,不仅在IP地址空间上增加了许多, 还在安全、自动配置......上加强了许多功能。
这次中共中央办公厅、国务院办公厅印发《推进互联网协议第六版(IPv6)规模部署行动计划》,将推进IPv6规模部署,高效支撑移动互联网、物联网、工业互联网、云计算、大数据、人工智能等新兴领域快速发展。
责任编辑:售电衡衡
-
氢燃料电池才是未来?全世界为何都绕不开丰田这个巨人
2018-04-24氢燃料电池 -
氢燃料电池才是未来?全世界为何都绕不开丰田这个巨人
2018-04-24氢燃料电池 -
氢燃料电池才是未来?全世界为何都绕不开丰田这个巨人
2018-04-24氢燃料电池