一种IPV6网络中主机地址的自动配置方法转让专利

申请号 : CN200610034143.X

文献号 : CN100583904C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄勇

申请人 : 华为技术有限公司

摘要 :

本发明适用于通信领域,提供了一种IPV6网络中主机地址的自动配置方法,所述方法包括下述步骤:将接入设备接入唯一性标识配置为接入接口标识;将主机的特征标识配置为主机接口标识;将前缀、所述接入接口标识以及所述主机接口标识配置为主机地址。本发明通过在IPV6主机地址的接口标识中引入接入设备接入唯一性标识作为接口标识的接入接口标识,并通过携带接入接口标识的RA消息进行交互,分配主机地址,从而在不支持组播的网络中灵活实现主机地址的无状态自动配置,实现简单,成本低。

权利要求 :

1、一种IPV6网络中主机地址的自动配置方法,其特征在于,所述方法包 括下述步骤:将接入设备接入唯一性标识配置为接入接口标识,其中所述接入设备接入 唯一性标识由主机接入物理端口标识生成,或者由主机接入物理端口标识与主 机接入逻辑端口标识组合生成;

将主机的特征标识配置为主机接口标识;

将前缀、所述接入接口标识以及所述主机接口标识配置为主机地址。

2、如权利要求1所述的方法,其特征在于,所述主机接入物理端口标识为 主机接入汇聚设备的线路标识。

3、如权利要求1所述的方法,其特征在于,所述主机的特征标识为主机 MAC地址、硬件编号、厂商编号或者主机选择的一个随机码。

4、如权利要求3所述的方法,其特征在于,当所述主机接口标识通过主机 MAC地址配置时,若主机MAC地址长于所述主机接口标识,截取主机MAC 地址的低字节放入主机接口标识域;若主机MAC地址短于所述主机接口标识, 将主机MAC地址全部放入主机接口标识域,剩余部分填固定值。

5、如权利要求1所述的方法,其特征在于,所述前缀和接入接口标识由汇 聚设备向主机发送的RA报文携带。

6、如权利要求5所述的主机地址的配置方法,其特征在于,当所述汇聚设 备为三层设备时,在收到主机的RS消息后向主机发送RA报文,或者是周期 性向主机发送RA报文;

当所述汇聚设备为二层设备时,在收到上联端口三层设备发来的RA报文 后向主机发送RA报文。

7、如权利要求1所述的方法,其特征在于,当一个线路上存在多个主机时, 通过重复地址检测对所述主机地址进行唯一性验证。

8、如权利要求1所述的方法,其特征在于,所述方法进一步包括利用所述 接入接口标识对用户地址进行校验的步骤。

9、如权利要求1所述的方法,其特征在于,所述方法进一步包括将所述接 入接口标识与用户帐号结合,对用户帐号进行认证的步骤。

说明书 :

技术领域

本发明属于通信领域,尤其涉及一种实现IPV6网络中对主机地址进行无 状态地址自动配置的方法。

背景技术

