Arp报文处理方法及装置的制作方法

文档序号:7836678阅读:266来源:国知局
专利名称:Arp报文处理方法及装置的制作方法
技术领域
本申请涉及网络技术领域,特别是涉及一种ARP(Address Resolution Protocol, 地址解析协议)报文处理方法及装置。
背景技术
ARP 1^ TCP/IP (Transmission Control Protocol/Internet Protocol,
控制协议/互联网协议)协议栈中较低层的协议之一,其作用是实现IP地址到以太网物理地址,即MAC(Media Access Control,媒体接入控制)地址的转换。ARP协议通过目标设备的IP地址查询目标设备的MAC地址,以保证通信地顺利进行。在局域网中,网络数据被封装成以太网帧,每帧数据中有目标主机的MAC地址。一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址,这个目标MAC地址是通过ARP协议获得的。而地址解析过程就是主机在发送数据帧前,将目标IP地址转换成目标 MAC地址的过程。使用ARP协议实现通信时,在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如表1所示。
权利要求
1.一种地址解析协议ARP报文处理方法,其特征在于,包括获取ARP报文,判断所述ARP报文的类型;根据所述ARP报文的类型对所述ARP报文进行处理,包括若所述ARP报文的类型为本机向外发送的广播包,则判断该广播包是否为所述本机向网关发送的ARP请求包,若是,则将所述ARP请求包修改为ARP回应包,并将所述ARP回应包发送给所述网关;若否,则丢弃该广播包;若所述ARP报文的类型为ARP回应包,则判断该ARP回应包是否为所述本机发送给所述网关的ARP回应包,若是,则将该ARP回应包发送给所述网关;若否,则丢弃该ARP回应包。
2.根据权利要求1所述的方法,其特征在于,在根据所述ARP报文的类型对所述ARP报文进行处理的步骤之后,还包括所述主机向所述网关所在的交换机发送交换机主动防御包,其中,所述交换机主动防御包用于将所述交换机的内容可寻址存储器CAM表中的所述本机的表项数据刷新为正确的表项数据。
3.根据权利要求2所述的方法,其特征在于,所述交换机主动防御包包括以太网源地址的信息和以太网目标地址的信息,所述以太网源地址为所述本机的媒体访问控制MAC地址,所述以太网目标地址为所述交换机的MAC地址。
4.根据权利要求3所述的方法,其特征在于,所述交换机主动防御包为以太网包,所述交换机主动防御包的长度与ARP请求包的长度相同,所述交换机主动防御包中的以太网类型字段及其它数据字段全部置0。
5.根据权利要求2所述的方法,其特征在于,还包括在所述主机向所述网关所在的所述交换机发送所述交换机主动防御包时,还以设定频率发送标准ARP数据包。
6.根据权利要求1所述的方法,其特征在于,在所述获取ARP报文,判断所述ARP报文的类型的步骤之前,还包括所述主机以不同的时间间隔向所述网关发送标准ARP数据包;根据对所述发送的标准ARP数据包进行回应的ARP回应包,确定所述网关的真实MAC 地址。
7.根据权利要求6所述的方法,其特征在于,所述主机以不同的时间间隔向所述网关发送标准ARP数据包的步骤包括所述主机以TX2n为时间间隔,向所述网关发送所述标准ARP数据包;其中,T为设定的时间常量,η为所述标准ARP数据包的发包序号。
8.根据权利要求6所述的方法,其特征在于,所述主机以不同的时间间隔向所述网关发送标准ARP数据包的步骤包括所述主机先以相同的时间间隔向所述网关发送设定次数的所述标准ARP数据包,在间歇一个长于所述相同的时间间隔的时间段后,再以所述相同的时间间隔向所述网关发送所述设定次数的所述标准ARP数据包。
9.根据权利要求6至8任一项所述的方法,其特征在于,所述根据对所述发送的标准 ARP数据包进行回应的ARP回应包,确定所述网关的真实MAC地址的步骤包括获取在所述不同的时间间隔回应所述发送的标准ARP数据包的所述ARP回应包;从获取的所述ARP回应包中,确定所述网关的真实MAC地址。
10.根据权利要求9所述的方法,其特征在于,若从获取的所述ARP回应包中,确定的所述网关的真实MAC地址包括多个,则所述方法还包括所述主机使用确定的所述网关的多个真实MAC地址中的每个MAC地址访问公网;若访问成功,则将当前使用的访问所述公网的网关的MAC地址,确定为所述网关的真实MAC地址。
11.根据权利要求1所述的方法,其特征在于,在所述获取ARP报文的步骤之后,还包括判断所述ARP报文中的网关IP地址与网关MAC地址的对应关系与所述本机的ARP缓存表中的对应关系不一致,禁止修改所述ARP缓存表;或者,判断所述ARP报文中的本机IP地址与本机MAC地址的对应关系与所述本机的 ARP缓存表中的对应关系不一致,禁止修改所述ARP缓存表。
12.—种地址解析协议ARP报文处理装置,其特征在于,包括获取判断模块,用于获取ARP报文,判断所述ARP报文的类型;判断执行模块,用于根据所述ARP报文的类型对所述ARP报文进行处理,包括第一判断执行模块,用于若所述ARP报文的类型为本机向外发送的广播包,则判断该广播包是否为所述本机向网关发送的ARP请求包,若是,则将所述ARP请求包修改为ARP回应包,并将所述ARP回应包发送给所述网关;若否,则丢弃该广播包;第二判断执行模块,用于若所述 ARP报文的类型为ARP回应包,则判断该ARP回应包是否为所述本机发送给所述网关的ARP 回应包,若是,则将该ARP回应包发送给所述网关;若否,则丢弃该ARP回应包。
13.根据权利要求12所述的装置,其特征在于,还包括第一发送模块,用于在所述判断执行模块根据所述ARP报文的类型对所述ARP报文进行处理之后,向所述网关所在的交换机发送交换机主动防御包,其中,所述交换机主动防御包用于将所述交换机的内容可寻址存储器CAM表中的所述本机的表项数据刷新为正确的表项数据。
14.根据权利要求13所述的装置,其特征在于,所述交换机主动防御包包括以太网源地址的信息和以太网目标地址的信息,所述以太网源地址为所述本机的媒体访问控制MAC 地址,所述以太网目标地址为所述交换机的MAC地址。
15.根据权利要求14所述的装置,其特征在于,所述交换机主动防御包为以太网包,所述交换机主动防御包的长度与ARP请求包的长度相同,所述交换机主动防御包中的以太网类型字段及其它数据字段全部置0。
16.根据权利要求13所述的装置,其特征在于,所述第一发送模块,还用于在向所述网关所在的所述交换机发送所述交换机主动防御包时,还以设定频率发送标准ARP数据包。
17.根据权利要求12所述的装置,其特征在于,还包括第二发送模块,用于在所述获取判断模块获取ARP报文,判断所述ARP报文的类型之前,以不同的时间间隔向所述网关发送标准ARP数据包;网关地址获取模块,用于根据对所述发送的标准ARP数据包进行回应的ARP回应包,确定所述网关的真实MAC地址。
18.根据权利要求17所述的装置,其特征在于,所述第二发送模块,用于以TX2n为时间间隔,向所述网关发送标准ARP数据包;其中,T为设定的时间常量,η为所述标准ARP数据包的发包序号。
19.根据权利要求17所述的装置,其特征在于,所述第二发送模块,用于先以相同的时间间隔向所述网关发送设定次数的所述标准ARP数据包,在间歇一个长于所述相同的时间间隔的时间段后,再以所述相同的时间间隔向所述网关发送所述设定次数的所述标准ARP 数据包。
20.根据权利要求17至19任一项所述的装置,其特征在于,所述网关地址获取模块,用于获取在所述不同的时间间隔回应所述发送的标准ARP数据包的所述ARP回应包;从获取的所述ARP回应包中,确定所述网关的真实MAC地址。
21.根据权利要求20所述的装置,其特征在于,还包括网关地址选择模块,用于若所述网关地址获取模块确定的所述网关的真实MAC地址包括多个,则使用确定的所述网关的多个真实MAC地址中的每个MAC地址访问公网;若访问成功,则将当前使用的访问所述公网的网关的MAC地址,确定为所述网关的真实MAC地址。
22.根据权利要求12所述的装置,其特征在于,还包括过滤模块,用于在所述获取判断模块获取ARP报文之后,判断所述ARP报文中的网关IP 地址与网关MAC地址的对应关系与所述本机的ARP缓存表中的对应关系不一致,禁止修改所述ARP缓存表;或者,判断所述ARP报文中的本机IP地址与本机MAC地址的对应关系与所述本机的ARP缓存表中的对应关系不一致,禁止修改所述ARP缓存表。
全文摘要
本申请提供了一种ARP报文处理方法及装置,其中,ARP报文处理方法包括获取ARP报文,判断ARP报文的类型;根据ARP报文的类型对ARP报文进行处理,包括若ARP报文的类型为本机向外发送的广播包,则判断该广播包是否为本机向网关发送的ARP请求包,若是,则将ARP请求包修改为ARP回应包,并将ARP回应包发送给网关;若否,则丢弃该广播包;若ARP报文的类型为ARP回应包,则判断该ARP回应包是否为本机发送给网关的ARP回应包,若是,则将该ARP回应包发送给网关;若否,则丢弃该ARP回应包。通过本申请,实现了在不影响上网情况下的ARP报文欺骗防御,保障了局域网的安全。
文档编号H04L29/12GK102571579SQ20111045765
公开日2012年7月11日 申请日期2011年12月30日 优先权日2011年12月30日
发明者丁振, 向明, 边陆 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1