一种ARP请求报文验证方法及装置制造方法及图纸

技术编号:6882957 阅读:631 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供了一种ARP请求报文验证方法,包括:网关收到ARP请求报文;如果该网关在ARP缓存表中没有查询到与该ARP请求报文匹配的表项,该网关发出ARP验证报文,该ARP验证报文的源IP地址和MAC地址分别为验证IP地址和验证MAC地址,该验证IP地址与该网关的IP地址为同一网段的地址,该验证IP地址不同于该网关的IP地址;该网关收到第一报文;如果该第一报文是该ARP验证报文对应的响应报文,将该第一报文上送到该网关的控制平面。此外,本发明专利技术实施例还提供了相应的ARP请求报文验证装置。通过本发明专利技术实施例提出的ARP请求报文验证方法及装置,可以解决仅在数据平面对ARP请求报文进行响应,可能导致部分网络设备无法接入外部网络的问题。

【技术实现步骤摘要】

本专利技术实施例涉及通信技术,尤其涉及一种地址解析协议(Address Resolution Protocol, ARP)请求报文验证方法及装置。
技术介绍
目前ARP广泛应用于因特网协议(Internet Protocol, IP)网络。局域网主机要实现与外部网络通信,需要向网关发送ARP请求报文,从而获得网关的设备的媒体接入控制(Media Access Control,MAC)地址,从而实现网络设备之间的通信。如果网关不能正确、及时对ARP请求报文做出响应,局域网主机将无法实现与外部网络通信。网关受到ARP 攻击可能会影响到网关对ARP请求报文做出响应。为应对ARP攻击,业界提出了相应的解决方案。例如,网关的数据平面收到ARP请求报文后,仅在数据平面对ARP请求报文进行响应,不上送至网关的控制平面。网关的数据平面处理ARP请求报文的能力较强,因此可以较好地应对ARP攻击。但是,网关的数据平面不能对所有类型的ARP请求报文都做出有效处理。例如,有的ARP请求报文包含两层虚拟局域网(Virtual Local Area Network, VLAN)标签(以下简称Q对,具体可参考IEEE802. lad)。收到包含Q对的ARP请求报文后,网关需要根据该ARP 请求报文中包含的Q对,生成一个索引。Q对的索引范围很大(大约为2的M次方),在数据平面建立建立一个包含224的表项的用户会话表代价较大。实际应用中,数据平面的用户会话表的表项较少,一般为几十K。因此索引的取值范围在0 几十K之间。为了在较大取值范围的Q对与较小取值范围的用户会话表之间建立映射关系,网关的控制平面依靠用户主机的ARP请求报文触发动态学习Q对并分配用户会话表索引,建立映射关系并下发到网关的数据平面建立用话会话。如果ARP请求报文没有被送到控制平面进行处理就无法建立用户会话表,从而导致用户主机无法与外网进行通信。因此,仅在数据平面对ARP请求报文进行响应,可能导致部分网络设备无法接入外部网络。
技术实现思路
本专利技术实施例提供一种ARP请求报文验证方法,可以解决仅在数据平面对ARP请求报文进行响应,可能导致部分网络设备无法接入外部网络的问题。一方面,本专利技术实施例提供的一种地址解析协议ARP请求报文验证方法,包括网关收到ARP请求报文;如果该网关在ARP缓存表中没有查询到与该ARP请求报文匹配的表项,该网关发出ARP验证报文,该ARP验证报文的目的因特网协议IP地址为该ARP请求报文的源IP地址,该ARP验证报文的源IP地址和源媒体接入控制MAC地址分别为验证IP地址和验证MAC 地址,该验证IP地址与该网关的IP地址为同一网段的地址,该验证IP地址不同于该网关的IP地址;该网关收到第一报文,判断该第一报文是否是该ARP验证报文对应的响应报文;如果该第一报文是该ARP验证报文对应的响应报文,将该第一报文上送到该网关的控制平面。另一方面,本专利技术实施例提供的一种ARP请求报文验证装置,包括接收器,网关用于收到ARP请求报文;发送器,用于如果该网关在ARP缓存表中没有查询到与该ARP请求报文匹配的表项,该网关发出ARP验证报文,该ARP验证报文的目的因特网协议IP地址为该ARP请求报文的源IP地址,该ARP验证报文的源IP地址和源媒体接入控制MAC地址分别为验证IP地址和验证MAC地址,该验证IP地址与该网关的IP地址为同一网段的地址,该验证IP地址不同于该网关的IP地址;判断单元,该网关用于收到第一报文,判断该第一报文是否是该ARP验证报文对应的响应报文;上送单元,用于如果该第一报文是该ARP验证报文对应的响应报文,将该第一报文上送到该网关的控制平面。可见,通过本专利技术实施例提供的ARP请求报文验证方法及装置,可以解决仅在数据平面对ARP请求报文进行响应,可能导致部分网络设备无法接入外部网络的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供ARP请求报文验证方法及装置应用于某一场景的组网结构图;图2是本专利技术实施例提供的ARP请求报文验证方法流程图;图3是本专利技术实施例提供的ARP请求报文验证装置示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供了一种ARP请求报文验证方法及装置,可以解决仅在数据平面对ARP请求报文进行响应,可能导致部分网络设备无法接入外部网络的问题。图1为本专利技术实施例某一应用场景的组网结构图。图1的组网结构图包括七台个人电脑、一台交换机、一台路由器以及因特网。七台个人电脑分别是个人电脑(Personal Computer,PC) 1、PC2、PC3、PC4、PC5、PC6 以及 PC7,PC1 至PC7构成局域网;一台交换机是交换机(Switch,SW) 1 ;—台路由器是路由器(Router, R)1,R1为该局域网的网关,PCl至PC7分别通过SWl与Rl相连,Rl与因特网相连。由于七台PC处于局域网内,访问因特网时,需要通过网关R1。为应对Rl可能受到局域网内主机发起ARP攻击,Rl仅在数据平面回应局域网主机发起的ARP请求报文。由于PCl发起的ARP 请求报文中包含两层VLAN标签,Rl仅在数据平面回应ARP请求报文可能导致PCl无法访问因特网。实施例一本专利技术实施例提供了一种ARP请求报文验证方法,可以用于图1所示的组网结构中,参见图2,图2是本专利技术实施例提供的ARP请求报文验证方法流程图,该方法包括201 网关收到ARP请求报文。具体实现时,上述ARP请求报文可以是局域网内的主机发送的。主机可以通过双绞线与网关相连,也可以通过光纤与网关相连;主机可以与网关直连,也可以通过网络设备与网关相连。以图1所示的场景为例,PCl向Rl发出ARP请求报文。202 如果该网关在ARP缓存表中没有查询到与该ARP请求报文匹配的表项,该网关发出ARP验证报文。该ARP验证报文的目的因特网协议IP地址为该ARP请求报文的源 IP地址。该ARP验证报文的源IP地址和源媒体接入控制MAC地址分别为验证IP地址和验证MAC地址。该验证IP地址与该网关的IP地址为同一网段的地址。该验证IP地址不同于该网关的IP地址。ARP缓存表位于网关的数据平面,用于验证ARP请求报文。ARP缓存表可以包括多个表项,每个表项包括IP地址以及该IP地址对应的MAC地址。如果网关在ARP缓存表中没有查询到与该ARP请求报文的源IP地址和源MAC地址匹配的表项,该网关发出ARP验证报文。ARP验证报文的源IP地址和源MAC地址分别是验证IP地址以及验证MAC地址。验证IP地址与网关的IP地址为同一网段的地址,可以确保主机对ARP验证报文做本文档来自技高网
...

