地址解析协议arp报文处理的方法、网络设备及系统的制作方法

文档序号:7954477阅读:238来源:国知局
专利名称:地址解析协议arp报文处理的方法、网络设备及系统的制作方法
技术领域
本发明涉及网络通讯技术领域,特别涉及一种地址解析协议ARP报文处理的方法,网络设备以及系统。
背景技术
地址解析协议(Address Resolution Protocol, ARP)用于将计算机的网络地址转化为物理地址,即将32位的IP地址转换为48位的MAC地址。ARP协议是属于链路层的协议,而在以太网中的数据帧从一个主机到达网内的另一台主机是根据48位的MAC地址来确定接口的,而不是根据32位的IP地址。因此,主机的内核(如驱动)必须知道目的端的MAC地址才能发送数据。ARP地址解析协议在应用之初确实很大程度上的推动了网络的进程,但也正是因为随着网络的拓展和ARP地址解析协议的普及,以及用户对于网络安全的关注,ARP协议在安全缺陷越来越受关注。下面是几种典型的威胁ARP协议的安全性的网络ARP攻击方式:方式一为交换网络的嗅探ARP攻击方式,由于ARP协议并不只在发送了 ARP请求才接收ARP应答。这样,当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,在上面的网络中,假设网络设备B向网络设备A发送一个自己伪造的ARP应答,而这个伪造的ARP应答中的数据为发送方 IP 地址是 192.168.10.3,MAC 地址是 DD-DD-DD-DD-DD-DD,其中,192.168.10.3 为网络设备C的IP地址,而网络设备C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造为DD-DD-DD-DD-DD-DD。当网络设备A接收到网络设备B伪造的ARP应答,就会更新本地的ARP缓存,将本地的IP-MAC对应表更换为接收到的数据格式,即网络设备A的ARP缓存中记录对应表中包括:192.168.10.3的IP地址与DD-DD-DD-DD-DD-DD的MAC地址对应,由于这一切都是网络设备A的系统内核自动完成的,网络设备A可不知道ARP应答被伪造了。方式二为IP地址冲突的ARP攻击方式,如果网络中存在相同IP地址的主机的时候,就会报告出IP地址冲突的警告。比如某主机B规定IP地址为192.168.0.1,如果它处于开机状态,那么其他机器A更改IP地址为192.168.0.1就会造成IP地址冲突。其原理就是:主机A在连接网络(或更改IP地址)时,就会向网络发送ARP包广播自己的IP地址,也就是freearp。如果网络中存在相同IP地址的主机B,那么B就会通过ARP包来r印Iy该地址,当A接收到这个reply后,A就会跳出IP地址冲突的警告,当然B也会有警告。因此可用ARP欺骗可以来伪造这个ARPr印ly,从而使目标一直遭受IP地址冲突警告的困扰。方式三为阻止目标的数据包通过网关的ARP攻击方式。当在一个局域网内通过网关上网,那么连接外部的计算机上的ARP缓存中就存在网关IP-MAC对应记录。如果,该记录被更改,那么该计算机向外发送的数据包总是发送到了错误的MAC地址上,这样,该计算机就不能够上网了。从以上几种攻击方式中,可以看出攻击之所以能够成功,主要是因为当前的ARP协议存在如下缺陷:
I)当计算机和网络设备接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。也就是不对ARP应答包进行合法性校验。2) ARP请求报文和ARP应答报文无法——对应,从而很容易被人窃取其中一个报文从而模拟出ARP应答或者请求报文来达到ARP攻击的目的。针对上述缺陷,目前也有些方法可来弥补或减轻这些缺陷所造成的网络安全隐患,其中包括:专利号:200910059669中公开,通过交换机开启ARP代理功能,代替网关和网络设备处理网络中的ARP请求和应答报文,并且加入了一定的合法性校验。但是由于此方法是通过设定网络设备ARP记录上限和认为先到的ARP报文为合法来实现防护功能的,只能说在限制ARP报文数量上起到了一定的作用,在ARP报文的合法性校验上没有太大的说服力;专利200710121472.2中同样是先到的ARP报文认为是合法报文,如与原来保存的ARP缓存有冲突则启用ARP验证,发送一定的ARP查询报文来验证其MAC的合法性,此方法的合法性校验方式依然使用的是存在缺陷的ARP报文来验证,那么根本上还是存在被攻击的隐患。综上所述,现有ARP报文处理过程中,仍然存在由ARP协议的本身缺陷引起的安全隐患问题。

