CN1980231A - 一种在移动IPv6中更新防火墙的方法 - Google Patents
一种在移动IPv6中更新防火墙的方法 Download PDFInfo
- Publication number
- CN1980231A CN1980231A CN 200510127402 CN200510127402A CN1980231A CN 1980231 A CN1980231 A CN 1980231A CN 200510127402 CN200510127402 CN 200510127402 CN 200510127402 A CN200510127402 A CN 200510127402A CN 1980231 A CN1980231 A CN 1980231A
- Authority
- CN
- China
- Prior art keywords
- address
- information
- compartment wall
- message
- fire compartment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种在移动IPv6中更新防火墙(FW)的方法,防火墙的外部通信节点或外部通信节点发生移动时,防火墙通过截获支持加密生成的地址(CGA)的BU或BA报文,获得并存储内部通信节点和外部通信节点的IP地址信息及对端公开密钥,并通知内部通信节点更新防火墙中与该原IP地址和目的IP地址对对应的过滤规则,在防火墙对来自内部节点的CGA信息等验证通过后,根据所述来自内部通信节点的过滤规则信息进行更新。该方法将CGA引入防火墙的更新处理中,实现了动态更新防火墙的过滤规则,并且保证了安全的数据报文正常穿越防火墙。同时,本发明方法利用BU/BA过程对防火墙进行更新,减少了防火墙的处理时间,提高了数据报文穿越防火墙的效率。
Description
技术领域
本发明涉及移动网络层协议版本6(移动IPv6或MIPv6)技术,尤指一种在移动IPv6中更新防火墙(FW)的方法。
背景技术
进入二十一世纪,因特网(Internet)不仅需要提供已有的数据业务、多媒体音视频业务,还将实现移动Internet的功能为移动用户提供无线的Internet接入业务。移动IPv6技术实现了移动用户在IPv6网络中的移动性,使得移动用户在IPv6中移动时仍然保持可达的状态。
在移动IPv6中,每个移动节点(MN)设有一个固定的家乡地址(HoA),这个HoA与MN当前接入互联网的位置无关,该HoA在MN的家乡链路中可以直接使用。当MN移动到家乡链路以外的外地时,通过从外地代理获得的一个转交地址(CoA)来提供MN当前的位置信息。
通信节点(CN)是MN的通信对端,CN可以是两种类型的节点:MN或普通固定节点,当CN是普通固定节点时,CN设有一个普通IPv6地址。CN一般是普通固定节点。MN与CN之间的数据包传送方式有双向隧道和路由优化两种,其中,
双向隧道是通过家乡代理(HA)在MN与CN之间传送数据包的过程,不需要CN支持移动IPv6,此时CN不必知道MN移动后新的CoA。比如,当MN接收来自CN的数据包时,由于MN的HoA是不变的,数据包会被发送到MN的HoA,数据包首先从CN被发送到HA,再由HA将数据包转交给MN。HA在家乡链路上使用代理邻居发现协议截取指向MN的HoA的数据包,被截取的数据包通过双向隧道发送到MN当前的CoA。该双向隧道采用IPv6封装。
路由优化是指在MN与支持移动IPv6的CN之间直接传送数据包的过程,在路由优化中,CN必须知道MN移动后新的CoA。将数据包直接发送到MN的CoA可以得到最短的通信路径,同时也避免了家乡链路与HA的阻塞;还能减轻HA和相关链路的故障所引起的影响。
上述两种传送方式,双向隧道由于通过HA转发,会导致严重的传送延迟,而路由优化消除了双向隧道方式存在严重时延的缺点。
为了在MN与支持移动IPv6的CN之间实现数据包的路由优化传送,MN每次改变位置,都要将移动后新的CoA通知给HA和CN,从而在MN的HoA和CoA间建立“绑定”关系。
当MN移动到家乡链路之外的链路后,MN将新的CoA告诉HA和CN的过程包括返回可路由过程(RRP)和交换绑定更新/绑定确认(BU/BA)两个过程,具体是这样实现的:
(1)RRP
MN向CN发送CoA测试启动报文;
MN经HA向CN发送HoA测试启动报文;
CN向MN发送CoA测试响应报文;
CN经HA向MN发送HoA测试响应报文。
(2)BU/BA过程
完成RRP之后,MN启动BU过程,将MN移动后新的CoA通知CN和HA,CN收到新的CoA后,CN在其绑定缓存中为MN增加一个条目来存储MN移动后新的CoA和MN的HoA对,也就是通信注册;HA收到新的CoA后,HA在其绑定代理中为MN增加一个条目来存储MN移动后新的CoA,也就是家乡注册。
之后,CN和HA均向MN发送BU报文确认,即完成BA过程,MN接收到BA后,在自身绑定更新列表中存储CN和HA的IP地址信息。
完成上述通信注册和家乡注册之后,表明MN在CN和HA上均注册了新的CoA,这样,MN与CN之间就可以使用路由优化传送数据包了。
目前,为了保证MN与CN自身的安全性,在MN与CN之间设置防火墙(FW)来拦截恶意攻击节点。防火墙作为一种重要的网络防护设备,被广泛的配置在网络的各个环节,一般,防火墙是位于两个或多个网络之间,用于实施网络之间访问控制的一组组件集合,防火墙具有以下三个方面的基本特性:内部网络和外部网络之间的所有网络数据流都必须经过防火墙;只有符合安全策略的数据流才能通过防火墙;防火墙自身应具有非常强的抗攻击免疫力。
总体来讲,防火墙可分为包过滤型(Packet filtering)和应用代理型(Application Proxy)两大类,其中,
包过滤型FW工作在开放系统互联(OSI,Open System Interconnection)网络参考模型的网络层和传输层,包过滤型FW可以根据数据包头中的源地址、目的地址、源端口号、目的端口号和协议类型五元素确定是否允许通过,只有满足过滤条件的数据包才被转发到相应的目的地址,其余数据包则被从数据流中丢弃。这里满足过滤条件即是包过滤型FW中的在建立TCP连接的同时建立的过滤表项中存在与该数据包头中的五元素完全一致的一组五元素。
应用代理型FW工作在OSI的最高层即应用层。应用代理型FW的特点是:完全阻隔了网络通信流,通过对每种应用服务编制专门的代理程序来实现监视和控制应用层通信流的作用。应用代理型FW通过代理(Proxy)技术参与到一个TCP连接的全过程,从受保护节点发出的数据包经过应用代理型FW处理后,就好像是源于防火墙外部网卡一样,从而可以达到隐藏内部网络结构的作用。这种类型的防火墙被网络安全专家和媒体公认为是最安全的防火墙。应用代理型FW的核心技术就是代理服务器技术。应用代理型FW的最突出的优点就是安全。由于应用代理型FW工作于最高层,所以应用代理型FW可以对网络中任何一层数据通信进行筛选保护,而不是像包过滤FW,只对网络层的数据进行过滤。
目前,不论是包过滤型FW,还是应用代理型FW的防火墙,都是针对固定网络通信的特点设计的,因此,移动IPv6应用在具有防火墙的网络中时会出现问题。比如,一个MN与受防火墙保护的CN通信,在MN未发生移动时,MN与CN间正常建立连接和保持通信;若通信的过程中,MN在外地网络中发生了位置的改变,则MN会通过RRP和BU/BA处理过程向CN进行绑定更新,而由于该处理中发出的CoA测试启动报文和HoA测试启动报文使用了新的源地址即MN移动后的新的CoA,而MN与CN间的防火墙中没有对应该新的CoA的过滤规则信息,所以该CoA测试启动报文和HoA测试启动报文无法通过MN与CN间的防火墙,从而导致绑定更新失败。进而,由于CN不能获知MN的新的CoA,所以CN与MN的通信发生中断,使得移动后的MN与CN间的数据报文不能正常穿越防火墙。
为了解决上述问题,现有技术利用已有的网络地址转换与防火墙信令层协议(NSIS NSLP)技术为移动IPv6提供了一种动态更新防火墙的方法。
NSLP信号报文携带即将发送的数据流的地址信息,利用该地址信息动态配置数据路径上的网络地址转换(NAT)和防火墙,使随后的数据流能够穿越NAT和防火墙而不被阻断。比如:一台源主机向目的主机发送数据流之前,先发送NSLP信号报文。NSLP信号报文通过的路径与数据流的路径相同。在该路径上,每个NAT和防火墙都截获该NSLP信号报文,处理并根据该NSLP信号报文携带的地址信息配置自身状态,那么,之后的数据流就可以穿越已配置的防火墙和NAT。
以CN被动态包过滤防火墙所保护为例,假设MN和HA在防火墙网络的外部,MN在家乡网络中并正在与CN通信,并假设是CN发起的通信。当MN移动出家乡网络并向CN发送绑定更新之前执行RRP,为了解决由于RRP中CoA测试启动报文和HoA测试启动报丈无法通过MN与CN间的防火墙,从而导致绑定更新失败的问题,需要更新防火墙的过滤规则。现有技术利用NSISNSLP技术更新防火墙的过滤规则的处理方法为:当MN移动出家乡网络并执行RRP之前,MN向CN发送允许移动IPv6报文通过的NSLP信号报文以发起NSIS协商过程,将MN当前的CoA告诉防火墙,并在防火墙的过滤规则中建立相应的过滤条目,这样后续RPP中的CoA测试启动报文和HoA测试启动报文能根据所述更新后的过滤规则穿越防火墙,从而保证了绑定更新的成功实现。但是,为了保证移动后的MN与CN间的数据报文能正常穿越防火墙,MN需要再次向CN发送允许数据流量通过的NSLP信号报文以发起NSIS协商过程,将MN当前通信进程的端口号告诉防火墙,并在防火墙的过滤规则中建立相应的过滤条目。关于NSIS协商过程具体可参见相关协议,这里不再赘述。
从上述处理方案可见,NSIS信号报文在防火墙中的穿越是没有考虑保密性问题的,不能保证后续数据报文是安全的,从而不能保证受防火墙保护的内部通信节点的安全性;同时,在数据报文发送之前都要经过一个NSIS协商过程,额外的NSIS协商过程增加了防火墙的处理时间,降低了数据报文穿越防火墙的效率,同时给网络带来了额外的负担。
发明内容
有鉴于此,本发明的主要目的在于提供一种在移动IPv6中更新防火墙的方法,能够动态更新防火墙的过滤规则,从而保证安全的数据报文正常穿越防火墙。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种在移动网络层协议版本6IPv6中更新防火墙的方法,防火墙的外部通信节点和受防火墙保护的内部通信节点支持加密生成的地址CGA且分别在内部和外部通信节点中生成各自的包含本端公开密钥的CGA信息,该方法包括以下步骤:
A.防火墙截获绑定更新BU报文或绑定确认BA报文,并根据已有过滤规则判断是否允许该BU报文或BA报文穿越,若允许,则完成BU/BA过程后结束本流程;若不允许,则存储BU或BA报文携带的对端公开密钥、源IP地址和目的IP地址对,并允许BU或BA报文穿越防火墙以完成BU/BA过程且在内部或外部通信节点中存储BU或BA报文携带的对端公开密钥;
B.采用所述源IP地址和目的IP地址对通知内部通信节点更新防火墙中的过滤规则;
C.所述内部通信节点根据所述源IP地址和目的IP地址获取过滤规则,并将获得的过滤规则信息及自身CGA信息发送给防火墙;
D.防火墙根据自身存储的所述对端公开密钥、接收到的CGA信息中的本端公开密钥验证接收到的源IP地址和目的IP地址是否合法,若合法,则防火墙采用接收到的过滤规则更新自身的所述源IP地址和目的IP地址对的过滤规则;否则,丢弃接收到的过滤规则信息、数字签名值及内部通信节点的CGA信息。
步骤B还包括:防火墙生成加密信息;
步骤C中获取过滤规则之后,该方法还包括:所述内部通信节点利用获得的过滤规则及所述加密信息生成数字签名值,并将所述数字签名值发送给防火墙;
步骤D中所述验证接收到的源IP地址和目的IP地址是否合法的方法还包括:防火墙根据所述加密信息和所述内部通信节点的CGA信息验证接收到的源IP地址和目的IP地址是否合法。
所述内部通信节点为通信节点CN,所述外部通信节点为移动节点MN时,所述防火墙截获BU报文;所述源IP地址为MN的家乡地址HoA,所述目的IP地址为CN的普通IPv6地址;
或者所述内部通信节点为MN,所述外部通信节点为CN时,所述防火墙截荻BA报文;所述源IP地址为CN的普通IPv6地址,所述目的IP地址为MN的家乡地址HoA。
步骤B中所述通知的方法为:将所述源IP地址和目的IP地址对携带在用于通知内部通信节点更新防火墙中过滤规则的状态生成请求报文中,并发送给所述内部通信节点。
步骤B中所述通知的方法为:将所述加密信息及所述源IP地址和目的IP地址对携带在用于通知内部通信节点更新防火墙中过滤规则的状态生成请求报文中,并发送给所述内部通信节点。
所述状态生成请求报文包括:
用于存储加密信息的加密的Cookie域;
用于存储内部通信节点的IPv6地址的防火墙内部通信节点的IPv6地址INA域;
用于存储外部通信节点的IPv6地址的防火墙外部通信节点的IPv6地址ONA域。
步骤C中所述发送的方法为:将所述过滤规则信息及内部通信节点的CGA信息携带在状态生成响应报文中发送。
步骤C中所述发送的方法为:将所述过滤规则信息、数字签名值及内部通信节点的CGA信息携带在状态生成响应报文中发送。
所述状态生成响应报文包括:
用于存储过滤规则信息和加密信息的数字签名的数字签名Signature域;
用于存储内部通信节点的IPv6地址的INA域;
用于存储外部通信节点的IPv6地址的ONA域;
用于存储内部通信节点的传输层端口号的防火墙内部节点的传输层端口号INP域;
用于存储外部通信节点的传输层端口号的防火墙外部节点的传输层端口号ONP域;
用于存储CGA信息的CGA域。
步骤D中所述验证防火墙接收到的信息是否合法的方法为:
D11.所述防火墙验证所述接收到的CGA信息中的本端公开密钥与自身存储的对端公开密钥是否一致,若一致,则进入步骤D2;否则,所述接收到的信息不合法;
D12.所述防火墙采用所述接收到的CGA信息中的本端公开密钥验证所述存储的源IP地址和目的IP地址,若验证通过,则进入步骤D3;否则,所述接收到的信息不合法。
步骤D中所述验证防火墙接收到的信息是否合法的方法为:
D21.所述防火墙验证所述接收到的CGA信息中的本端公开密钥与自身存储的对端公开密钥是否一致,若一致,则进入步骤D2;否则,所述接收到的信息不合法;
D22.所述防火墙采用所述接收到的CGA信息中的本端公开密钥验证所述存储的源IP地址和目的IP地址,若验证通过,则进入步骤D3;否则,所述接收到的信息不合法;
D23.所述防火墙采用自身存储的加密信息与所述接收到的过滤规则信息对所述接收到的数字签名值进行验证,若验证通过,则所述接收到的信息合法;否则,所述接收到的信息不合法。
步骤D23中,所述加密信息为加密的Cookie值;所述过滤规则信息为INA值、ONA值、INP值和ONP值。
步骤D之后,该方法还包括:所述防火墙向所述内部通信节点返回更新结果;
若所述接收到的信息合法,则所述更新结果显示成功;
若所述接收到的信息不合法,则所述更新结果显示失败。
若所述接收到的信息不合法,则所述更新结果中还标识失败原因。
所述更新结果携带在状态生成确认报文中。
所述判断是否允许BU报文或BA报文穿越的方法为:
所述防火墙判断自身存储的过滤规则中是否存在与所述BU报文或BA报文中携带的源IP地址和目的IP地址相匹配的条目,若存在,则允许穿越;否则,不允许穿越。
步骤B中所述生成加密信息的方法为:随机产生。
所述加密信息采用所述防火墙已存储的公共密钥选项信息作为加密密钥;各通信节点采用不同的加密信息。
步骤C中所述获取过滤规则的方法为:所述内部通信节点根据BU/BA过程中获得的通信双方的IP地址信息,通过查询自身记录的IP地址信息与传输层端口号的对应关系获得通信双方的传输层端口号。
所述CGA信息包括:
修正Modifier域、子网前缀Subnet Prefix域、碰撞次数Collision Count域以及Public Key域;
所述Public Key域用于存储对CGA进行验证的本端公开密钥。
由上述技术方案可见,本发明中,防火墙的外部通信节点和受防火墙保护的内部通信节点支持加密生成的地址(CGA,Cryptographically GeneratedAddresses)且分别在内部和外部通信节点中生成各自的包含本端公开密钥的CGA信息,防火墙通过截获支持CGA的BU或BA报文,并根据已有过滤规则判断是否允许该BU或BA报文穿越,在不允许即BU或BA报文中携带的源IP地址和目的IP地址与防火墙中的过滤规则不匹配时,防火墙从BU或BA报文携带的信息中获取并存储对端公开密钥、以及源IP地址和目的IP地址对,并允许BU或BA报文穿越防火墙,在位于防火墙外的支持CGA的外部通信节点发生改变CoA的移动或位于防火墙内的支持CGA的内部通信节点发生改变CoA的移动会出现布匹配的情况;在允许时,BU或BA报文穿越防火墙后结束本方法流程;完成BU/BA过程且在内部或外部通信节点中存储来自对方通信节点的对端公开密钥后,防火墙将自身生成的加密信息如随机产生的加密的Cookie值以及所述源IP地址和目的IP地址对携带在状态生成请求报文中发送给内部通信节点,该状态生成请求报文用于通知内部通信节点更新防火墙中与该源IP地址和目的IP地址对对应的过滤规则;内部通信节点根据通信双方的IP地址获取所述源IP地址和目的IP地址对的过滤规则,根据所述加密信息及过滤规则信息生成数字签名,并将获得的过滤规则信息、数字签名信息以及CGA信息携带在状态生成响应报文中发送给防火墙,防火墙对该状态生成响应进行验证且验证该状态生成响应合法之后,采用携带在该状态生成响应报文中的过滤规则更新自身的所述源IP地址和目的IP地址对的过滤规则。
从上述本发明方法可见,实现了动态更新防火墙的过滤规则,并且采用在BU或BA报文中携带CGA信息进行防火墙的更新,保证了安全的数据报文正常穿越防火墙。同时,本发明方法利用BU/BA过程对防火墙进行更新,减少了防火墙的处理时间,提高了数据报文穿越防火墙的效率。
附图说明
图1是本发明更新防火墙的流程图;
图2是本发明实施例的信令流程图。
具体实施方式
本发明的核心思想是:防火墙的外部通信节点和受防火墙保护的内部通信节点支持CGA且分别在内部和外部通信节点中生成各自的包含本端公开密钥的CGA信息,防火墙通过截获支持CGA的BU或BA报文,在不允许BU或BA报文穿越防火墙时,防火墙从BU或BA报文携带的信息中获取并存储对端公开密钥、以及源IP地址和目的IP地址对,并允许BU或BA报文穿越防火墙以完成BU/BA过程且在内部或外部通信节点中存储来自对方通信节点的对端公开密钥;防火墙采用所述源IP地址和目的IP地址对通知支持CGA的内部通信节点更新防火墙中过滤规则;内部通信节点根据通信双方的IP地址获取所述源IP地址和目的IP地址对的过滤规则,并将获得的过滤规则信息及自身CGA信息发送给防火墙;防火墙根据自身存储的所述对端公开密钥及接收到的CGA信息中的本端公开密钥验证接收到的所述源IP地址和目的IP地址,通过验证后,防火墙采用状态生成响应报文中携带的过滤规则更新自身的所述源IP地址和目的IP地址对的过滤规则。
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举较佳实施例,对本发明进一步详细说明。
图1是本发明更新防火墙的流程图,假设防火墙的内部通信节点和外部通信节点均支持CGA,这里支持即是在内部通信节点和外部通信节点中均加载相关软件模块,如sucvP v0.1等,该软件模块用于在节点中生成CGA信息及CGA,即内部和外部通信节点的IP地址是CGA,另外,假设RRP过程能正常穿越防火墙,本发明更新防火墙的方法包括以下步骤:
步骤100~步骤101:防火墙截获BU或BA报文,并根据已有过滤规则判断是否允许该BU或BA报文穿越,若允许,则完成BU/BA过程后结束本流程;若不允许,则进入步骤102。
判断防火墙是否允许BU或BA报文穿越的方法为:防火墙判断自身存储的过滤规则中是否存在与BU或BA报文中携带的源IP地址和目的IP地址相匹配的条目,若存在,则允许穿越;否则,不允许穿越。
防火墙要防范的报文是从外部进入的报文,当内部通信节点是CN,外部通信节点是MN时,防火墙截获BU报文;当内部通信节点是MN,外部通信节点是CN时,防火墙截获BA报文。
对于MN,IP地址是指MN的HoA,对于CN,IP地址是指普通IPv6地址。
这里BU报文或BA报文中携带CGA和公开密钥(Public Key)选项,按照Internet工程工作组(IETF)的规定,CGA是通过计算公开密钥的散列值而得到IPv6地址的接口标识符,这样生成的IPv6地址就是CGA,相应的私有密钥可以用来对从这个地址发送的报文进行数字签名,私有密钥是与公开密钥同时产生的,由生成节点自身保留,不向外发布。CGA增强了IPv6地址的安全性。
按照IETF的规定,CGA信息包括类型(Type)、长度(Length)及CGA参数(Parameter)选项,如表1所示,其中,Type由IETF工作组决定,Length的值取决于公开密钥域中公开密钥的长度;CGA Parameter选项包括:修正(Modifier)域、子网前缀(Subnet Prefix)域、碰撞次数(Collision Count)域和公开密钥(Public Key)域。
表1
CGA Parameter选项包含了CGA参数数据结构,该数据结构用于对CGA地址及数字签名的验证。CGA Parameter选项中的Modifier域为一个128-bit的无符号整数,可以是任意值,Modifier域中的值在CGA的生成中使用,用于执行散列扩展和加强地址的隐私性;Subnet Prefix域为CGA的64-bit子网前缀;Collision Count域为一个8-bit的无符号整数,取值为0、1或2,碰撞次数在CGA生成过程中使用,用于恢复重复地址检测发现的地址冲突;Public Key域为一变长域,用于存储CGA所有者的公开密钥,采用该公开密钥对CGA进行验证,该公开密钥也可称为本端公开密钥。公开密钥必须是主体公开密钥信息(Subject Public Key Info)类型的ASN.1 DER编码(DER-encodedASN.1)结构。
Public Key选项为一变长域,按照IETF规定,公开密钥必须是主体公开密钥信息(Subject Public Key Info)类型的ASN.1 DER编码(DER-encodedASN.1)结构。
Public Key选项中的公开密钥为对方通信节点的公开密钥,用于通知防火墙对方节点的公开密钥,该Public Key选项中的公开密钥也可称为对端公开密钥,。该选项存在于BU报文或BA报文中。如果该选项存在于BU报文中,则Public Key选项中包含的公开密钥是CN的公开密钥值;如果该选项存在于BA报文中,则Public Key选项中包含的公开密钥是MN的公开密钥值。若MN或CN不知道对方节点的公开密钥,则该Public Key选项中的公开密钥为128比特的0值。
步骤102:防火墙存储BU或BA报文中携带的公开密钥选项信息即对端公开密钥,源IP地址和目的IP地址对,允许BU或BA报文穿越防火墙,并完成BU/BA过程。
Public Key选项信息即是对方通信节点的公开密钥。
当内部通信节点是CN,外部通信节点是MN时,防火墙截获BU报文,本步骤中的源IP地址为MN的HoA,目的IP地址为CN的普通IPv6地址;当内部通信节点是MN,外部通信节点是CN时,防火墙截获BA报文,本步骤中的源IP地址为CN的普通IPv6地址,目的IP地址为MN的HoA。
完成BU/BA过程后,在CN的绑定缓存中存储了MN当前的CoA与HoA对,以及MN的公开密钥;在MN的绑定更新列表中存储了CN的普通IPv6地址信息,以及CN的公开密钥。
步骤103:防火墙生成加密信息,采用该加密信息及所述源IP地址和目的IP地址对通知内部通信节点更新防火墙中的过滤规则。
其中,采用该加密信息及所述源IP地址和目的IP地址对通知内部通信节点更新防火墙中的过滤规则的方法可以是:将自身存储的源IP地址和目的IP地址对,以及该加密信息携带在状态生成请求(State_Creat_Request)报文中,发送给内部通信节点。
State_Creat_Request报文的格式如表2所示,其中,Type由IETF指定;Code用于与Type共同决定Internet控制消息协议版本6(ICMPv6)报文的具体类型,一般取值为0;校验和(Checksum)用于验证ICMP报文是否出错;
加密的Cookie(Encrypted Cookie)域用于存储加密信息即加密的Cookie值,其中Cookie值为随机产生的,该Cookie值采用防火墙已存储的公共密钥选项信息作为加密密钥。对每个节点采用不同的Cookie值。这里,加密信息即是加密的Cookie值。该加密的Cookie域为可选项。
防火墙内部通信节点的IPv6地址(INA,Inner Node Address)域用于存储内部通信节点的IPv6地址也称INA值,该地址从BU(BA)中得到,即步骤l02中防火墙存储的源IP地址和目的IP地址对中的目的IP地址。
防火墙外部通信节点的IPv6地址(ONA,IPv6地址Outer Node Address)域用于存储外部通信节点的IPv6地址也称ONA值,该地址从BU(BA)中得到,即步骤102中防火墙存储的源IP地址和目的IP地址对中的源IP地址。
类型(Type) | 代码(Code) | 校验和(Chechsum) |
加密的Cookie值 | ||
内部通信节点的IPv6地址(INA) | ||
外部通信节点的IPv6地址(ONA) |
表2
步骤104:内部通信节点根据通信双方的IP地址获取所述源IP地址和目的IP地址对的过滤规则,根据接收到的加密信息及获得的过滤规则信息生成数字签名值,并将该过滤规则、数字签名值及CGA信息发送给防火墙。
内部通信节点根据BU/BA过程中的通信双方的IP地址信息,通过查询自身记录的IP地址信息与传输层端口号的对应关系获得通信双方的传输层端口号。
其中,将该过滤规则、数字签名及CGA信息发送给防火墙的方法可以为:将该过滤规则、数字签名及CGA信息携带在状态生成响应(State_Creat_Reply)报文中发送给防火墙。State_Creat_Reply报文的格式如表3所示,其中,Type由IETF指定;Code用于与Type共同决定ICMP报文的具体类型,一般取值为0;Checksum用于验证ICMP报文是否出错;
数字签名(Signature)域用于存储过滤规则信息和加密信息即Cookie值的数字签名也称数字签名值,该数字签名使用内部节点的私有密钥进行签名,即:
Signature=DSA(Cookie|INA|ONA|INP|ONP);
数字签名算法(DSA)用于将输入的数据如Cookie值、INA值、ONA值、INP值和ONP值经过散列和加密运算,得到关于这些数据的数字签名,该数字签名用相应的公有密钥进行验证。该数字签名域为可选项。
INA域用于存储内部通信节点的IPv6地址也称INA值,该地址从BU(BA)中得到,即步骤102中防火墙存储的源IP地址和目的IP地址对中的目的IP地址;
ONA域用于存储外部通信节点的IPv6地址也称ONA值,该地址从BU(BA)中得到。即步骤102中防火墙存储的源IP地址和目的IP地址对中的目的IP地址;
防火墙内部节点的传输层端口号(INP,Inner Node Port)域用于存储内部通信节点的传输层端口号也称INP值;
防火墙外部节点的传输层端口号(ONP,Outer Node Port)域用于存储外部通信节点的传输层端口号也称ONP值;
CGA域用于存储CGA信息,CGA信息如步骤100~步骤101中的表1所示,这里不再重述。
表3
步骤105~步骤106:防火墙验证接收到的数字签名值及所述存储的源IP地址和目的IP地址是否合法,若合法,则进入步骤107,若不合法,则将接收到的过滤规则信息、数字签名及CGA信息丢弃后结束本方法流程。
假设接收到的过滤规则、数字签名及CGA信息携带在State_Creat_Reply报文中,则防火墙验证接收到的State_Creat_Reply报文是否合法的方法为:步骤a:防火墙验证State_Create_Reply报文中携带的CGA信息中的本端公开密钥与本地存储的公开密钥选项中的对端公开密钥是否一致。若一致,则进入步骤b;否则,该State_Create_Reply报文不合法。
步骤b:防火墙采用State_Create_Reply报文中携带的CGA参数选项中的本端公开密钥验证CGA。若验证通过,则进入步骤c;否则,该State_Create_Reply报文不合法。具体验证方法可参见相关协议,这里不再赘述。
步骤c:防火墙采用自身存储的Cookie值与state_create_reply报文中携带的过滤规则信息即INA值、ONA值、INP值和ONP值对Signature值进行验证,若验证通过,则该State_Create_Reply报文是合法的;否则,该State_Create_Reply报文不合法。
采用Cookie值与state_create_reply报文中携带的INA值、ONA值、INP值和ONP值对Signature值进行验证是一个标准过程,简单来讲就是,用公开密钥对Signature值进行解密,得到的值与hash(Cookie|INA|ONA|INP|ONP)的值进行比较,若二者相等,则说明验证通过;否则,验证未通过。其中,hash(Cookie|INA|ONA|INP|ONP)是对Cookie值、INA值、ONA值、INP值和ONP值进行散列运算。该验证的具体实现可参见相关协议,这里不再赘述。需要说明的是,步骤c可以省略,仅通过步骤a和步骤b来验证接收到的State_Creat_Reply报文是否合法即可。
步骤107:采用接收到的过滤规则信息更新防火墙中所述源IP地址和目的IP地址对的过滤规则。
比如,state_create_reply报文中携带的INA、ONA、INP和ONP即为过滤规则信息,更新即是用该过滤规则信息更新防火墙中所述源IP地址和目的IP地址对的过滤规则。
在防火墙对接收到的State_Creat_Reply报文完成验证之后,本发明方法还可以进一步包括:防火墙向内部通信节点返回用于表示更新结果是否成功的状态生成确认(State_Create_Ack)报文,若验证所述State_Creat_Reply报文为合法且完成步骤108后,该返回的State_Create_Ack报文显示更新成功;若验证所述State_Creat_Reply报文为不合法,则该State_Create_Ack报文显示更新失败,并可进一步标识失败的原因等。这样的处理,使更新过程更加完善。
从上述本发明方法可见,本发明将CGA引入防火墙的更新处理方法中,实现了动态更新防火墙的过滤规则,并且保证了安全的数据报文正常穿越防火墙。同时,本发明方法利用BU/BA过程对防火墙进行更新,减少了防火墙的处理时间,提高了数据报文穿越防火墙的效率。需要说明的是,图1所示步骤103中加密信息的生成、步骤104中生成的数字签名值以及步骤106中采用加密信息对数字签名值的验证,是为了进一步保证本发明更新防火墙的安全性,可以省略。
图2是本发明实施例的信令流程图,本实施例中,假设MN位于FW之外,CN受FW保护,位于FW内部,且MN和CN均支持CGA;假设当MN发生CoA改变的移动时,RRP过程已顺利完成,之后为了更新此时MN与CN之间在FW中的过滤规则,还包括以下步骤:
步骤200~步骤202:FW截获来自MN的BU报文,此时由于MN发生了CoA改变的移动,则FW过滤规则中不存在与BU报文中携带的源IP地址即MN的HoA和目的IP地址即CN的普通IPv6地址相匹配的条目,则FW读取该BU报文中携带的公开密钥选项中的对端公开密钥、MN的HoA和CN的普通IPv6地址对并存储在本地,之后允许该BU报文穿越FW;CN接收到BU报文后,按照协议规定,向MN返回BA报文,以完成BU/BA过程。
步骤203~步骤204:防火墙将自身存储的MN的HoA和CN的普通IPv6地址对,以及随机产生的加密的Cookie值携带在State_Creat_Request报文中,发送给CN;CN根据通信双方的IP地址获取所述MN的HoA和CN的普通IPv6地址对的过滤规则,根据接收到的加密的Cookie值及获得的过滤规则信息生成数字签名,并将该过滤规则信息、数字签名信息及CGA信息携带在State_Creat_Reply报文中发送给FW。
步骤205~步骤206:FW验证接收到的State_Creat_Reply报丈是否合法,若合法,则FW采用state_create_reply报文中携带的过滤规则信息更新防火墙中所述MN的HoA和CN的HoA对的过滤规则,并向CN返回携带更新成功信息的State_Create_Ack报文;否则,FW将该State_Create_Reply报文丢弃,并向CN返回携带显示更新失败及失败原因的State_Create_Ack报文。
具体的验证方法可参见步骤106~步骤107,这里不再重述。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (20)
1、一种在移动网络层协议版本6IPv6中更新防火墙的方法,其特征在于,防火墙的外部通信节点和受防火墙保护的内部通信节点支持加密生成的地址CGA且分别在内部和外部通信节点中生成各自的包含本端公开密钥的CGA信息,该方法包括以下步骤:
A.防火墙截获绑定更新BU报文或绑定确认BA报文,并根据已有过滤规则判断是否允许该BU报文或BA报文穿越,若允许,则完成BU/BA过程后结束本流程;若不允许,则存储BU或BA报文携带的对端公开密钥、源IP地址和目的IP地址对,并允许BU或BA报文穿越防火墙以完成BU/BA过程且在内部或外部通信节点中存储BU或BA报文携带的对端公开密钥;
B.采用所述源IP地址和目的IP地址对通知内部通信节点更新防火墙中的过滤规则;
C.所述内部通信节点根据所述源IP地址和目的IP地址获取过滤规则,并将获得的过滤规则信息及自身CGA信息发送给防火墙;
D.防火墙根据自身存储的所述对端公开密钥、接收到的CGA信息中的本端公开密钥验证接收到的源IP地址和目的IP地址是否合法,若合法,则防火墙采用接收到的过滤规则更新自身的所述源IP地址和目的IP地址对的过滤规则;否则,丢弃接收到的过滤规则信息、数字签名值及内部通信节点的CGA信息。
2、根据权利要求1所述的方法,其特征在于,步骤B还包括:防火墙生成加密信息;
步骤C中获取过滤规则之后,该方法还包括:所述内部通信节点利用获得的过滤规则及所述加密信息生成数字签名值,并将所述数字签名值发送给防火墙;
步骤D中所述验证接收到的源IP地址和目的IP地址是否合法的方法还包括:防火墙根据所述加密信息和所述内部通信节点的CGA信息验证接收到的源IP地址和目的IP地址是否合法。
3、根据权利要求1所述的方法,其特征在于:所述内部通信节点为通信节点CN,所述外部通信节点为移动节点MN时,所述防火墙截获BU报文;所述源IP地址为MN的家乡地址HoA,所述目的IP地址为CN的普通IPv6地址;
或者所述内部通信节点为MN,所述外部通信节点为CN时,所述防火墙截获BA报文;所述源IP地址为CN的普通IPv6地址,所述目的IP地址为MN的家乡地址HoA。
4、根据权利要求1所述的方法,其特征在于,步骤B中所述通知的方法为:将所述源IP地址和目的IP地址对携带在用于通知内部通信节点更新防火墙中过滤规则的状态生成请求报文中,并发送给所述内部通信节点。
5、根据权利要求2所述的方法,其特征在于,步骤B中所述通知的方法为:将所述加密信息及所述源IP地址和目的IP地址对携带在用于通知内部通信节点更新防火墙中过滤规则的状态生成请求报文中,并发送给所述内部通信节点。
6、根据权利要求4或5所述的方法,其特征在于,所述状态生成请求报文包括:
用于存储加密信息的加密的Cookie域;
用于存储内部通信节点的IPv6地址的防火墙内部通信节点的IPv6地址INA域;
用于存储外部通信节点的IPv6地址的防火墙外部通信节点的IPv6地址ONA域。
7、根据权利要求1所述的方法,其特征在于,步骤C中所述发送的方法为:将所述过滤规则信息及内部通信节点的CGA信息携带在状态生成响应报文中发送。
8、根据权利要求2所述的方法,其特征在于,步骤C中所述发送的方法为:将所述过滤规则信息、数字签名值及内部通信节点的CGA信息携带在状态生成响应报文中发送。
9、根据权利要求7或8所述的方法,其特征在于,所述状态生成响应报文包括:
用于存储过滤规则信息和加密信息的数字签名的数字签名Signature域;
用于存储内部通信节点的IPv6地址的INA域;
用于存储外部通信节点的IPv6地址的ONA域;
用于存储内部通信节点的传输层端口号的防火墙内部节点的传输层端口号INP域;
用于存储外部通信节点的传输层端口号的防火墙外部节点的传输层端口号ONP域;
用于存储CGA信息的CGA域。
10、根据权利要求1所述的方法,其特征在于,步骤D中所述验证防火墙接收到的信息是否合法的方法为:
D11.所述防火墙验证所述接收到的CGA信息中的本端公开密钥与自身存储的对端公开密钥是否一致,若一致,则进入步骤D2;否则,所述接收到的信息不合法;
D12.所述防火墙采用所述接收到的CGA信息中的本端公开密钥验证所述存储的源IP地址和目的IP地址,若验证通过,则进入步骤D3;否则,所述接收到的信息不合法。
11、根据权利要求2所述的方法,其特征在于,步骤D中所述验证防火墙接收到的信息是否合法的方法为:
D21.所述防火墙验证所述接收到的CGA信息中的本端公开密钥与自身存储的对端公开密钥是否一致,若一致,则进入步骤D2;否则,所述接收到的信息不合法;
D22.所述防火墙采用所述接收到的CGA信息中的本端公开密钥验证所述存储的源IP地址和目的IP地址,若验证通过,则进入步骤D3;否则,所述接收到的信息不合法;
D23.所述防火墙采用自身存储的加密信息与所述接收到的过滤规则信息对所述接收到的数字签名值进行验证,若验证通过,则所述接收到的信息合法;否则,所述接收到的信息不合法。
12、根据权利要求11所述的方法,其特征在于:步骤D23中,所述加密信息为加密的Cookie值;所述过滤规则信息为INA值、ONA值、INP值和ONP值。
13、根据权利要求1、10或11所述的方法,其特征在于,步骤D之后,该方法还包括:所述防火墙向所述内部通信节点返回更新结果;
若所述接收到的信息合法,则所述更新结果显示成功;
若所述接收到的信息不合法,则所述更新结果显示失败。
14、根据权利要求13所述的方法,其特征在于:若所述接收到的信息不合法,则所述更新结果中还标识失败原因。
15、根据权利要求14所述的方法,其特征在于,所述更新结果携带在状态生成确认报文中。
16、根据权利要求1所述的方法,其特征在于,在步骤A中,所述判断是否允许BU报文或BA报文穿越的方法为:
所述防火墙判断自身存储的过滤规则中是否存在与所述BU报文或BA报文中携带的源IP地址和目的IP地址相匹配的条目,若存在,则允许穿越;否则,不允许穿越。
17、根据权利要求2所述的方法,其特征在于,步骤B中所述生成加密信息的方法为:随机产生。
18、根据权利要求17所述的方法,其特征在于,所述加密信息采用所述防火墙已存储的公共密钥选项信息作为加密密钥;各通信节点采用不同的加密信息。
19、根据权利要求1所述的方法,其特征在于,步骤C中所述获取过滤规则的方法为:所述内部通信节点根据BU/BA过程中获得的通信双方的IP地址信息,通过查询自身记录的IP地址信息与传输层端口号的对应关系获得通信双方的传输层端口号。
20、根据权利要求1所述的方法,其特征在于,所述CGA信息包括:
修正Modifier域、子网前缀Subnet Prefix域、碰撞次数Collision Count域以及Public Key域;
所述Public Key域用于存储对CGA进行验证的本端公开密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510127402 CN1980231B (zh) | 2005-12-02 | 2005-12-02 | 一种在移动IPv6中更新防火墙的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510127402 CN1980231B (zh) | 2005-12-02 | 2005-12-02 | 一种在移动IPv6中更新防火墙的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1980231A true CN1980231A (zh) | 2007-06-13 |
CN1980231B CN1980231B (zh) | 2010-08-18 |
Family
ID=38131229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510127402 Expired - Fee Related CN1980231B (zh) | 2005-12-02 | 2005-12-02 | 一种在移动IPv6中更新防火墙的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1980231B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009067908A1 (en) * | 2007-11-09 | 2009-06-04 | Huawei Technologies Co., Ltd. | A protection method and device during a mobile ipv6 fast handover |
WO2010012171A1 (zh) * | 2008-07-28 | 2010-02-04 | 成都市华为赛门铁克科技有限公司 | 一种数据包处理的方法和装置 |
WO2011044835A1 (zh) * | 2009-10-16 | 2011-04-21 | 华为技术有限公司 | 实现路由优化的方法及接入路由器 |
CN107425978A (zh) * | 2016-04-29 | 2017-12-01 | 霍尼韦尔国际公司 | 用于通过宽带数据链路进行安全通信的系统和方法 |
CN107528821A (zh) * | 2016-06-20 | 2017-12-29 | 福特全球技术公司 | 车载网络服务器的远程信息处理系统的远程防火墙更新 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004180155A (ja) * | 2002-11-28 | 2004-06-24 | Ntt Docomo Inc | 通信制御装置、ファイアウォール装置、通信制御システム、及び、データ通信方法 |
-
2005
- 2005-12-02 CN CN 200510127402 patent/CN1980231B/zh not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009067908A1 (en) * | 2007-11-09 | 2009-06-04 | Huawei Technologies Co., Ltd. | A protection method and device during a mobile ipv6 fast handover |
WO2010012171A1 (zh) * | 2008-07-28 | 2010-02-04 | 成都市华为赛门铁克科技有限公司 | 一种数据包处理的方法和装置 |
CN101640631B (zh) * | 2008-07-28 | 2011-11-16 | 成都市华为赛门铁克科技有限公司 | 一种数据包处理的方法和装置 |
WO2011044835A1 (zh) * | 2009-10-16 | 2011-04-21 | 华为技术有限公司 | 实现路由优化的方法及接入路由器 |
CN107425978A (zh) * | 2016-04-29 | 2017-12-01 | 霍尼韦尔国际公司 | 用于通过宽带数据链路进行安全通信的系统和方法 |
CN107425978B (zh) * | 2016-04-29 | 2022-03-22 | 霍尼韦尔国际公司 | 用于通过宽带数据链路进行安全通信的系统和方法 |
CN107528821A (zh) * | 2016-06-20 | 2017-12-29 | 福特全球技术公司 | 车载网络服务器的远程信息处理系统的远程防火墙更新 |
CN107528821B (zh) * | 2016-06-20 | 2021-10-15 | 福特全球技术公司 | 用于远程信息处理控制单元的数据更新的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1980231B (zh) | 2010-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8175037B2 (en) | Method for updating a routing entry | |
US8122249B2 (en) | Method and arrangement for providing a wireless mesh network | |
JP4291272B2 (ja) | ホームエージェントと共に移動ノードのホームアドレスを登録する方法 | |
EP1735990B1 (en) | Mobile ipv6 authentication and authorization | |
US8918522B2 (en) | Re-establishment of a security association | |
JP5102372B2 (ja) | 通信ネットワークにおいて使用する方法および装置 | |
Thubert et al. | Registration extensions for IPv6 over low-power wireless personal area network (6LoWPAN) neighbor discovery | |
JP5159878B2 (ja) | インターネットプロトコル認証とモビリティシグナリングとを結合するための方法と装置 | |
CN101110672A (zh) | 通信系统中建立esp安全联盟的方法和系统 | |
EP1723767A1 (en) | Method and system for sending binding updates to correspondent nodes behind firewalls | |
CN1980231B (zh) | 一种在移动IPv6中更新防火墙的方法 | |
Laurent-Maknavicius et al. | Inter-domain security for mobile Ipv6 | |
CN100536471C (zh) | 一种家乡代理信令消息有效保护方法 | |
Qiu et al. | A secure pmipv6-based group mobility scheme for 6l0wpan networks | |
Rathi et al. | A Secure and Fault tolerant framework for Mobile IPv6 based networks | |
Brian et al. | Security scheme for mobility management in the internet of things | |
Nordmark et al. | RFC 8505: Registration Extensions for IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery | |
Maekawa et al. | An enhanced location privacy framework with mobility using host identity protocol | |
KR20100040778A (ko) | 모바일 IPv6 네트워크를 위한 티켓 기반의 인증된 바인딩 갱신 프로토콜 | |
Roe et al. | Status of this Memo | |
Araújo et al. | An 802.1 X-based Security Architecture for MIP | |
CN101431756A (zh) | 防止恶意攻击的方法、系统和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100818 Termination date: 20171202 |