目前,基于IPV6网络的主机地址自动配置主要有有状态地址自动配置和 无状态地址自动配置两种方案。
有状态地址自动配置源于IPV4,基于动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)实现,IPV6网络采用的是适用于IPV6版本的 DHCP。DHCP是一个基于客户端/服务器模式的协议,运行于用户数据报协议 (User Datagram Protocol,UDP)之上,其适用的主要网络模型如图1a、1b所 示。DHCP的详细内容可参照“RFC 3315:Dynamic Host Configuration Protocol forIPv6”。有状态地址自动配置是在DHCP服务器上配置地址池,通过DHCP 服务器与在主机上运行的DHCP客户端之间的消息交互完成地址分配。
无状态地址自动配置是IPV6特有的一项技术,具体可参照协议“RFC 2462:IPv6 Stateless Address Autoconfiguration”。一个IPV6节点可以是一个主 机或者路由器,其地址由前缀和接口标识生成。前缀的获得来自于与主机在同 一网段的路由器通告消息(Router Advertisement,RA)。接口标识的生成主要 利用了主机的本地信息,例如其媒体接入控制(MediumAccess Control,MAC) 地址,并通过重复地址检查(Duplicate Address Detection,DAD)保证其唯一 性,具体配置过程如下:
1、节点通过本地链路前缀与接口标识结合的方式来生成一个本地链路地 址,该本地链路地址是一个实验性地址。当链路层是以太网时,接口标识采用 64比特扩展唯一标识(64-bit extended unique identifier,EUI-64)地址。如图2 所示,以太网MAC地址的前三个字节,即其机构惟一标识(Organizationally Unique Identifier,OUI)部分作为EUI-64地址的公司标识(Company ID),第 四、五两字节固定为OXFF OXFE,最后三个字节采用以太网MAC地址的后三 个字节。图中Aa字节是由MAC地址中最高字节AA进行反转得到的。
2、该节点使用实验性地址加入下列多播组:全节点多播组(FF02::1)和 受请求的节点多播组。
3、该节点对该本地链路地址(即实验性地址)进行DAD操作,利用该实 验性地址作为目标地址发出一条邻居请求(Neighbor Solicitation,NS)消息, 该消息的IP源地址是全零地址,IP目的地址是受请求节点多播地址,检测链路 上是否有其它节点已经使用了该地址。若存在这样一个节点时,它就以一条邻 居通告消息(Neighbor Advertisement,NA)进行应答,然后自动配置机制就会 停止,在这种情况下需要对该节点的地址进行手动配置。如果邻居请求NS没 有收到回答,就可以使用这个地址了,该地址被分配给接口,而地址的状态也 改为“首选”,于是本地链路上的IP连接建立成功。更多内容可参照“RFC 2461:Neighbor Discovery for IP Version 6”。
上述本地链路地址中的本地链路前缀在每个节点中都缺省存在,具有特定 的值,此前缀用于本地链路内的通信。
以上步骤对于主机和路由器而言是相同的。对于主机而言,如果要实现跨 路由器的通信则必须获取网络前缀。
4、为确定链路上有什么路由器,以及网络前缀是什么,主机向所有路由器 多播组FF02::2发送一条路由器请求消息(Router Solicitation,RS)。
5、链路上所有的路由器都以RA进行应答,RA中携带的前缀与接口标识 结合,生成一个主机地址。
如上所述,在链路层是以太网的情况下,无状态地址自动配置是通过将 MAC地址作为主机地址的接口标识的一部分,并利用组播实现重复地址检查来 实现的,该方案可以在没有路由器和集中的地址分配服务器的条件下实现本地 接口地址的自动配置和通信,但其实现的前提是网络须支持组播。对于不支持 组播的网络,例如非广播多点访问(Non Broadcast Multi Access,NBMA)网络, 当大量主机终端通过电话线连接到数字用户线路接入复用器(Digital subscriber ling access multiplexer,DSLAM)时,由于不同电话线主机终端间没有支持组 播的链路,所以无法进行DAD操作,很难从机制上保证主机地址不重复。在 这种情况下,一般利用汇聚设备进行地址的记录和组播数据转发,或者通过设 置组播地址解释服务器并采用通过汇聚设备转发的方式实现组播。汇聚设备如 果要发送组播报文给各端点,则要在端点加入组播组时记录组播组地址与对应 端点的物理或逻辑接口的关系,当要发送一个特定组的报文时,需要将报文逐 个发送到相应接口,详细内容可参照“RFC 2491:IPv6over Non-Broadcast Multiple Access(NBMA)network”。这种方式的实现过程比较复杂、不够简便 灵活,而且实现成本和维护成本都很高。

发明内容

本发明的目的在于提供一种IPV6网络中主机地址的自动配置方法,旨在 解决现有技术在不支持组播的网络中对主机地址进行无状态地址自动配置时, 实现过程复杂、成本较高的问题。
本发明是这样实现的,一种IPV6网络中主机地址的自动配置方法,所述 方法包括下述步骤:
将接入设备接入唯一性标识配置为接入接口标识;
将主机的特征标识配置为主机接口标识;
将前缀、所述接入接口标识以及所述主机接口标识配置为主机地址。
所述接入设备接入唯一性标识由主机接入物理端口标识生成,或者由主机 接入物理端口标识与主机接入逻辑端口标识组合生成。
所述主机接入物理端口标识为主机接入汇聚设备的线路标识。
所述主机的特征标识为主机MAC地址的低字节、硬件编号、厂商编号或 者主机选择的一个随机码。
当所述主机接口标识通过主机MAC地址配置时,若主机MAC地址长于所 述主机接口标识,截取主机MAC地址的低字节放入主机接口标识域;若主机 MAC地址短于所述主机接口标识,将主机MAC地址全部放入主机接口标识域, 剩余部分填固定值。
所述前缀和接入接口标识信息由汇聚设备向主机发送的RA报文携带。
当所述汇聚设备为三层设备时,在收到主机的RS消息后向主机发送RA 报文,或者是周期性向主机发送RA报文;
当所述汇聚设备为二层设备时,在收到上联端口三层设备发来的RA报文 后向主机发送RA报文。
当一个线路上存在多个主机时,通过重复地址检测对所述主机地址进行唯 一性验证。
所述方法进一步包括利用所述接入接口标识对用户地址进行校验的步骤。
所述方法进一步包括将所述接入接口标识与用户帐号结合,对用户帐号进 行认证的步骤。
本发明通过在IPV6主机地址的接口标识中引入接入设备接入唯一性标识 作为接口标识的接入接口标识,并通过携带接入接口标识的RA消息进行交互, 分配主机地址,从而在不支持组播的网络中灵活实现主机地址的无状态自动配 置,实现简单,成本低。