发明内容
本发明实施例提供一种ARP报文处理方法,网络设备及系统,用以提高基于ARP协议网络的安全性。本发明实施例提供一种地址解析协议ARP报文处理的方法,包括:第一网络设备接收第二网络设备发送的ARP报文,其中,所述第一网络设备和第二网络设备都支持在ARP协议的报文中扩展身份标识ID ;所述第一网络设备在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文。本发明实施例提供一种地址解析协议ARP报文处理的网络设备,该网络设备支持在ARP协议的报文中扩展身份标识ID,包括:接收单元,用于接收由支持在ARP协议的报文中扩展身份标识ID的网络设备发送的ARP报文;查找单元,用于在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录;处理单元,用于根据查找结果,更新所述本地记录和处理所述ARP报文。本发明实施例提供一种地址解析协议ARP报文处理的系统,包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备和第二网络设备,其中,所述第一网络设备,用于接收第二网络设备发送的ARP报文,并在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文;所述第二网络设备,用于发送所述ARP报文给所述第一网络设备。本发明实施例提供一种地址解析协议ARP报文处理的系统,包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备,以及不支持在ARP协议的报文中扩展身份标识ID的第二网络设备,其中,所述第一网络设备,用于接收第二网络设备发送的ARP请求报文,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文;所述第二网络设备,用于发送所述ARP报文给所述第一网络设备。本发明实施例中,当网络设备都支持ARP协议的扩展时,第一网络设备接收到第二网络设备发送的ARP报文后,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括该ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新本地记录和处理ARP报文。这样,第一网络设备在处理ARP报文时,使用<MAC,IP,ID>来实现ARP报文与合法ARP报文的一一对应,从而有效抵抗了目前网络环境中存在的ARP攻击,并且提高了网络的安全性。


