- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
IPv6单播、组播、泛播地址详解
IP地址有三种类型:单播、组播和任意点播。广播地址已不再有效。RFC2373中定义了三种IPv6地址类型:
单播:一个单接口的标识符。
送往一个单播地址的包将被传送至该地址标识的接口上。
泛播:一组接口(一般属于不同节点)的标识符。送往一个泛播地址的包将被传送至该地址标识的接口之一(根据选路协议对于距离的计算方法选择"最近"的一个)。
组播:一组接口(一般属于不同节点)的标识符。送往一个组播地址的包将被传送至有该地址标识的所有接口上。
这三种地址类型将在下面进行更详细的论述。
6.2.1广播路在何方
广播地址从一开始就为IPv4网络带来了问题。广播被用来携带去向多个节点的信息或被那些不知信息来自何方的节点用来发出请求。但是,广播可能将为网络性能设置障碍。同一网络链路上的大量广播意味着该链路上的所有每个节点都必须处理所有广播,其中绝大部分节点最终都将忽略该广播,因为该信息与自己无关。把广播在子网之间进行转发将导致更多的问题,因为路由器上将充斥着这种业务流。
IPv6对此的解决办法是使用一个"所有节点"组播地址来替代那些必须使用广播的情况,同时,对那些原来使用了广播地址的场合,则使用一些更加有限的组播地址。通过这种方法,对于原来由广播携带的业务流感兴趣的节点可以加入一个组播地址,而其他对该信息不感兴趣的节点则可以忽略发往该地址的包。广播从来不能解决信息穿越Internet的问题,如选路信息,而组播则提供了一个更加可行的方法。
6.2.2单播
单播地址标识了一个单独的IPv6接口。一个节点可以具有多个IPv6网络接口。每个接口必须具有一个与之相关的单播地址。单播地址可被认为包含了一段信息,这段信息被包含在128位字段中:该地址可以完整地定义一个特定的接口。此外,地址中数据可以被解释为多个小段的信息。但无论如何,当所有的信息被放在一起后,将构成标识一个节点接口的128位地址。
IPv6地址本身可以为节点提供关于其结构的或多或少的信息,这主要根据是由谁来观察这个地址以及观察什么。例如,节点可能只需简单地了解整个128位地址是一个全球唯一的标识符,而无须了解节点在网络中是否存在。另一方面,路由器可以通过该地址来决定,地址中的一部分标识了一个特定网络或子网上的一个唯一节点。
例如,一个IPv6单播地址可看成是一个两字段实体,其中一个字段用来标识网络,而另一个字段则用来标识该网络上节点的接口。在后面讨论特定的单播地址类型时还会看到,网络标识符可被划分为几部分,分别标识不同的网络部分。IPv6单播地址功能与IPv4地址一样受制于CIDR,即,在一个特定边界上将地址分为两部分。地址的高位部分包含选路用的前缀,而地址的低位部分包含网络接口标识符。
最简单的方法是把IPv6地址作为不加区分的一块128位的数据,而从格式化的观点来看,可把它分为两段,即接口标识符和子网前缀。RFC2373中表示的格式见图6-2。接口标识符的长度取决于子网前缀的长度。两者的长度是可以变化的,这取决于谁对它进行解释。对于非常靠近寻址的节点接口(远离骨干网)的路由器可用相对较少的位数来标识接口。而离骨干网近的路由器,只需用少量地址位来指定子网前缀,这样,地址的大部分将用来标识接口标识符。下面要讨论的是可集聚的单播地址,它的结构更为复杂。
IPv6单播地址包括下面几种类型:
可集聚全球地址。
未指定地址或全0地址。
回返地址。
嵌有IPv4地址的IPv6地址。
基于供应商和基于地理位置的供应商地址。
OSI网络服务访问点(NSAP)地址。
网络互联包交换(IPX)地址。
6.2.3单播地址格式
RFC1884给出了几种通用的不同类型的IPv6地址。给NSAP和IPX分配的地址、基于OSI网络和NetWare地址都无缝地包含在IPv6体系结构中。分别占八分之一的地址空间的基于供应商和基于地理位置分配的地址组成了一批可分配的地址。链路本地和站点本地地址提供了10型网络地址转换的网络统一不变的版本。
然而,RFC2373改变和简化了IPv6的地址分配。其中之一是取消了基于地理位置的地址分配,基于供应商的单播地址改变成可集聚全球单播地址。从名字的改变上就可看出,对于基于供应商的地址,允许前面定义的集聚以及基于交换局的新型集聚。这也反映了一种更平衡的地址分类。NSAP和IPX地址空间仍然保留着,且八分之一的地址分配给可集聚地址。另外,除了组播地址和某类保留地址外,IPv6地址空间的其余部分都是未分配的地址,为将来的发展预留了足够的空间。
1.接口标识符
在IPv6寻址体系结构中,任何IPv6单播地址都需要一个接口标识符。接口标识符非常像48位的介质访问控制(MAC)地址,MAC地址由硬件编码在网络接口卡中,由厂商烧入网卡中,而且地址具有全球唯一性,不会有两个网卡具有相同的MAC地址。这些地址能用来唯一标识网络链路层上的接口。
IPv6主机地址的接口标识符基于IEEEEUI-64格式。该格式基于已存在的MAC地址来创建64位接口标识符,这样的标识符在本地和全球范围是唯一的。RFC 2373包括的附录解释了如何创建接口标识符。有关IEEE EUI-64标准更多的信息,请访问IEEE标准网点:http://stand-ards.ieee.org/db/oui/tutorials/EUI64.html。
这些64位接口标识符能在全球范围内逐个编址,并唯一地标识每个网络接口。这意味着理论上可多达264个不同的物理接口,大约有1.8×1019个不同的地址,而且这也只用了IPv6地址空间的一半。这至少在可预见的未来是足够的。
2.可集聚全球单播地址
本章已经提到了基于供应商的集聚,它的概念还会在第8章中再次提到。可集聚全球单播地址是另一种类型的集聚,它是独立于ISP的。基于供应商的可集聚地址必须随着供应商的改变而改变,而基于交换局的地址则由IPv6交换实体直接定位。由交换局提供地址块,而用户和供应商为网络接入签订合同。这样的网络接入或者是直接由供应商提供,或者通过交换局间接提供,但选路通过交换局。这就使得用户改换供应商时,无需重新编址。同时也允许用户使用多个ISP来处理单块网络地址。
可集聚全球单播地址包括地址格式的起始3位为001的所有地址(此格式可在将来用于当前尚未分配的其他单播前缀)。地址格式化为图6- 3所示的字段。
图中包括下列字段:
FP字段:IPv6地址中的格式前缀,3位长,用来标识该地址在IPv6地址空间中属于哪类地址。目前该字段为"0 0 1",标识这是可集聚全球单播地址。
TLAID字段:顶级集聚标识符,包含最高级地址选路信息。这指的是网络互连中最大的选路信息。目前,该字段为13位,可得到最大819 2个不同的顶级路由。
RES字段:该字段为8位,保留为将来用。最终可能会用于扩展顶级或下一级集聚标识符字段。
NLAID字段:下一级集聚标识符,24位长。该标识符被一些机构用于控制顶级集聚以安排地址空间。换句话说,这些机构(可能包括大型ISP和其他提供公网接入的机构)能按照他们自己的寻址分级结构来将此2 4位字段切开用。这样,一个实体可以用2位分割成4个实体内部的顶级路由,其余的2 2位地址空间分配给其他实体(如规模较小的本地ISP )。这些实体如果得到足够的地址空间,可将分配给它们的空间用同样的方法再子分。
SLAID字段:站点级集聚标识符,被一些机构用来安排内部的网络结构。每个机构可以用与IPv4同样的方法来创建自己内部的分级网络结构。若16位字段全部用作平面地址空间,则最多可有65535个不同子网。如果用前8位作该组织内较高级的选路,那么允许2 5 5个高级子网,每个高级子网可有多达2 5 5个子子网。
接口标识符字段:64位长,包含IEEEEUI-64接口标识符的64位值。
现在很清楚,IPv6单播地址能包括大量的组合,甚至超过了将来RFC可能会指定的显式字段。不论是站点级集聚标识符,还是下一级集聚标识符都提供了大量空间,以便某些网络接入供应商和机构通过分级结构再子分这两个字段来增加附加的拓扑结构。
3.特殊地址和保留地址
在第一个1/256IPv6地址空间中,所有地址的第一个8位:00000000被保留。大部分空的地址空间用作特殊地址,这些特殊地址包括:
未指定地址:这是一个"全0"地址,当没有有效地址时,可采用该地址。例如当一个主机从网络第一次启动时,它尚未得到一个IPv6地址,就可以用这个地址,即当发出配置信息请求时,在IPv6包的源地址中填入该地址。该地址可表示为0:0: 0 : 0 : 0 : 0 : 0 : 0,如前所述,也可写成: :。
来源:ZDNet
上一篇:一体化手段破解VoIP企业通信安全难题
下一篇:DPI和DFI带宽管理技术分析