用于实现IPv6前缀分配的装置及方法
【技术领域】
[0001]本发明涉及通信领域,具体地,涉及一种用于实现IPv6前缀分配的装置及方法。
【背景技术】
[0002]IPv6 (Internet Protocol Vers1n 6)是第二代网际协议,用于取代当前使用的IPv4 (Internet Protocol Vers1n 4)协议。IPv6协议自身最大的特点是地址空间显著扩大,可编码位由IPv4的32位扩展到了 128位,相当于扩展了 296倍。
[0003]IPv6地址包含有三种类型,分别是单播地址,组播地址和任播地址。所谓单播地址,是指能唯一确定某一设备的地址;所谓的组播地址,是指对应着多台设备的地址;所谓的任播地址,是指在给定的多台设备范围内,对应着其中任意一台设备的地址,任播地址可以理解为在一定范围内的单播地址。
[0004]其中,对于IPv6的单播地址,依据地址的适用范围,其可以继续分为链路本地地址,站点本地地址,全球单播地址等。链路本地地址是作用于具体某一链路,不参与路由转发,通常用于本地链路的邻居学习。链路本地地址一般以FE80开头。站点本地地址当前已经基本不用,主要是为了与过往实现保持兼容而存在。站点本地地址是用于站点内部寻址,一般以FECO开头。全球单播地址是可与外部任意一台主机进行通讯的地址,参与路由转发。
[0005]在本文中,若后续处理没有指明,则IPv6地址均是指全球单播地址,对应的前缀也是指IPv6全球单播地址的前缀。
[0006]IPv6地址在构成上与IPv4 —样,采用网络前缀加主机标识。为了避免IPv4前缀分配的不合理性而导致地址分配的严重不均,IPv6地址前缀一般是分配一个固定长度的48位IPv6前缀,后续由用户自己划分子网,子网前缀的长度为16位。这样,对于任意的用户而言,前缀获取均是公平的,总为48位。
[0007]由于前48位前缀长度一般是固定分配的,用户自己无法决定。故本文所讲的前缀分配,是指后16位的子网前缀的分配问题。
[0008]就当前既有的前缀分配方案而言,主要分为如下几类:
[0009](I)在一个具体的站点内部,通过ND (Neighbor Discovery,邻居发现)协议进行分配。ND协议,规定了 IPv6在同一本地链路进行二层邻居学习,前缀学习,路由器学习等相关功能的实现方式。各主机通过路由器获取前缀,并依据前缀生成各自的全局单播地址,进而与外部通信。这里获取前缀的方式主要有两种:
[0010]方式1:路由器定期广播RA (Router Advertisement,路由器通告)报文给终端,对应的广播RA报文会携带对应前缀信息,当终端获取到该前缀信息之后,即利用该前缀生成对应的全局单播地址。
[0011]方式2:某一主机与路由器关联后,此时会主动发送RS (Router Solicitat1n,路由器请求)报文,路由器在接收到RS报文后,反馈单播RA报文给终端。终端获取到前缀后,生成全局单播地址。
[0012]这种前缀分配方式的优点是:基于IPv6ND协议进行前缀分配,实现简单,一般只要支持IPv6功能,就均能支持这种前缀分配方式。不需要用户终端与服务器提供额外的支持。
[0013]缺点:这种前缀分配方式为各个终端分配的前缀都是相同的,无法达到利用前缀对用户进行识别的目的。
[0014](2)通过 DHCPv6 (Dynamic Host Configurat1n Protocol for IPv6,用于 IPv6的动态主机配置协议)协议实现,通过DHCPv6为用户分配IPv6前缀时,可以为不同的用户分配不同的前缀。
[0015]原理:用户终端通过作为客户端,向DHCPv6服务端发送前缀申请报文,DHCPv6服务端依据客户端的请求,做出适当的判断,若客户端请求满足当前判断,则向用户终端反馈一个前缀信息。
[0016]优点:可以为不同的用户分配不同的前缀。方便于利用前缀对用户进行区分。该前缀分配方法中用户终端与服务端的交互手段更丰富,客户端可以与服务端交互自身在用的前缀,以防止服务端重新分配相同的前缀。最后,该方式扩展性较好,利用中继技术,可以实现DHCPv6服务端与客户端不再同一网段时的前缀分配功能。
[0017]缺点:实现上相对复杂,需要支持DHCPv6协议。该方法并不适用于任意的终端,比如对于使用较为广泛的window xp,就不支持DHCPv6客户端功能。
[0018](3)通过一定的策略进行分配,即通过指定一定的规则,依据规则生成分配给用户的前缀。
[0019]原理:这种技术是对方法(I)和方法(2)的一种结合以及扩展。通过设定一定的规则,决定前缀的分配对象。可以将用户终端依据规则分成若干组,不同组分配不同的前缀,组内的用户终端获取相同的前缀。另外,可以对用户特征进行判断,只有用户相关特征满足了需求,才可为用户分配一个前缀。
[0020]优点:前缀分配方式充分地考虑了用户的特征,对于用户行为的控制更强。
[0021]缺点:实现最为复杂,作为前缀分配的服务端需要对用户的特征进行判断,并需要保存一份规则库。
[0022]综上所述,在上述三种分配方案中,方案(I)不能够实现利用前缀对用户进行识另IJ,方案(2)需要依赖具体的应用终端来完成前缀分配,方案(3)的实现方法过于简单。因此,本发明致力于实现一种既不依赖具体的应用终端,又能够达到利用前缀对用户进行识别的目的,同时实现简便的前缀分配方式。
【发明内容】
[0023]本发明的目的是提供一种用于实现IPv6前缀分配的装置及方法,其能够实现IPv6前缀动态分配,且实现简便,部署快捷。
[0024]为了实现上述目的,本发明提供一种用于实现IPv6前缀分配的装置,该装置包括:接收机,用于接收由用户终端发送的RS(Router Solicitat1n,路由器请求)报文;处理器,用于根据所述RS报文以及该处理器中所包含的多个IPv6前缀的分配状态来为所述用户终端分配IPv6前缀,其中所述多个IPv6前缀包含单用户前缀和多用户前缀;以及发射机,用于向所述用户终端发送所分配的IPv6前缀。
[0025]相应地,本发明还提供一种用于实现IPv6前缀分配的方法,该方法包括:接收由用户终端发送的RS (Router Solicitat1n,路由器请求)报文;根据所述RS报文以及多个IPv6前缀的分配状态来为所述用户终端分配IPv6前缀,其中所述多个IPv6前缀包含单用户前缀和多用户前缀;以及向所述用户终端发送所分配的IPv6前缀。
[0026]通过上述技术方案,根据RS报文以及多个IPv6前缀(分为单用户前缀和多用户前缀)的分配状态来为用户终端分配IPv6前缀,可以实现以下优点:(I)本发明的前缀分配方式能够实现尽量为不同用户分配不同前缀,通过前缀对用户进行区隔与行为控制,达到能够利用前缀对用户进行识别的目的;(2)本发明的前缀分配方式并不依赖具体的应用终端而实现,只要支持IPv6功能,就均能支持本发明所提供的前缀分配方式,不需要用户终端与服务器提供额外的支持;(3)本发明的前缀分配方式可以基于ND协议或者基于DHCPv6协议来完成前缀分配,实现简便,部署快捷。
[0027]本发明的其它特征和优点将在随后的【具体实施方式】部分予以详细说明。
【附图说明】
[0028]附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的【具体实施方式】一起用于解释本发明,但并不构成对本发明的限制。在附图中:
[0029]图1示出了本发明提供的用于实现IPv6前缀分配的装置的结构示意图;
[0030]图2示出了 IPv6前缀的分配状态及各状态之间的转换示意图;
[0031]图3示出了本发明实现IPv6前缀分配的流程示意图;以及
[0032]图4示出了回收IPv6前缀的流程示意图。
[0033]附图标记说明
[0034]10接收机20 处理器
[0035]30发射机
【具体实施方式】
[0036]以下结合附图对本发明的【具体实施方式】进行详细说明。应当理解的是,此处所描述的【具体实施方式】仅用于说明和解释本发明,并不用于限制本发明。
[0037]图1示出了本发明提供的用于实现IPv6前缀分配的装置的结构示意图。如图1所示,本发明提供的用于实现IPv6前缀分配的装置,该装置可以包括:接收机10,用于接收由用户终端发送的RSOtouter Solicitat1n,路由器请求)报文;处理器20,用于根据所述RS报文以及该处理器中所包含的多个IPv6前缀的分配状态来为所述用户终端分配I