此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中一种ARP报文处理的流程图;图2为本发明实施例中另一种ARP报文处理的流程图;图3为本发明实施例一种中ARR报文交互的流程图;图4为本发明实施例二种中ARR报文交互的流程图;图5为本发明实施例中网络设备的结构图。
具体实施例方式为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例中,通过扩展ARP协议的一个字段用于保存身份标识ID,该身份标识ID是唯一的,从而可在报文处理过程中,使用此ID来实现ARP请求报文和ARP应答报文
的--对应,从而在解决目前网络环境中存在的ARP攻击问题的同时,降低网络中的ARP报
文数量的目的,实现安全与性能的共赢。本发明实施例中,ARP协议的扩展中,可通过在现有ARP协议的末尾增加一个2Byte大小的CHECKID (检验ID)字段,用于存放网络设备发送ARP请求时随机生成的不为O的ID,此ID必须是唯一的,即该ID必须与本地MAC对应的ARP记录表中ID都不同,同时将网络设备的ARP缓存中的ARP记录表由原来的两要素〈MAC,IP>扩展为三要素〈MAC,IP,ID>,其中ID保存最后生成的值。可见,支持在ARP协议的报文中扩展身份标识ID的网络设备的缓存中都有一个本地记录,该本地记录中有三要素〈MAC,IP, ID>,每一条记录都是经过合法性验证的。当网络中的网络设备都支持ARP协议的扩展时,网络设备之间交换的ARP报文中都包含有身份标识ID,则ARP报文处理的过程参见图1,包括:步骤101:第一网络设备接收第二网络设备发送的ARP报文。这里,第一网络设备可以为路由类网络设备或终端,第二网络设备也可以为路由类网络设备或终端。第一网络设备和第二网络设备都支持在ARP协议的报文中扩展身份标识ID。步骤102:第一网络设备判断该ARP报文的类型,当该ARP报文为ARP请求报文时,执行步骤103A,当该ARP报文为ARP应答报文时,执行103B。步骤103A:在第一网络设备的本地记录中查找是否有包含ARP请求报文中的源MAC+源IP+ID的第一记录,若有,执行步骤106,否则,执行步骤105。这里,第一网络设备的本地记录包括〈MAC,IP, ID>三要素,每条记录都是合法的。当在本地记录中查到包含ARP请求报文中的源MAC,源IP和ID的第一记录时,可表明第一网络设备与第二网络设备已建立链接,因此,执行步骤306,丢弃该ARP请求报文。步骤103B:在第一网络设备的本地记录中查找是否有包括ARP应答报文中的源MAC+源IP+ID的第二记录,如果有,则进行步骤105 ;否则,进行步骤104。步骤104:此步骤对应步骤103B,在第一网络设备的本地记录中查找是否有包括ARP应答报文的目的MAC+目的IP+ID的第三记录,若有,进行步骤105,否则,进行步骤106。步骤105:将接收ARP报文中的源MAC+源IP+ID组成新的报文,更新第一网络设备的本地记录,并正常转发该ARP报文。这里,当从步骤103A跳入时,第一网络设备将ARP请求报文中的源MAC+源IP+ID组成第一记录增加到该本地记录中。当从步骤103B跳入时,第一网络设备利用ARP应答报文中源MAC+源IP+ID刷新
第二记录。当然从步骤104跳入时,第一网络设备利用ARP应答报文中源MAC+源IP+ID组成第二记录加入到本地记录中。步骤106:丢弃收到的ARP报文,并释放占用的内存。可见上述ARP报文处理过程中,由于ARP报文中包括了网络地址、物理地址以及身份标识ID,因此,第一网络设备接收到第二网络设备发送的ARP报文后,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括该ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新本地记录和处理ARP报文。这样,第一网络设备在处理ARP报文时,使用〈MAC,IP, ID>来实现合法ARP请求报文与合法ARP应答报文的一一对应,从而有效抵抗了目前网络环境中存在的ARP攻击,并且提高了网络的安全性。在本发明实施例中,为进一步提高安全性,第一网络设备接收到ARP报文后,还对该报文的合法性进行验证,验证通过后才执行步骤102。在上述实施例中,网络中的网络设备都支持ARP协议的扩展,但是现有网络中,很多网络设备都不支持ARP协议的扩展,此时,支持在ARP协议的报文中扩展身份标识ID的网络设备处理ARP报文的过程,参见图2,包括:步骤201:第一网络设备接收第二网络设备发送的ARP报文。
这里,第一网络设备可以为路由类网络设备或终端,第二网络设备也可以为路由类网络设备或终端。第一网络设备支持在ARP协议的报文中扩展身份标识ID。而第二网络设备不支持在ARP协议的报文中扩展身份标识ID。步骤202:第一网络设备判断该ARP报文的类型,当该ARP报文为ARP请求报文时,执行步骤203A,当该ARP报文为ARP应答报文时,执行203B。ARP报文为ARP请求报文时时,ARP请求报文一般只包括MAC和IP,而ARP报文为ARP应答报文时,ARP应答报文在那个可包括MAC,IP和ID。但是该ID不是第二网络设备能修改的。步骤203A:在第一网络设备的本地记录中查找是否有包含ARP请求报文中的源MAC+源IP的第四记录,若有,执行步骤204A,否则,若没有,执行步骤207A。这里,第一网络设备的本地记录包括〈MAC,IP, ID>三要素,每条记录都是合法的。由于第二网络设备不支持在ARP协议的报文中扩展身份标识ID,因此,ARP请求报文中没有ID0在具体的查找过程中,可先在以源MAC在本地记录中查找,先查找出包括源MAC的记录,然后,在查找出的记录中,查看IP是否为源IP,如果是,则表明有第四记录,执行步骤204A,如果不是,则表明IP冲突,没有第四记录,执行步骤207A。当然,在本地记录中未查找到源MAC,同样,表明没有第四记录,执行步骤207A。步骤204A:在第一网络设备的本地记录中查找是否有包含ARP请求报文中的目标MAC+目标IP的第五记录,若没有,执行步骤205A,如有,执行步骤206A。步骤205A:第一网络设备构造包括唯一 ID的第一 ARP扩展请求报文,并转发该ARP报文,以及将ARP请求报文中的源MAC+源IP,以及ID组成第六报文加入到本地记录中。由于在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,并且,第一网络设备支持在ARP协议的报文中扩展身份标识ID,因此,当本地记录中有源MAC和源IP,且没有目标MAC和目标IP时,第一网络设备构造第一 ARP扩展请求报文,即可在ARP请求报文的末尾增加一个2Byte大小的CHECKID (检验ID)字段,用于存放与本地记录中的ID都不同的一个ID。然后,根据ARP请求报文中的目标网络地址和目的物理地址发送该第一ARP扩展请求报文,并且,将源MAC+源IP+ID组成第六记录加入本地记录中。步骤206A:第一网络设备构造包括唯一 ID的ARP扩展应答报文,并返回给第二网络设备。当在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,第一网络设备构造包括唯一的身份标识ID的ARP扩展应答报文,并返回给第二网络设备。此时,本地记录中有源MAC和源IP,且有目标MAC和目标IP。第一网络设备首先生成与ARP请求报文对应的ARP应答报文,然后在该ARP应答报文中增加唯一 ID,最后返回给第二网络设备。步骤207A:第一网络设备构造包括唯一 ID的第二 ARP扩展请求报文,并返回给第二网络设备,以及将ARP请求报文中的源MAC+源IP,以及构造的ID组成第七报文加入到本地记录中。
当在本地记录中查找到未查到包括ARP请求报文中源网络地址和源物理地址的第四记录时,第一网络设备构造包括唯一的身份标识ID的第二 ARP扩展请求报文,并返回给第二网络设备,以及将ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入本地记录中。此时,本地记录中没有源MAC,或者,有MAC,但是IP冲突,则将唯一的身份标识ID添加到ARP请求报文,并返回给第二网络设备,同时还要更新本地记录。步骤203B:在第一网络设备的本地记录中查找是否有包含ARP应答报文中的目标MAC+目标IP+ID的第八记录,若有,执行步骤204B,否则,若没有,执行步骤205B。由于ARP报文为ARP应答报文,虽然,第二网络设备不支持在ARP协议的报文中扩展身份标识ID,但是可收到的包括ID的请求报文,并能生成包括ID的ARP应答报文,只是不能对ID进行识别或修改了。因此,ARP应答报文中有ID,此时,需目标MAC、目标IP、ID都包括,才能执行步骤204B,否则,若没有,执行步骤205B。步骤204B:第一网络设备将ARP应答报文中的源网络地址和源物理地址与身份标识ID组成第九记录加入本地记录中,并正常转发ARP应答报文。步骤205B:丢弃该ARP应答报文。可见上述ARP报文处理过程中,由于接收的ARP报文由不支持ARP协议的扩展的网络设备发送的,因此,第一网络设备接收到第二网络设备发送的ARP报文后,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括该ARP报文中网络地址和物理地址的记录,并根据查找结果,更新本地记录和处理ARP报文。这样,第一网络设备可以构造一个包括ID的ARP报文,然后通过ID来实现合法ARP请求报文与合法ARP应答报文的一一对应,或者,通过ARP报文中第二网络设备不能修改的IP来实现合法ARP请求报文与合法
ARP应答报文的--对应,从而有效抵抗了目前网络环境中存在的ARP攻击,并且提高了网
络的安全性。并且,还可以与现网中的网络设备对接,使其具有向下兼容性,保证了本发明实施例的实用性。下面结合说明书附图对本发明实施例作进一步详细描述。实施例一,本实施例中,本地记录为ARP缓存表,请求终端Q,目的终端R、以及交换机网络设备S都支持ARP协议的扩展,因此,ARP缓存表包括〈MAC,IP, ID>三要素,则其报文交互过程参见图2,具体为:步骤A:当请求终端Q需要发送ARP请求报文时,随机产生一个ID,假设为X,此ID必须满足与本地MAC-Q对应的ARP缓存表中的ID值均不相同,将其添加到生成的ARP请求报文的Target IP address字段后,发送成功后,将此X保存到对应ARP缓存表中。步骤B:当交换机网络设备S收到步骤A中发送的ARP请求报文时,检查ARP缓存表中是否保存有与此MAC (Q) +IP (Q) +X相同的记录,如果记录存在,则直接丢弃该ARP请求报文;否则将此MAC (Q) +IP (Q) +X组合添加到ARP缓存表中,并正常转发ARP请求报文给目的终端R。步骤C:当目的终端R接收ARP请求报文,首先检查该ARP请求报文是否指向本地地址,如果指向的是报文地址,则检查X的记录 是否存在,若存在,则忽略此ARP请求报文。若不存在则将此ARP请求报文中的MAC (Q) +IP (Q) +X添加的目的终端R的ARP缓存表中,并且以X回应ARP应答报文给交换机网络设备S ;如果指向的非本地地址,则丢弃该ARP请求报文。步骤D:当交换机网络设备S收到步骤C发送的ARP应答报文时,检查交换机网络设备的ARP缓存表中是否保存有该应答报文中的MAC (Q) +IP (Q) +X的记录,若存在,那么将MAC (R) +IP (R) +X记录到ARP缓存表中,并正常转发给请求终端Q ;若不存在,那么直接丢弃该ARP应答报文。步骤E:当请求终端Q收到ARP应答报文,检查请求终端Q的ARP缓存表中是否保存有该应答报文MAC (Q) +IP (Q) +X的记录:若存在,则将MAC (R) +IP (R) +X保存到请求终端Q的ARP缓存表中。本实施例中,当交换机网络设备S或请求终端Q收到非法的ARP应答报文时,该报文中的ID为Y,则由于交换机网络设备S或请求终端Q的ARP缓存表中没有Y的记录,则直接丢弃该非法的ARP应答报文,不更新ARP缓存表。实施例二,本实施例中,本地记录为ARP缓存表,请求终端Q和目的终端R不支持ARP协议的扩展,只有交换机网络设备S支持ARP协议的扩展,即只有交换机网络设备的ARP缓存表包括〈MAC,IP, ID〉。则其报文交互过程参见图2,具体为:步骤A:当要建立通信前,请求者请求终端Q发送指向目的终端R的普通ARP请求报文。步骤B:当支持扩展ARP报文的交换机网络设备S收到Q发出的指向目的终端R的ARP报文时,可以分如下几种情况:B1:包括请求终端Q的源MAC+源IP的记录存,即源MAC存在,且无IP冲突,但包括目的终端R的目标MAC+目标IP的记录不存在,此时,交换机网络设备S在请求终端Q的ARP请求报文的基础上构造指向目的终端R的扩展ARP请求报文,正常转发出去,该扩展ARP请求报文有唯一的ID,ID = Y,在ARP缓存中保存源MAC+源IP+ID。B2:包括请求终端Q的源MAC+源IP的记录存,且包括目的终端R的目标MAC+目标IP的记录也存在,此时,交换机网络设备S构造ARP扩展应答报文,该ARP扩展应答报文包括唯一的ID,ID = X,并向请求终端Q发送。B3:包括请求终端Q的源MAC+源IP的记录存,即有请求终端Q的源MAC但是IP冲突,或者请求终端Q的源MAC不存在,此时交换机网络设备S构造一个指向请求终端Q的扩展ARP请求报文,该扩展ARP请求报文包括唯一的ID,ID = X,并在ARP缓存表中记录源MAC+源IP+ID,以便后续验证。步骤C:根据步骤B的不同分支,步骤C也可以分为如下几个子项:Cl:对应BI,当目的终端R收到步骤BI发出的扩展ARP请求报文时,更新ARP缓存,并通过交换机网络设备S向请求终端Q回应扩展ARP应答报文,此时,不修改ID,即虽然目的终端R不支持ARP协议的扩展,但回复的扩展ARP应答报文包括了 ID,ID = Y。C2:对应B2,当请求终端Q收到步骤B2发出的扩展ARP应答报文时,直接更新ARP缓存表,该ARP缓存表中只有〈MAC,IP〉。C3:对应B3,当请求终端Q收到步骤B3发出的扩展ARP请求报文时,向交换机网络设备S回应扩展ARP应答报文。同样,不能修改ID,ID = X。步骤D:根据步骤C的不同分支,步骤D也可以分为如下几个子项:
Dl:对应Cl,当交换机网络设备S收到步骤Cl发送的扩展ARP应答报文时,检验该扩展ARP应答报文中ID与记录中发送的ID是否一致,即是否都为Y,若一致则在ARP缓存表保存请求终端QMAC+请求终端QIP+ID,且转发此扩展ARP应答报文给请求终端Q ;若不一致,则丢弃该扩展ARP应答报文;D3:对应C3,当交换机S收到步骤C3发送的扩展ARP应答报文时,检验该扩展ARP应答报文中ID与记录中发送的ID是否一致,即是否都为X,若一致则在ARP缓存表保存MAC (R)+IP (R)+ID0步骤E:根据步骤D的Dl分支,步骤E仅对应Dl存在,当请求终端Q收到Dl转发的扩展ARP应答报文时,更新ARP缓存,丢弃该扩展ARP应答报文。根据上述实施例可知,处理ARP报文的网络设备可持在ARP协议的报文中扩展身份标识ID,参见图5,该网络设备包括:接收单元510,查找单元520,以及处理单元530。接收单元510,用于接收由支持在ARP协议的报文中扩展身份标识ID的网络设备发送的ARP报文。查找单元520,用于在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括ARP报文中网络地址、物理地址以及身份标识ID的记录。处理单元530,用于根据查找结果,更新本地记录和处理ARP报文。当ARP报文为ARP请求报文时,处理单元530,具体用于在本地记录中没有查找到包括ARP请求报文中的源网络地址、源物理地址以及身份标识ID的第一记录时,将由ARP请求报文中的源网络地址、源物理地址以及身份标识ID组成的第一记录增加到本地记录中,并转发ARP请求报文。当ARP报文为ARP应答报文时,处理单元530,具体用于当在本地记录中查找到包括ARP应答报文中源网络地址和源物理地址的第二记录时,利用ARP应答报文中源网络地址、源物理地址和身份标识ID刷新第二记录,并转发ARP应答报文。或,在本地记录未查找到第二记录,且在本地记录中查找到包括ARP应答报文中目的网络地址、目的物理地址以及身份标识ID的第三记录时,利用ARP应答报文中源网络地址、源物理地址以及身份标识ID组成第二记录加入本地记录中,并转发ARP应答报文。本发明实施例中网络设备还可与现网对接,因此,接收单元510,还用于接收不支持在ARP协议的报文中扩展身份标识ID的网络设备发送的ARP请求报文。查找单元520,还用于在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括ARP报文中网络地址、物理地址的记录。当ARP报文为ARP请求报文时,处理单元530,具体用于当在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的第一 ARP扩展请求报文,并根据ARP请求报文中的目的物理地址发送第一 ARP扩展请求报文,以及将ARP请求报文中目标网络地址和目的物理地址与身份标识ID组成第六记录加入本地记录中。并且,当在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的ARP扩展应答报文并返回。并且,当在本地记录中查找到未查到包括ARP请求报文中源网络地址和源物理地址的第四记录时,构造包括唯一的身份标识ID的第二 ARP扩展请求报文并返回,以及将ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入本地记录中。当ARP报文为ARP应答报文,处理单元530,具体用于当在本地记录查找到包括ARP应答报文中目标网络地址、目的物理地址以及身份标识ID的第八记录时,将ARP应答报文中的源网络地址和源物理地址与身份标识ID组成第九记录加入本地记录中,并处理ARP应答报文。根据上述实施例可知,本发明实施例提供了两种网络模型的ARP报文处理的系统,其中,第一种网络模型的ARP报文处理的系统包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备和第二网络设备,其中,第一网络设备,用于接收第二网络设备发送的ARP报文,并在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新本地记录和处理ARP报文。第二网络设备,用于发送ARP报文给第一网络设备。当ARP报文为ARP请求报文时,第一网络设备,具体用于在本地记录中没有查找到包括ARP请求报文中的源网络地址、源物理地址以及身份标识ID的第一记录时,第一网络设备将由ARP请求报文中的源网络地址、源物理地址以及身份标识ID组成的第一记录增加到本地记录中,并转发ARP请求报文。当ARP报文为ARP应答报文时,第一网络设备,具体用于当在本地记录中查找到包括ARP应答报文中源网络地址和源物理地址的第二记录时,利用ARP应答报文中源网络地址、源物理地址和身份标识ID刷新第二记录,并转发ARP应答报文。或,在本地记录未查找到第二记录,且在本地记录中查找到包括ARP应答报文中目的网络地址、目的物理地址以及身份标识ID的第三记录时,利用ARP应答报文中源网络地址、源物理地址以及身份标识ID组成第二记录加入本地记录中,并转发ARP应答报文。第二种网络模型的ARP报文处理的系统包括:,包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备,以及不支持在ARP协议的报文中扩展身份标识ID的第二网络设备,其中,第一网络设备,用于接收第二网络设备发送的ARP请求报文,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括ARP报文中网络地址、物理地址的记录,并根据查找结果,更新本地记录和处理ARP报文。第二网络设备,用于发送ARP报文给第一网络设备。当ARP报文为ARP请求报文时,第一网络设备,具体用于当在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的第一 ARP扩展请求报文,并根据ARP请求报文中的目的物理地址发送第一 ARP扩展请求报文,以及将ARP请求报文中目标网络地址和目的物理地址与身份标识ID组成第六记录加入本地记录中。并且,当在本地记录中查找到包括ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的ARP扩展应答报文,并返回给第二网络设备。并且,当在本地记录中查找到未查到包括ARP请求报文中源网络地址和源物理地址的第四记录时,构造包括唯一的身份标识ID的第二 ARP扩展请求报文,并返回给第二网络设备,以及将ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入本地记录中。当ARP报文为ARP应答报文,第一网络设备,具体用于当在本地记录查找到包括ARP应答报文中目标网络地址、目的物理地址以及身份标识ID的第八记录时,将ARP应答报文中的源网络地址和源物理地址与身份标识ID组成第九记录加入本地记录中,并处理ARP应答报文。本发明实施例中,当网络设备都支持ARP协议的扩展时,第一网络设备接收到第二网络设备发送的ARP报文后,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括该ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新本地记录和处理ARP报文。这样,第一网络设备在处理ARP报文时,使用<MAC,IP,ID>来实现合法ARP请求报文与合法ARP应答报文的一一对应,从而有效抵抗了目前网络环境中存在的ARP攻击,并且提高了网络的安全性。另外,当支持ARP协议的扩展的第一网络设备与现网中的网络设备对接时,第一网络设备接收到第二网络设备发送的ARP报文后,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括该ARP报文中网络地址和物理地址的记录,并根据查找结果,更新本地记录和处理ARP报文。这样,第一网络设备可以构造一个包括ID的ARP报文,然后通过ID来实现合法ARP请求报文与合法ARP应答报文的一一对应,或者,通过ARP报文中第二网络设备不能修改的IP来实现合法ARP请求报文与合法ARP应答报文的一一对应,从而有效抵抗了目前网络环境中存在的ARP攻击,并且提高了网络的安全性。并且,还可以与现网中的网络设备对接,使其具有向下兼容性,保证了本发明实施例的实用性。上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权力要求的保护范围内。
权利要求
1.一种地址解析协议ARP报文处理的方法,其特征在于,包括: 第一网络设备接收第二网络设备发送的ARP报文,其中,所述第一网络设备和第二网络设备都支持在ARP协议的报文中扩展身份标识ID ; 所述第一网络设备在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文。
2.按权利要求1所述的方法,其特征在于,当所述ARP报文为ARP请求报文时,所述根据查找结果,更新所述本地记录和处理所述ARP报文包括: 在所述本地记录中未查找到包括所述ARP请求报文中的源网络地址、源物理地址以及身份标识ID的第一记录时,所述第一网络设备将由所述ARP请求报文中的源网络地址、源物理地址以及身份标识ID组成的第一记录增加到所述本地记录中,并转发所述ARP请求报文。
3.按权利要求1所述的方法,其特征在于,当所述ARP报文为ARP应答报文时,所述根据查找结果,更新所述本地记录和处理所述ARP报文包括: 在所述本地记录中查找到包括所述ARP应答报文中源网络地址和源物理地址的第二记录时,所述第一网络设备利用所述ARP应答报文中源网络地址、源物理地址和身份标识ID刷新所述第二记录,并转发所述ARP应答报文;或, 在所述本地记录未查找到所述第二记录,但在所述本地记录中查找到包括所述ARP应答报文中目的网络地址、目的物理地址以及身份标识ID的第三记录时,所述第一网络设备利用所述ARP应答报文中源网络地址、源物理地址以及身份标识ID组成所述第二记录加入本地记录中,并转发所述ARP应答报文。
4.按权利要求1所述的方法,其特征在于,该方法还包括: 第一网络设备接收第二网络设备发送的ARP报文,其中,所述第一网络设备支持在ARP协议的报文中扩展身份标识ID,所述第二网络设备不支持在ARP协议的报文中扩展身份标识ID ; 所述第一网络设备在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文。
5.按权利要求4所述的方法,其特征在于,当所述ARP报文为ARP请求报文,所述根据查找结果,更新所述本地记录和处理所述ARP报文包括: 当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,所述第一网络设备构造包括唯一的身份标识ID的第一 ARP扩展请求报文,并根据所述ARP请求报文中的目的物理地址发送所述第一 ARP扩展请求报文,以及将所述ARP请求报文中目标网络地址和目的物理地址与身份标识ID组成第六记录加入所述本地记录中; 当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,所述第一网络设备构造包括唯一的身份标识ID的ARP扩展应答报文,并返回给所述第二网络设备;当在所述本地记录中查找到未查到包括所述ARP请求报文中源网络地址和源物理地址的第四记录时,所述第一网络设备构造包括唯一的身份标识ID的第二 ARP扩展请求报文,并返回给所述第二网络设备,以及将所述ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入所述本地记录中。
6.按权利要求4所 述的方法,其特征在于,当所述ARP报文为ARP应答报文,所述根据查找结果,更新所述本地记录和处理所述ARP报文包括: 当在所述本地记录查找到包括所述ARP应答报文中目标网络地址、目的物理地址以及身份标识ID的第八记录时,所述第一网络设备将所述ARP应答报文中的源网络地址和源物理地址与身份标识ID组成第九记录加入所述本地记录中,并处理所述ARP应答报文。
7.一种地址解析协议ARP报文处理的网络设备,其特征在于,包括: 接收单元,用于接收由支持在ARP协议的报文中扩展身份标识ID的网络设备发送的ARP报文; 查找单元,用于在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录; 处理单元,用于根据查找结果,更新所述本地记录和处理所述ARP报文。
8.按权利要求7所述的网络设备,其特征在于,当所述ARP报文为ARP请求报文时,所述处理单元,具体用于在所述本地记录中没有查找到包括所述ARP请求报文中的源网络地址、源物理地址以及身份标识ID的第一记录时,将由所述ARP请求报文中的源网络地址、源物理地址以及身份标识ID组成的第一记录增加到所述本地记录中,并转发所述ARP请求报文。
9.按权利要求7所述的网络设备,其特征在于,当所述ARP报文为ARP应答报文时,所述处理单元,具体用于当在所述本地记录中查找到包括所述ARP应答报文中源网络地址和源物理地址的第二记录时,利用所述ARP应答报文中源网络地址、源物理地址和身份标识ID刷新所述第二记录,并转发所述ARP应答报文;或, 在所述本地记录未查找到所述第二记录,且在所述本地记录中查找到包括所述ARP应答报文中目的网络地址、目的物理地址以及身份标识ID的第三记录时,利用所述ARP应答报文中源网络地址、源物理地址以及身份标识ID组成所述第二记录加入本地记录中,并转发所述ARP应答报文。
10.按权利要求7所述的网络设备,其特征在于, 所述接收单元,还用于接收不支持在ARP协议的报文中扩展身份标识ID的网络设备发送的ARP请求报文; 所述查找单元,还用于在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址的记录。
11.按权利要求10所述的网络设备,其特征在于,当所述ARP报文为ARP请求报文时, 所述处理单元,具体用于当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的第一 ARP扩展请求报文,并根据所述ARP请求报文中的目的物理地址发送所述第一ARP扩展请求报文,以及将所述ARP请求报文中目标网络地址和目的物理地址与身份标识ID组成第六记录加入所述本地记录中;当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的ARP扩展应答报文并返回; 当在所述本地记录中查找到未查到包括所述ARP请求报文中源网络地址和源物理地址的第四记录时,构造包括唯一的身份标识ID的第二 ARP扩展请求报文并返回,以及将所述ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入所述本地记录中。
12.按权利要求10所述的网络设备,其特征在于,当所述ARP报文为ARP应答报文, 所述处理单元,具体用于当在所述本地记录查找到包括所述ARP应答报文中目标网络地址、目的物理地址以及身份标识ID的第八记录时,将所述ARP应答报文中的源网络地址和源物理地址与身份标识ID组成第九记录加入所述本地记录中,并处理所述ARP应答报文。
13.一种地址解析协议ARP报文处理的系统,其特征在于,包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备和第二网络设备,其中, 所述第一网络设备,用于接收第二网络设备发送的ARP报文,并在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文; 所述第二网络设备,用于发送所述ARP报文给所述第一网络设备。
14.按权利要求13所述的系统,其特征在于,当所述ARP报文为ARP请求报文时, 所述第一网络设备,具体用于在所述本地记录中没有查找到包括所述ARP请求报文中的源网络地址、源 物理地址以及身份标识ID的第一记录时,所述第一网络设备将由所述ARP请求报文中的源网络地址、源物理地址以及身份标识ID组成的第一记录增加到所述本地记录中,并转发所述ARP请求报文。
15.按权利要求13所述的系统,其特征在于,当所述ARP报文为ARP应答报文时, 所述第一网络设备,具体用于当在所述本地记录中查找到包括所述ARP应答报文中源网络地址和源物理地址的第二记录时,利用所述ARP应答报文中源网络地址、源物理地址和身份标识ID刷新所述第二记录,并转发所述ARP应答报文;或, 在所述本地记录未查找到所述第二记录,且在所述本地记录中查找到包括所述ARP应答报文中目的网络地址、目的物理地址以及身份标识ID的第三记录时,利用所述ARP应答报文中源网络地址、源物理地址以及身份标识ID组成所述第二记录加入本地记录中,并转发所述ARP应答报文。
16.一种地址解析协议ARP报文处理的系统,其特征在于,包括:支持在ARP协议的报文中扩展身份标识ID的第一网络设备,以及不支持在ARP协议的报文中扩展身份标识ID的第二网络设备,其中, 所述第一网络设备,用于接收第二网络设备发送的ARP请求报文,在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文; 所述第二网络设备,用于发送所述ARP报文给所述第一网络设备。
17.按权利要求16所述的系统,其特征在于,当所述ARP报文为ARP请求报文时,所述第一网络设备,具体用于当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且未查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的第一 ARP扩展请求报文,并根据所述ARP请求报文中的目的物理地址发送所述第一 ARP扩展请求报文,以及将所述ARP请求报文中目标网络地址和目的物理地址与身份标识ID组成第六记录加入所述本地记录中; 当在所述本地记录中查找到包括所述ARP请求报文中源网络地址和源物理地址的第四记录,且查到包括所述ARP请求报文中目标网络地址和目的物理地址的第五记录时,构造包括唯一的身份标识ID的ARP扩展应答报文,并返回给所述第二网络设备; 当在所述本地记录中查找到未查到包括所述ARP请求报文中源网络地址和源物理地址的第四记录时,构造包括唯一的身份标识ID的第二 ARP扩展请求报文,并返回给所述第二网络设备,以及将所述ARP请求报文中源网络地址和源物理地址与身份标识ID组成第七记录加入所述本地记录中。
18.按权利要求16所述的系统,其特征在于,当所述ARP报文为ARP应答报文, 所述第一网络设备,具体用于当在所述本地记录查找到包括所述ARP应答报文中目标网络地址、目的物理地址以及身份标识ID的第八记录时,将所述ARP应答报文中的源网络地址和源物理地址与身份 标识ID组成第九记录加入所述本地记录中,并处理所述ARP应答报文。
全文摘要
本发明公开了一种地址解析协议ARP报文处理方法,网络设备及系统,用以提高基于ARP协议网络的安全性。该方法包括第一网络设备接收第二网络设备发送的ARP报文,其中,所述第一网络设备和第二网络设备都支持在ARP协议的报文中扩展身份标识ID;所述第一网络设备在由网络地址、物理地址以及身份标识ID组成的本地记录中查找包括所述ARP报文中网络地址、物理地址以及身份标识ID的记录,并根据查找结果,更新所述本地记录和处理所述ARP报文。
文档编号H04L29/12GK103095858SQ20111033538
公开日2013年5月8日 申请日期2011年10月28日 优先权日2011年10月28日
发明者吴红海, 罗小妮 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1