附图说明

图1a、b是基于DHCP实现的有状态地址自动配置的网络模型图;
图2是在以太网中进行无状态地址自动配置时接口标识的结构示意图;
图3是本发明适用的不支持组播的网络模型示例图;
图4是本发明提供的IPV6地址的结构组成图;
图5a、b是本发明中使用主机MAC地址生成主机接口标识的示意图;
图6是RA报文的结构示意图;
图7是本发明RA报文中接入接口标识选项的结构示例图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
本发明在接口标识中引入了具有唯一性的接入接口标识,在不支持组播的 NBMA网络模型下,通过携带接入接口标识的RA报文进行信息交互,为主机 分配唯一的地址,同时利用改进后的主机地址信息进行主机地址校验和帐号认 证,增强了网络通信的安全性。
图3示出了本发明适用的不支持组播的网络模型示例,包括汇聚设备D和 主机A、B、C、E。汇聚设备D可以是三层设备,即网络层设备,也可以是二 层设备,即数据链路层设备。主机C、E位于一个线路上。
图4示出了本发明提供的主机地址的结构,与传统的主机地址相比,前缀 的意义不变,用于标识一个网络,可由汇聚设备D给所有主机分配相同的前缀。
接入接口标识为接入设备接入唯一性标识信息,接入设备可以是汇接器、 交换机、路由器等各种网络设备。设备接入唯一性标识可以是由主机接入物理 端口编号生成,或由主机接入物理端口与主机接入逻辑端口编号组合生成,保 证不同线路上的主机地址不重复,从而不同线路上的主机不必进行重复地址检 查。对于同一线路上的多台主机,如图3中的主机C和E,则可以使用重复地 址检查来保证其地址的唯一性。
主机接口标识是由主机选定的用于区分其它主机的标识,可以由主机的 MAC地址、硬件编号和厂商编号或者是主机选择的一个随机码等特定信息生 成。在以太网上,本发明采用MAC地址的低字节作为主机接口标识,如图5 所示。主机MAC地址可能长于主机接口标识部分,也可能较短。对于MAC 地址较长的情况,截取主机MAC地址低字节放入主机接口标识域。对于MAC 地址较短的情况,MAC地址可以完全放入,剩余部分填固定值,如0或者其他 值。当然,主机接口标识也可采取其他方式来生成。
前缀长度n遵循统一的规划配置。对接入接口标识的长度m、主机接口标 识的长度l,不同的网络可以有不同的选择。典型情况当n=64比特时,推荐 m=40比特、l=24比特。
上述主机地址中携带了主机的物理位置信息,在主机与汇聚设备通信时, 汇聚设备可以强制进行地址检查,确保主机地址的合法性,并在一定程度上防 止环路。主机进行网络认证时,可以利用此信息与其帐号一起进行认证,防止 主机帐号的盗用。另外,在主机的网络活动监管方面,也可以利用此信息进行 源追查。
作为本发明的一个实施例,利用互联网控制消息协议(Internet Control Message Protocol,ICMP)版本6(v6)邻居发现(Neighbor Discovery,ND) 协议报文中的RA消息实现上述地址的自动配置。
图6示出了RA报文的结构,其中M标识是否使用有状态地址配置技术, 1表示使用,0表示不使用。O标识是否有非地址信息需要有状态协议配置,1 表示有,0表示没有。图4中的接入接口标识可以用RA报文选项携带。有关 RA报文结构中的其他内容可以参考RFC2641:Neighbor Discovery for IP Version 6(IPv6),本发明不再赘述。
图7示出了本发明提供的一种携带接入接口标识的选项的结构,其中的 Access Interface Identifier即为接入接口标识,简记为AII:
TYPE:目前ND报文有5个选项,编码从1到5,AII选项建议选择6作 为TYPE值。
Length:取4作为Length值。
AII Length:用于指示接入接口标识长度,如果主机实际获得前缀长度加 上AII长度大于128,则地址自动配置无效。
M:在链路层是以太网的情况下,此位有意义。它表示主机接口标识的生 成是否要求使用链路层MAC地址的低字节生成,1表示要求,0表示不要求。
Valid Lifetime与Preferred Lifetime向主机通报了该AII的生命期,它们的 意义与前缀选项中对应的内容相同,可参考RFC2641。
Access Interface Identifier:即接入接口标识AII,此标识用于如图4所示的 主机地址组装。
作为本发明的一个实施例,通过下述步骤在不支持组播的网络中实现主机 地址的无状态地址自动配置:
1、汇聚设备D发送RA报文给主机。如果汇聚设备D是三层设备时,则 在收到主机发出的路由器请求RS消息后向主机发送RA报文,或者是周期性 地向主机发送RA报文。当汇聚设备是二层设备时,则在收到上联端口三层设 备发来的RA报文后向主机发送RA报文。
RA报文中携带有前缀选项和接入接口标识选项,RA报文的“M”位为0, 说明使用“无状态地址配置”;如果有其它非地址信息需要有状态配置则“O” 位置1,否则置0。对于所有主机A、B、C、E来说,前缀选项相同,但接入 接口标识选项在每个接口发送值不同,它根据发送接口计算得到,不需要预先 通过表项存贮,在本发明中可以使用线路标识。
2、主机收到RA报文后,根据获取的前缀和接入接口标识选项,并结合由 主机特定信息组成的主机接口标识,生成如图4所示的全局单播主机地址。在 图6中M置位为1的情况下,要求主机必须选取MAC地址的低位字节生成主 机接口标识部分,采用MAC地址生成主机接口标识的情况可参照图5的说明。
3、当一个线路上存在多个主机时,主机需要执行DAD操作,即重复地址 检测,判断该全局单播主机地址是否已经被同线路上的其他主机使用。以该主 机地址的受请求多播地址为目的地址发送邻居请求NS报文,将新生成的主机 地址放在TARGET域中,在预定时间内没有收到回应即可使用此地址。汇聚设 备D在DAD过程中只充当一个主机的作用,不能将收到的报文向其它线路转 发。如果DAD过程中检测到冲突,则需要人工管理干预,不在本发明的讨论 范围内。
作为本发明的另一实施例,也可以使用NBMA网络模型下的汇聚设备与 DHCP服务器配合实现上述主机地址的分配,即汇聚设备代理DHCP客户端请 求,并在请求报文中指定期待分配的上述配置形式的主机地址,由DHCP服务 器分配该地址及其它信息。或者由汇聚设备直接实现DHCP服务器端,也可以 实现上述主机地址的分配。
通过上述过程对主机地址进行配置后,在对接入用户(使用该主机的用户) 记录认证帐户时,同时记录该主机地址的接入接口标识信息。如该主机地址的 主机接口标识部分是由MAC地址生成,参见图5所示,则同时记录主机的MAC 地址。当分配接入接口标识的汇聚设备D收到主机发送的数据报文后,检查报 文源主机地址的接入接口标识部分中的接入端口信息是否与该主机所属接入端 口一致,不一致则检查不通过,防止非法主机使用网络。对于主机接口标识部 分要求使用MAC地址的情况,可以同时检查收到的源MAC地址是否与源IP 地址中MAC编码部分相同,不相同则检查不通过,该过程不是必须的,一般 只对接入接口标识部分进行检查就可以了。
用户认证时,将用户所在主机的源主机地址中携带的接入接口标识与之前 已经记录的该用户所在主机终端的接入接口标识进行比较,帐号同时发给认证 服务器进行认证,一致则通过认证,防止非法用户使用他人帐户访问网络资源。 当主机接口标识部分要求使用MAC地址时,可以同时检查源IP地址中携带的 MAC信息与记录的是否一致。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。