一种隧道认证方法及装置制造方法
【专利摘要】本发明公开了一种隧道认证方法及装置,涉及数据通信【技术领域】,用于解决现有技术进行IPv4到IPv6隧道认证时,隧道认证效率低的问题。本发明所提供的具体实施例包括:IPv4 over IPv6隧道转发模块获取CPE发送的验证报文,并对该验证报文解封装获取验证报文携带的校验码,进而校验码模块检查本地是否存在该校验码,当查找到校验码时,向CGN隧道管理模块发送隧道创建指令,进而CGN隧道管理模块为验证报文创建IPv4 over IPv6隧道。本发明实施例提供的技术方案主要应用于IPv4 over IPv6隧道的创建流程中。
【专利说明】一种隧道认证方法及装置
【技术领域】
[0001] 本发明涉及数据通信【技术领域】,尤其涉及一种隧道认证方法及装置。
【背景技术】
[0002] 现有DS-Lite (中文全称:轻量级双栈,英文全称:Dual-stack Iite)技术,使 用 IPv4over IPv6 (英文全称:Internet Protocol Version 4 over Internet Protocol Version 6,中文全称:网络协议版本4到网络协议版本6)隧道和NAT (中文全称:网络地址 转换,英文全称:Network Address Translation)技术结合,允许CPE (英文全称:Customer Premise Equipment,中文全称:用户端设备)自行向私网侧主机任意分配IPv4地址,使得 多个IPv4 CPE私网之间可以共享IPv4地址,从而缓解了当前面临的IPv4地址耗尽问题。 而DS-Lite技术的实现方式是:使用IPv4 over IPv6隧道作为CPE和CGN(英文全称为: Carrier-Grade Network Address Translation,中文全称为:运行商级网络地址转换)之 间的流量通路,CPE向CGN发起隧道建立,CGN被动接受隧道建立。在这一隧道建立过程 中,CGN会接收到虚假的建立请求,而此时CGN建立隧道就会导致CGN受到DOS (英文全称: Denial Of Service,中文全称:拒绝服务)攻击,如果CGN遭受DOS攻击,那么CGN隧道资 源耗费严重,从而导致DS-Lite组网将不能正常运行。
[0003] 现有的DS-Lite抗DOS攻击技术为对IPv4 over IPv6隧道进行隧道接入认证,具 体的认证方法依赖第三方系统或者对端CPE配合进行。其中,在通过第三方系统进行隧道 接入认证时,由于引入了其它设备不仅额外增加了硬件设备,而且引入了设备间的交互使 得认证过程复杂、验证成本高、效率低。而通过CPE配合认证过程中,验证过程必须有CPE 参与才能实现,如果CPE拒绝实现或者不具备此验证功能,则CGN无法实现DOS攻击防范, 进而导致CGN不能正常通讯。
[0004] 结合上述的隧道认证过程描述,迫切需要提供一种新的隧道认证方法,在提高认 证效率的同时,减少系统开销。
【发明内容】
[0005] 本发明的实施例提供一种隧道认证方法及装置,用于解决现有技术进行IPv4到 IPv6隧道认证时,隧道认证效率低的问题,提供了一种新的隧道认证方法,在提高认证效率 的同时,减少了系统开销。
[0006] 为达到上述目的,本发明的实施例采用如下技术方案:
[0007] -种隧道认证方法,所述方法应用于运行商级网络地址转换CGN,所述CGN至少包 括:CGN隧道管理模块、网络协议版本4到网络协议版本6IPv4 over IPv6隧道转发模块、 校验码模块,所述方法包括:
[0008] 所述IPv4 over IPv6隧道转发模块获取用户端设备CPE发送的验证报文,并对所 述验证报文解封装获取所述验证报文携带的校验码;
[0009] 所述校验码模块获取所述IPv4 over IPv6隧道转发模块发送的所述校验码,并在 本地查找是否存在所述校验码;
[0010] 当所述校验码模块查找到所述校验码时,向所述CGN隧道管理模块发送隧道创建 指令;
[0011] 所述CGN隧道管理模块为所述验证报文创建IPv4 over IPv6隧道。
[0012] 一种隧道认证装置,所述装置置于运行商级网络地址转换CGN,所述装置至少包 括:CGN隧道管理模块、网络协议版本4到网络协议版本6IPv4 over IPv6隧道转发模块、 校验码模块;
[0013] 所述IPv4 over IPv6隧道转发模块,用于获取用户端设备CPE发送的验证报文, 并对所述验证报文解封装获取所述验证报文携带的校验码;
[0014] 所述校验码模块,用于获取所述IPv4 over IPv6隧道转发模块发送的所述校验 码,并在本地查找是否存在所述校验码;
[0015] 所述校验码模块,还用于当所述校验码模块查找到所述校验码时,向所述CGN隧 道管理模块发送隧道创建指令;
[0016] 所述CGN隧道管理模块,用于为所述验证报文创建IPv4 over IPv6隧道。
[0017] 本发明实施例提供的一种隧道认证方法及装置,应用于CGN,IPv4 over IPv6隧道 转发模块获取CPE发送的验证报文,并对该验证报文解封装获取验证报文携带的校验码, 进而校验码模块检查本地是否存在该校验码,当查找到校验码时,向CGN隧道管理模块发 送隧道创建指令,进而CGN隧道管理模块为验证报文创建IPv4 over IPv6隧道。现有技术 在进行隧道创建时,需要依靠第三方设备进行验证,或需CPE具备验证功能且允许验证实 现,使CPE参与隧道的接入认证,这些验证方法必须依赖于除CGN以外的其它设备来完成, 操作复杂、验证成本高。本发明实施例提供的技术方案,验证报文中存在校验码,进而通过 对校验码的查找来确定是否为验证报文创建隧道,仅通过CGN就可以完成验证,不仅提高 了认证效率而且减少了系统开销。
【专利附图】
【附图说明】
[0018] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0019] 图1为本发明一实施例提供的一种隧道认证的方法流程图;
[0020] 图2为本发明另一实施例提供的一种隧道认证的方法流程图;
[0021] 图3为本发明另一实施例提供的另一种隧道认证的方法流程图;
[0022] 图4为本发明另一实施例提供的一种隧道认证装置的结构组成示意图。
【具体实施方式】
[0023] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0024] 本发明一实施例提供了一种隧道认证方法,这一方法应用于CGN,且CGN至少包 括:CGN隧道管理模块、IPv4 over IPv6隧道转发模块、校验码模块,如图1所示,该方法包 括:
[0025] 101、IPv4 over IPv6隧道转发模块获取CPE发送的验证报文,并对验证报文解封 装获取验证报文携带的校验码。
[0026] 其中,验证报文为对新的IPv4报文进行封装形成的报文,封装包括对新的IPv4 报文进行IPv6隧道封装,这一新的IPv4报文包括由IPv4头、GRE(英文全称为=Generic Routing Encapsulation,中文全称为:通用路由封装)头、校验码载荷、IPv4乘客报文构 成,该校验码载荷中负载有校验码。
[0027] 在本发明实施例中,该新的IPv4报文可以是"一个IPv4头+ -个GRE头+校验码 载荷+IPv4乘客报文"构成的报文。
[0028] 102、校验码模块获取IPv4 over IPv6隧道转发模块发送的校验码,并在本地查找 是否存在这一校验码。
[0029] 103、当校验码模块查找到校验码时,向CGN隧道管理模块发送隧道创建指令。
[0030] 值得说明的是,当校验码模块查找到校验码时,说明该验证报文对应的新的IPv4 报文是由具备IPv4 over IPv6隧道能力的CPE发送出来的报文,该新的IPv4报文对应的 流量不是DOS攻击流量。
[0031] 104、CGN隧道管理模块在接收到创建指令后,为验证报文创建IPv4 over IPv6隧 道。
[0032] 值得说明的是,上述步骤103U04描述的是校验码模块查找到校验码的情况,结 合上述步骤102的描述在实际执行过程中,还存在校验码模块未查找到验证报文所携带的 校验码的情况,此时说明该新的IPv4报文,不是具备IPv4 〇Ver IPv6隧道创建能力的CPE 发送的,该报文对应的流量是DOS攻击流量,校验码模块向CGN隧道管理模块发送不创建隧 道指令,或者校验码模块不向CGN隧道管理模块发送任何指令,则CGN隧道管理模块不为该 验证报文对应的流量创建DS-Lite的IPv4 over IPv6隧道,并放弃该验证报文。
[0033] 本发明实施例提供了一种隧道认证方法,该方法应用于CGN,IPv4 over IPv6隧道 转发模块获取CPE发送的验证报文,并对该验证报文解封装获取验证报文携带的校验码, 进而校验码模块检查本地是否存在该校验码,当查找到校验码时,向CGN隧道管理模块发 送隧道创建指令,进而CGN隧道管理模块为验证报文创建IPv4 over IPv6隧道。现有技术 在进行隧道创建时,需要依靠第三方设备进行验证,或需CPE具备验证功能且允许验证实 现,使CPE参与隧道的接入认证,这些验证方法必须依赖于除CGN以外的其它设备来完成, 操作复杂、验证成本高。本发明实施例提供的技术方案,验证报文中存在校验码,进而通过 对校验码的查找来确定是否为验证报文创建隧道,仅通过CGN就可以完成验证,不仅提高 了认证效率而且减少了系统开销。
[0034] 本发明另一实施例提供了一种隧道认证方法,在本实施例中提供了在执行上述步 骤101之前执行的方法流程,如图2所示,这一方法流程包括:
[0035] 201、当CGN隧道管理模块未查找到与CPE对应的IPv4 over IPv6隧道时,将CPE 发送的封装报文发送给IPv4 over IPv6隧道转发模块。
[0036] 其中,封装报文为对IPv4乘客报文进行封装后的报文,这一封装包括对IPv4乘客 报文进行IPv6隧道封装。
[0037] 值得说明的是,本实施例中对CGN隧道管理模块如何查找CPE对应的IPv4over IPv6隧道的流程将在下述步骤301、302中作出详细说明。
[0038] 202、IPv4 over IPv6隧道转发模块对封装报文解封装,获取到IPv4乘客报文,并 获取IPv4乘客报文的源IPv4地址和目的IPv4地址。
[0039] 其中,IPv4乘客报文的源IPv4地址对应的是CPE私网主机的IP,目的IPv4地址 能够在CPE上通过路由命中IPv4 over IPv6隧道出接口。
[0040] 值得说明的是,在IPv4 over IPv6隧道转发模块对封装报文解封装的同时,还可 以执行下述步骤203。
[0041] 203、IPv4 over IPv6隧道转发模块向校验码模块发送校验码生成指令。
[0042] 204、校验码模块根据校验码生成指令生成校验码,并在本地存储校验码。
[0043] 值得说明的是,校验码生成指令触发校验码模块生成校验码,而校验码的生成方 式是随机生成,校验码模块会将生成的校验码存储在本地,并将生成的校验码通知给IPv4 over IPv6隧道转发模块,在本地存储时可以作为哈希Hash键值存储在Hash表中。
[0044] 205、IPv4 over IPv6隧道转发模块根据校验码、IPv4乘客报文、源IPv4地址和目 的IPv4地址,生成新的IPv4报文。
[0045] 206、IPv4 over IPv6隧道转发模块对该新的IPv4报文进行封装得到验证报文, 并将该验证报文发送给CPE。
[0046] 由于该验证报文中的目的IP地址为IPv4乘客报文的目的IPv4地址,这目的地址 能够在CPE上通过路由命中IPv4 over IPv6隧道出接口,因此这一验证报文能够重新路由 转发入IPv4 over IPv6隧道,发送回CGN,进而执行上述步骤101描述的方法流程。
[0047] 值得说明的是,为了更为形象的说明本发明实施例中各报文的结构,下述将对个 报文的结构分别进行说明:
[0048] 如表1所示,IPv4乘客报文是包括IPv4头IPv4 Hdr、传输控制协议头TCP (英文全 称:Transfer Control Protocol,中文全称:传输控制协议)Hdr、上层数据Up-Layer Data。
[0049] 表 1
[0050]
【权利要求】
1. 一种隧道认证方法,所述方法应用于运行商级网络地址转换CGN,其特征在于,所述 CGN至少包括:CGN隧道管理模块、网络协议版本4到网络协议版本6IPv4〇Ver IPv6隧道转 发模块、校验码模块,所述方法包括: 所述IPv4〇ver IPv6隧道转发模块获取用户端设备CPE发送的验证报文,并对所述验 证报文解封装获取所述验证报文携带的校验码; 所述校验码模块获取所述IPv4〇ver IPv6隧道转发模块发送的所述校验码,并在本地 查找是否存在所述校验码; 当所述校验码模块查找到所述校验码时,向所述CGN隧道管理模块发送隧道创建指 令; 所述CGN隧道管理模块为所述验证报文创建IPv4over IPv6隧道。
2. 根据权利要求1所述的方法,其特征在于, 所述验证报文为对新的IPv4报文进行封装形成的报文; 所述新的IPv4报文包括由IPv4头、通用路由封装GRE头、校验码载荷、IPv4乘客报文 构成,所述校验码载荷中负载有所述校验码。
3. 根据权利要求2所述的方法,其特征在于,在所述IPv4〇ver IPv6隧道转发模块获取 CPE发送的验证报文之前,所述方法还包括: 当所述CGN隧道管理模块未查找到与所述CPE对应的IPv4over IPv6隧道时,将所述 封装报文发送给所述IPv4〇ver IPv6隧道转发模块,所述封装报文为对所述IPv4乘客报文 进行封装后的报文; 所述IPv4〇ver IPv6隧道转发模块对所述封装报文解封装,获取到所述IPv4乘客报 文,并获取所述IPv4乘客报文的源IPv4地址和目的IPv4地址。
4. 根据权利要求3所述的方法,其特征在于,在所述IPv4〇ver IPv6隧道转发模块对所 述封装报文解封装的同时,所述方法还包括: 所述IPv4over IPv6隧道转发模块向所述校验码模块发送校验码生成指令; 所述校验码模块根据所述校验码生成指令生成所述校验码,并在本地存储所述校验 码。
5. 根据权利要求4所述的方法,其特征在于,所述方法还包括: 所述IPv4〇ver IPv6隧道转发模块根据所述校验码、所述IPv4乘客报文、所述源IPv4 地址和所述目的IPv4地址,生成所述新的IPv4报文,并对所述新的IPv4报文进行封装得 到所述验证报文,并将所述验证报文发送给所述CPE。
6. -种隧道认证装置,所述装置置于运行商级网络地址转换CGN,其特征在于,所述装 置至少包括:CGN隧道管理模块、网络协议版本4到网络协议版本6IPv4〇ver IPv6隧道转 发模块、校验码模块; 所述IPv4〇ver IPv6隧道转发模块,用于获取用户端设备CPE发送的验证报文,并对所 述验证报文解封装获取所述验证报文携带的校验码; 所述校验码模块,用于获取所述IPv4〇ver IPv6隧道转发模块发送的所述校验码,并在 本地查找是否存在所述校验码; 所述校验码模块,还用于当所述校验码模块查找到所述校验码时,向所述CGN隧道管 理模块发送隧道创建指令; 所述CGN隧道管理模块,用于为所述验证报文创建IPv4〇Ver IPv6隧道。
7. 根据权利要求6所述的装置,其特征在于, 所述验证报文为对新的IPv4报文进行封装形成的报文; 所述新的IPv4报文包括由IPv4头、通用路由封装GRE头、校验码载荷、IPv4乘客报文 构成,所述校验码载荷中负载有所述校验码。
8. 根据权利要求7所述的装置,其特征在于, 所述CGN隧道管理模块,用于当未查找到与所述CPE对应的IPv4over IPv6隧道时,将 所述CPE发送的封装报文发送给所述IPv4〇ver IPv6隧道转发模块,所述封装报文为对所 述IPv4乘客报文进行封装后的报文; 所述IPv4〇ver IPv6隧道转发模块,用于对所述封装报文解封装,获取到所述IPv4乘 客报文,并获取所述IPv4乘客报文的源IPv4地址和目的IPv4地址。
9. 根据权利要求8所述的装置,其特征在于, 所述IPv4over IPv6隧道转发模块,还用于在所述IPv4over IPv6隧道转发模块对所 述封装报文解封装的同时,向所述校验码模块发送校验码生成指令; 所述校验码模块,用于根据所述校验码生成指令生成所述校验码,并在本地存储所述 校验码。
10. 根据权利要求9所述的装置,其特征在于, 所述IPv4〇ver IPv6隧道转发模块,用于根据所述校验码、所述IPv4乘客报文、所述源 IPv4地址和所述目的IPv4地址,生成所述新的IPv4报文,并对所述新的IPv4报文进行封 装得到所述验证报文,并将所述验证报文发送给所述CPE。
【文档编号】H04L29/06GK104333561SQ201410675194
【公开日】2015年2月4日 申请日期:2014年11月21日 优先权日:2014年11月21日
【发明者】王佩龙 申请人:迈普通信技术股份有限公司