【技术保护点】
1.一种地址解析协议ARP请求报文验证方法,其特征在于:网关收到ARP请求报文;如果所述网关在控制平面的ARP缓存表中没有查询到与所述ARP请求报文的源因特网协议IP地址和源媒体接入控制MAC地址匹配的表项,所述网关发出ARP验证报文,所述ARP验证报文的目的IP地址为所述ARP请求报文的源IP地址,所述ARP验证报文的源IP地址和MAC地址分别为验证IP地址和验证MAC地址,所述验证IP地址与所述网关的IP地址为同一网段的地址,所述验证IP地址不同于所述网关的IP地址;所述网关收到第一报文,判断所述第一报文是否是所述ARP验证报文对应的响应报文;如果所述第一报文是所述ARP验证报文对应的响应报文,将所述第一报文上送到所述网关的控制平面。

【技术特征摘要】
1.一种地址解析协议ARP请求报文验证方法,其特征在于网关收到ARP请求报文;如果所述网关在控制平面的ARP缓存表中没有查询到与所述ARP请求报文的源因特网协议IP地址和源媒体接入控制MAC地址匹配的表项,所述网关发出ARP验证报文,所述ARP 验证报文的目的IP地址为所述ARP请求报文的源IP地址,所述ARP验证报文的源IP地址和MAC地址分别为验证IP地址和验证MAC地址,所述验证IP地址与所述网关的IP地址为同一网段的地址,所述验证IP地址不同于所述网关的IP地址;所述网关收到第一报文,判断所述第一报文是否是所述ARP验证报文对应的响应报文;如果所述第一报文是所述ARP验证报文对应的响应报文,将所述第一报文上送到所述网关的控制平面。2.根据权利要求1所述方法,其特征在于所述ARP验证报文中的验证MAC地址不同于所述网关发出的前一个ARP验证报文中的验证MAC地址。3.根据权利要求1或2所述方法,其特征在于所述网关发出ARP验证报文具体包括所述网关通过ARP验证请求表获得所述ARP验证报文的验证IP地址和验证MAC地址, 所述ARP验证请求表至少包括1个表项,第三表项与第一表项相同,所述第三表项为所述 ARP验证请求表的1个表项,所述第一表项为ARP验证响应表中的1个表项,所述ARP验证响应表包括至少2个表项,每个表项包含验证IP地址以及验证MAC地址,所述至少2个表项中的验证MAC地址互不相同,所述ARP验证请求表是所述ARP验证响应表的子集。4.根据权利要求3所述方法,其特征在于所述判断所述第一报文是否是所述ARP验证报文对应的响应报文具体包括通过所述ARP验证响应表判断所述第一报文是否是所述ARP验证报文对应的响应报文,当所述第一报文的目的IP地址等于所述第一表项的验证IP地址时,或者当所述第一报文的目的MAC地址等于所述第一表项的验证MAC地址时,确定所述第一报文是所述ARP验证报文对应的响应报文。5.根据权利要求3所述方法,其特征在于所述网关发出ARP验证报文前,进一步包括所述网关发出所述前一个ARP验证报文后,将所述第三表项的验证MAC地址更新为第一验证MAC地址。6.根据权利要求5所述方法,其特征在于所述网关收到所述ARP验证报文对应的响应报文前,进一步包括将所述第一表项的验证MAC地址更新为所述第一验证MAC地址,所述ARP验证响应表中的第二表项用于判断所述网关收到的报文是否是所述前一个ARP验证报文对应的响应报文,所述第一表项和所述第二表项是所述ARP验证响应表中的不同表项。7.根据权利要求1至6中任一所述方法,其特征在于所述将所述第一报文上送到所述网关的控制平面具体包括所述网关的控制平面根据所述第一报文的源IP地址和源MAC地址查询所述控制平面的ARP缓存表是否存在对应表项,如果所述控制平面的ARP缓存表不存在对应表项,所述网关的控制平面生成一条包含所述第一报文的源IP地址和源MAC地址的第四表项,所述网关的控制平面将所述第四表项下发至所述网关的数据平面的ARP缓存表。8.根据权利要求1至7中任一所述方法,其特征在于所述验证MAC由所述网关的控制平面随机生成,并由所述网关的控制平...

【专利技术属性】
技术研发人员:李振海
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1