IPv6简介 ipv6能干什么
另外,可以用“IPv6地址/前缀长度”来表示地址前缀。这个表示方法类似于CIDR中IPv4的地址前缀表示法。这里IPv6地址是上述任一种表示法所表示的IPv6地址,前缀长度是一个十进制值,指定该地址中最左边的用于组成前缀的位数。其实地址前缀在一定意义上代表了这个IP地址的类型,我们可以参看上表1所示,当然在表中只列出了部分地址前缀所代表的类型,因为目前来说IPv6技术还不是非常成熟,应用也非常少,随着IPv6的深入应用,相信会有更多的IP地址类型通过地址前缀来定义。
为了说明地址前缀表示法,现举一个例,假如一个IP地址它的地址前缀为16位,IP地址为“1080::8:810:213C:123A”,则用地址前缀法表示就为:1080::8:810:213C:123A/32。
为了便于大家对IPv6的理解,下面以表的形式把现在的IPv4与IPv6中的一些关键项进行对比,参见表3。
表3 IPv4与IPv6比对表
IPv4地址 IPv6地址
地址位数:IPv4地址总长度为32位地址位数:IPv6地址总长度为128位,是IPv4的4倍。
地址格式表示:点分十进制格式 地址格式表示:冒号分十六进制格式,带零压缩
按5类Internet地址划分总的IP地址不适用,IPv6没有对应地址划分,而主要是按传输类型划分
网络表示:点分十进制格式的子网掩码或以前缀长度格式表示 网络表示:仅以前缀长度格式表示
环路地址是127.0.0.1 环路地址是 ::1
公共IP地址 IPv6的公共地址为“可聚集全球单点传送地址”。
自动配置的地址(169.254.0.0/16) 链路本地地址(FE80::/64)
多点传送地址(224.0.0.0/4) IPv6多点传送地址(FF00::/8)
包含广播地址 不适用,IPv6未定义广播地址
未指明的的地址为 0.0.0.0 未指明的地址为 :: (0:0:0:0:0:0:0:0)
专用IP地址(10.0.0.0/8、172.16.0.0/12、192.168.0.0/16) 站点本地地址(FEC0::/48)
域名解析:IPv4主机地址(A)资源记录 域名解析:IPv6主机地址(AAAA)资源记录
逆向域名解析:IN-ADDR.ARPA域 逆向域名解析:IP6.INT域
IPv6数据报格式
随着IP协议版本、IP地址格式的更新,IP数据报格式肯定也得随之更新,这次更新也与IP地址格式一样,是在IPv4数据报格式上前进了一大步,变化相当大。当然主要变化当然还是反映IP协议和目标地址信息的IP头部,所以下面我们就对IPv6的数据报头部与IPv4进行一下对比,以便于理解。
IPv6相对与IPv4来说在数据报容量来说是扩大了整整一倍,在IP 协议中规定,IPv4数据报头长度为20个字节,而IPv6数据报头长度为40个字节。IPv6数据报格式由3部分组成:IPv6数据报头、扩展(下一个头)和高层数据。IPv4和IPv6数据报报头格式可以分别用图4和图5来表示,具体各项的含义可以用表4进行说明。
图4
图5
表4 IPv4与IPv6数据报头格式比对表
IPv4数据报头项作用IPv6数据报头项作用
版本(Version)协议版本号,IPv4协议规定该字段值设置为4版本(Version)IPv6协议中规定该字段值为6
头标长度(Header length)32位/字的数据报头长度优先级(Priority)当该字段为0~7时,表示在阻塞发生时允许进行延时处理,值越大优先级越高。当该字段为8~15时表示处理以固定速率传输的实时业务,值越大优先级越高。
服务级别(Type of service)指定优先级、可靠性及延迟参数
分组总长(Total length)标识IPv4总的数据报长度流标识(Flow label)路由器根据流标识的值在连接前采取不同的策略
标识符(Fragment identification)表示协议、源和目的地址特征负载长度(Payload length)指扣除报头后的净负载长度
标志(Flags)包括附加标志下一个(扩展)头(The next header)如果该数据有附加的扩展头,则该字段标识紧跟的下一个扩展头;若无,则标识传输层协议种类,如UDP(17),TCP(6)。
分段偏移量(Flagment offset)分段偏移量(以64位为单位)
生命时间(Time to live)允许跨越的网络节点或gateway的数目跳的限制(Hop limit)即转发上限,该字段是防止数据报传输过程中无休止的循环下去而设定的。该项首先被初始化,然后每经过一个路由器该值就减一,当减为零时仍未到达目的端时就丢弃该数据报。
用户协议(Protocolid)请求IP的协议层
报头校验(Header checksum)只适应于报头
源地址(Source address)8位网络地址,24位网络内主机地址,共32位源地址(Source address)发送方IP地址,128位
目的地址(Destination address)8位网络地址,24位网络内主机地址,共32位目的地址(Destination address)接收方IP地址,128位
选择项(Options)鉴定额外的业务
填充区(Padding)确保报头的长度为32位的整数倍
下面对IPv6数据报头的各项进行简单介绍。
1. 优先级
在IPv6优先级域中首先要区分二大业务量(traffic):
·即受拥塞控制(congestion-controlled)业务量;
·不受拥塞控制的(noncongestion-controlled)业务量。
在IPv6规范中0~7级的优先级为受拥塞控制的业务量保留,这种业务量的最低优先级为1,Internet控制用的业务量的优先级为7。不受拥塞控制的业务量是指当网络拥塞时不能进行速率调整的业务量。对时延要求很严的实时话音即是这类业务量的一个示例。在IPv6中将其值为8~15的优先级分配给这种类型的业务量。如表5所示。
表5 IPv6优先级域分配情况
优先级别业务类型
0无特殊优先级
1背景(Bacjground)业务量(如网络新闻)
2零散数据传送(如电子邮件)
3保留
4连续批量传送(如FTP、NFS)
5保留
6会话型业务量(如Telnet及窗口系统)
7Internet控制业务量(如寻路协议及SNMP协议)
8~15不受拥塞控制业务量(如实时语音业务等)
注意:在受拥塞控制的业务量和实时业务量(即不受拥塞控制的业务量)之间不存在相对的优先级顺序。例如高质量的图象分组的优先级取8,SNMP分组的优先级取7,决不会使图象分组优先。
2.流标识
一个流由其源地址,目的地址和流序号来命名。在IPv6规范中规定“流”是指从某个源点向(单目或组播的)信宿发送的分组群中,源点要求中间路由器作特殊处理的那些分组。也就是说,流是指源点、信宿和流标记三者分别相同的分组的集合。任何的流标记都不得在此路由器中保持6秒以上。此路由器在6秒之后必须删除高速缓存(cache)中登录项,当该流的下一个分组出现时,此登录项被重新学习。并非所有的分组都属于流。实际上从IPv4向IPv6的过渡期间大部分的分组不属于特定的流。例如,SMTP、FTP以及WWW浏览器等传统的应用均可生成分组。这些程序原本是为了IPv4而设计的,在过渡期为使IPv4地址和IPv6地址都能处理而进行了改进,但不能处理在IPv4中不存在的流。在这分组中应置入由24位0组成的空流标记。
3.有效载荷长度
有效载荷长度域指示IP基本头标以后的IP数据报剩余部分的长度,单位是字节。此域占16位,因而IP数据报通常应在65535字节以内。但如果使用Hop By Hop 选项扩展头标的特大净荷选项,就能传送更大的数据报。利用此选项时净荷长度置0。
4.下一个头标
下一个头标用来标识数据报中的基本IP头标的下一个头标。在此头标中,指示选项的IP头标和上层协议。表6列出了主要的下一个头标值。其中一些值是用来标识扩展头标的。
表6 IPv6数据报头下一个头标域分配情况
下一个头标号代表含义
0中继点选项头标
4IP
6TCP
17UDP
43寻路头标
44报片头标
45IDRP
46RSVP
50封装化安全净荷
51认证头标
58ICMP
59无下一个头标
60信宿选项头标
5.站段限制
站段限制决定了能够将分组传送到多远。主机在生成数据报时,在站段限制域中设置某一初值,然后将数据报送到网上的路由器。各路由器从该值起逐次减1。如数据报到达信宿之前其站段限制变为0,该数据报就被抛弃掉。使用站段限制有二个目的。第一是防止寻路发生闭环(loop)。因IP不能订正路由器的错误信息,故无法使此数据报到达信宿。在IP中可以利用站段限制来防止数据报陷入寻路的死循环中。站段限制还用于其他目的。主机利用它在网内进行检索。PC要向其中一个服务器发送数据报,无论发向哪个都行。为了减轻网络负荷,PC希望搜索到离它最近的服务器。
6.源地址和目的地址
基本IP头标中最后2个域是信源地址和目的地址。它们各占128位。在此域中置入数据报最初的源地址和最后的目的地址。
7. IP扩展头标
IPv4头标中存在可变长度的选项(参见图4),利用它可以处理具有指定路径控制、路径记录、时间标记(time stamp)和安全等选项的特殊分组。但因这种分组会影响网络的性能,故选项逐渐被废弃。IPv6中规定了使用扩展头标(extention header)的特殊处理。扩展头标加在IP分组的基本头标之后。IPv6(extention header)规范中定义了若干种不同的扩展头标。它们由下一个头标域的值来标识。每种头部都是可选的,但一旦有多于一种头部出现时,它们必须紧跟在固有头部之后,并且最好按下列次序排序。
目前,IPv6协议建议定了如下可选的扩展项:
·逐项选项头(Hop-by-Hop Option Header):该字段定义了途经路由器所需检验的信息。
·目的选项头:含目的站点处理的可选信息。
·路由选项头(Routing):提供了到达目的地所必须经过的中间路由器。
·分段(Fragmentation)头:IPv6对分段的处理类似于IPv4,该字段包括数据报标识符、段号以及是否终止标识符。
·认证(Authentication)头:该字段保证了目的端对源端的身份验证。
·加载安全负载(Security encrypted payload)头:该字段对负载进行加密,以防止数据在传输过程中发生信息泄露。
IPv6的域名系统及解析原理
1.IPv6与域名系统
虽然IPv6协议将取代IPv4的互联网协议,但是有许多部分还是继承了现行IPv4的优点的。如本节要介绍的域名系统DNS就是继续了IPv4现行协议的。IPv6网络中的DNS同样非常重要,一些IPv6的新特性和DNS的支持密不可分。
IPv6网络中的DNS与IPv4的DNS在体系结构上是一致的,都是采用树型结构的域名空间。虽然IPv4协议与IPv6协议是存在着相当大区别的两套协议,但这并不意味着需要单独两套DNS体系,相反在DNS的体系和域名空间上两者必须是一致的,IPv4和IPv6共同拥有统一的域名空间。在IPv4到IPv6的过渡阶段,域名可以同时对应于多个IPv4和IPv6的地址。随着IPv6网络的普及,IPv6地址将逐渐取代IPv4地址。
可聚集全局单播地址是目前主要应用的IPv6地址,因IPv6可聚集全局单播地址是在全局范围内使用的地址,必须进行层次划分及地址聚集。下面就以IPv6 DNS系统对这类地址的解析过程来介绍IPv6 DNS系统的解析原理。IPv6可聚集全局单播地址格式参见图1所示。
IPv6全局单播地址的分配方式如下:顶级地址聚集机构TLA(即大的ISP或地址管理机构)获得大块地址,负责给次级地址聚集机构NLA(中小规模ISP)分配地址,NLA给站点级地址聚集机构SLA(子网)和网络用户分配地址。IPv6地址的层次性在DNS中通过地址链技术可以得到很好的支持。
(1). 正向解析
从以上介绍我们已经知道,IPv4的地址正向解析的资源记录是“A”,而IPv6地址的正向解析目前有两种资源记录,即“AAAA”和“A6”记录。其中“AAAA”较早提出,它是对IPv4协议“A"”录的简单扩展,由于IP地址由32位扩展到128位,扩大了4倍,所以资源记录由“A”扩大成4个“A”。但“AAAA”用来表示域名和IPv6地址的对应关系,并不支持地址的层次性。
AAAA资源记录类型用来将一个合法域名解析为IPv6地址,与IPv4所用的A资源记录类型相兼容。之所以给这新资源记录类型取名为AAAA,是因为128位的IPv6地址正好是32位IPv4地址的四倍,下面是一条AAAA资源记录实例:
host1.microsoft.com IN AAAA FEC0::2AA:FF:FE3F:2A1C
“A6”是在RFC2874基础上提出,它是把一个IPv6地址与多个“A6”记录建立联系,每个“A6”记录都只包含了IPv6地址的一部分,结合后拼装成一个完整的IPv6地址。“A6”记录支持一些“AAAA”所不具备的新特性,如地址聚集,地址更改(Renumber)等。
“A6”记录根据可聚集全局单播地址中的TLA、NLA和SLA项目的分配层次把128位的IPv6的地址分解成为若干级的地址前缀和地址后缀,构成了一个地址链。每个地址前缀和地址后缀都是地址链上的一环,一个完整的地址链就组成一个IPv6地址。这种思想符合IPv6地址的层次结构,从而支持地址聚集。
同时,用户在改变ISP时,要随ISP改变而改变其拥有的IPv6地址。如果手工修改用户子网中所有在DNS中注册的地址,是一件非常繁琐的事情。而在用“A6”记录表示的地址链中,只要改变地址前缀对应的ISP名字即可,可以大大减少DNS中资源记录的修改。并且在地址分配层次中越靠近底层,所需要改动的越少。
(2). 反向解析
IPv6反向解析的记录和IPv4一样,是“PTR”,但地址表示形式有两种。一种是用“.”分隔的半字节16进制数字格式(Nibble Format),低位地址在前,高位地址在后,域后缀是“IP6.INT.”。另一种是二进制串(Bit-string)格式,以“[”开头,16进制地址(无分隔符,高位在前,低位在后)居中,地址后加“]”,域后缀是“IP6.ARPA.”。半字节16进制数字格式与“AAAA”对应,是对IPv4的简单扩展。二进制串格式与“A6”记录对应,地址也象“A6”一样,可以分成多级地址链表示,每一级的授权用“DNAME”记录。和“A6”一样,二进制串格式也支持地址层次特性。
IP6.INT域用于为IPv6提供逆向地址到主机名解析服务。逆向检索也称为指针检索,根据IP地址来确定主机名。为了给逆向检索创建名字空间,在IP6.INT域中,IPv6地址中所有的32位十六进制数字都逆序分隔表示。例如,为地址FEC0::2AA:FF:FE3F:2A1C(完全表达式为:FEC0:0000:0000:0000:02AA:00FF:FE3F:2A1C)查找域名时,在IP6.INT域中是:C.1.A.2.F.3.E.F.F.F.0.0.A.A.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.C.E.F.IP6.INT.
总之,以地址链形式表示的IPv6地址体现了地址的层次性,支持地址聚集和地址更改。但是,由于一次完整的地址解析要分成多个步骤进行,需要按照地址的分配层次关系到不同的DNS服务器进行查询,并且所有的查询都成功才能得到完整的解析结果。这势必会延长解析时间,出错的机会也增加。因此,在技术方面IPv6协议需要进一步改进DNS地址链功能,提高域名解析的速度才能为用户提供理想的服务。
2. IPv6中的即插即用与DNS
IPv6协议支持地址自动配置,这是一种即插即用的机制,在没有任何人工干预的情况下,IPv6网络接口可以获得链路局部地址、站点局部地址和全局地址等,并且可以防止地址重复。IPv6支持“无状态地址自动配置”和“有状态地址自动配置”两种方式。
在无状态地址自动配置方式下,需要配置地址的网络接口先使用邻居发现机制获得一个链路本地地址。网络接口得到这个链路本地地址之后,再接受路由器宣告的地址前缀,结合接口标识得到一个全局地址。而有状态地址自动配置的方式,与IPv4一样的DHCP(动态主机配置协议),需要一个DHCP服务器,通过客户机/服务器模式从DHCP服务器处得到地址配置的信息。
IPv6节点通过地址自动配置得到IPv6地址和网关地址。但是,地址自动配置中不包括DNS服务器的自动配置。如何自动发现提供解析服务的DNS服务器也是一个需要解决的问题。DNS服务器自动发现的解决方法可以分为“无状态”和“有状态”两类。
在无状态的方式下,需要为子网内部的DNS服务器配置站点范围内的任播地址。要进行自动配置的节点以该任播地址为目的地址发送服务器发现请求,询问DNS服务器地址、域名和搜索路径等DNS信息。这个请求到达距离最近的DNS服务器,服务器根据请求,回答DNS服务器单播地址、域名和搜索路径等DNS信息。节点根据服务器的应答配置本机DNS信息,以后的DNS请求就直接用单播地址发送给DNS服务器。
另外,也可以不用站点范围内的任播地址,而采用站点范围内的多播地址或链路多播地址等。还可以一直用站点范围内的任播地址作为DNS服务器的地址,所有的DNS解析请求都发送给这个任播地址。距离最近的DNS服务器负责解析这个请求,得到解析结果后把结果返回请求节点,而不像上述做法是把DNS服务器单播地址、域名和搜索路径等DNS信息告诉节点。从网络扩展性,安全性,实用性等多方面综合考虑,第一种采用站点范围内的任播地址作为DNS服务器地址的方式相对较好。
在有状态的DNS服务器发现方式下,是通过类似DHCP这样的服务器把DNS服务器地址、域名和搜索路径等DNS信息告诉节点。当然,这样做需要额外的服务器。
3. IPv6过渡阶段的DNS
在IPv4到IPv6的过渡过程中,作为Internet基础架构的DNS服务也要支持这种网络协议的升级和转换,当然这也要有一个过渡方法,而不是一下子全面改成IPv6的DNS系统。从上面的介绍我们知道,IPv4和IPv6的DNS记录格式等方面有所不同,为了实现IPv4网络和IPv6网络之间的DNS查询和响应,可以采用应用层网关DNS-ALG结合NAT-PT的方法,在IPv4和IPv6网络之间起到一个翻译的作用。例如,IPv4的地址域名映射使用“A”记录,而IPv6使用“AAAA”或“A6”记录。那么,IPv4的节点发送到IPv6网络的DNS查询请求是“A”记录,DNS-ALG就把“A”改写成“AAAA”,并发送给IPv6网络中的DNS服务器。当服务器的回答到达DNS-ALG时,DNS-ALG修改回答,把“AAAA”改为“A”,把IPv6地址改成DNS-ALG地址池中的IPv4转换地址,把这个IPv4转换地址和IPv6地址之间的映射关系通知NAT-PT,并把这个IPv4转换地址作为解析结果返回IPv4主机。IPv4主机就以这个IPv4转换地址作为目的地址与实际的IPv6主机通过NAT-PT通信。
对于采用双协议栈方式的过渡方法,在DNS服务器中同时存在“A”记录和“AAAA”(或“A6”)记录。由于节点既可以处理IPv4协议,也可以处理IPv6协议,因此无需类似DNS ALG的转换设备。无论DNS服务器回答“A”记录还是“AAAA”记录,都可以进行通信。
随着Internet技术的不断发展,IPv6也已离我们越来越近了。DNS作为IPv4时代的网络基础服务,对Internet起着重要的作用。在即将到来的IPv6时代,新的协议和功能要求DNS不再是仅仅提供传统意义上的简单资源定位,而是一方面提供类似IPv4 DNS的基础功能,另一方面结合IPv6的新特性,和其它协议有机的结合在一起,提供新的功能,使网络的配置、维护、使用变的更加简单、更加方便,让用户感受到新技术带来的新体验。
今天的文章就讲到这里,在下一篇文章里,我们会介绍IPv6最新发展情况。
更多阅读
安全二维码是干什么的 二维码能干什么
安全二维码是干什么的——简介安全二维码用于对二维码进行安全检测,以确保二维码信息中不含有病毒或其它垃圾信息。360推出安全二维码,可直接扫描或读出二维码,同时对其进行安全扫描,保护手机不受安全威胁。下面就来看一下360如何应用安
iPad Air2与iPad Air有什么不同? ipad air2能干什么
iPad Air2与iPad Air有什么不同?——简介在10月17日,苹果发布了新一代旗舰平板iPad Air2。跟同时发布的iPad mini3比起来,iPad Air2可谓是苹果的心血之作。跟上一代iPad Ai
谷歌眼镜使用评测:谷歌眼镜都能干什么?
谷歌眼镜,首次对公众亮相于2012年GOOGLEI/O大会上,并同时接受开发者注册申请首批使用。当时,3G门户&GO桌面在美国的副总裁曹明和很多人一起在大会上进行了注册申请。九个多月后,首批谷歌眼镜开发者版(Glass ExplorerEdition,下称“谷
不干建筑我去干什么呢? 建筑学转行能干什么
在这行有5年了吧,身边越来越多的同行都有转行的念头,而且趋于年轻化。源头不是我们吃不了这苦,也不是我们丧失了奋斗的激情,更不是失去了对建筑艺术的狂热追求。实在是这个社会容不下我们单纯爱它,完全陷入任人蹂躏的境地。中国建筑师的
2.一个人不可能想干什么就能干什么 一个人不可能mp3
【原文】桓公明日弋1在廪2,管仲、隰朋朝。公望二子,弛3弓脱钎4而迎之曰:“今夫鸿鹄,春北而秋南,而不失其时,夫唯有羽翼以通其意于天下乎?今孤之不得意于天下,非皆二子之忧也?”桓公再言,二子不对。桓公曰:“孤既言矣,二子何不对乎?”管仲对曰:“今