用于防止网络地址盗用的方法和装置的制作方法

文档序号:7868992阅读:181来源:国知局
专利名称:用于防止网络地址盗用的方法和装置的制作方法
技术领域
本发明总地涉及计算机网络安全性。本发明更具体地涉及用于防止网络地址盗用(spoof)的方法和装置。
背景技术
在这个部分中所描述的方法可以被实行,但不一定是以前曾被想到或实行过的方法。因此,除非在这里特别指出,否则在这个部分中所描述的方法在这个申请文件中不是权利要求的现有技术,将其包括在这个部分中并非承认它们是现有技术。
在根据因特网协议(IP)网络层协议来定址数据包的数据网络中,可以通过IP地址来识别网络中的每个设备。在使用以太网作为数据链路层的网络中,可以通过媒体访问控制(MAC)地址来识别网络中的每个设备。
在以太网上使用IP的网络中,网络交换机可以维护一份地址解析协议(ARP)表,该表中包括了在IP地址和MAC地址之间的一个或多个映射关系。ARP表被限制为每给定一个IP地址,最多包括一个MAC地址。如果网络交换机接收到被定址到某一IP地址的数据包,而该IP地址映射到与所述网络交换机相连的设备的MAC地址,那么所述网络交换机将所述数据包传递到那个设备。
如果网络交换机接收到的数据包所包括的IP地址未被映射到ARP表中的任一MAC地址,则网络交换机在该网络交换机的广播域内广播一个ARP请求。对该ARP请求的应答意味着某个设备已被指定了所述IP地址。根据所述应答,网络交换机知道了与所述IP地址相关联的MAC地址。所述IP地址和所述MAC地址之间的这种关联关系随后作为一种映射关系被存储在网络交换机的ARP表中,以供将来使用。然后,交换机将所述数据包转发到所述MAC地址。或者,如果对所述ARP请求没有应答,则网络交换机丢弃所述数据包。
使用这种映射关系,网络服务提供者试图确保数据包未被定址到的对象不会接收到这些数据包。此外,网络服务提供者使用这种映射关系试图将网络服务限制到已知的预订设备。
网络交换机可以接收ARP消息,该消息一般是从默认的网关发送的,揭示了与指定的IP地址相关联的MAC地址。网络交换机可以替换包括所述IP地址的现有映射关系,从而更新它的ARP表,以将这些地址间的映射关系包括进去。
恶意用户可以欺骗网络交换机将非法的映射关系包括到网络交换机的ARP表中。通过进行ARP攻击,用户就可以实现这一目标。为了进行ARP攻击,用户可以向他想要攻击的网络交换机、计算机或网络设备发送ARP消息。ARP消息包括所述用户的设备的MAC地址以及已被包括在ARP表中的IP地址(有可能是默认网关的IP地址)。当网络交换机接收到该ARP消息时,网络交换机茫然无知地更改了它的ARP表,将所述IP地址和所述用户的设备的MAC地址之间的非法映射关系包括进来。结果,所述恶意用户就可以接收到本来发给另一个用户的包流量。上述技术可以被称为“IP盗用”。此后,网络交换机错误地向恶意用户的设备传递被定址到所述IP地址的所有数据包。
另外,恶意用户可以使用同一技术来攻击默认网关。恶意用户通过指示他的设备将数据包转发到这些数据包实际上本应前往的目的地,可以防止任何人检测出这种骗局。网络的安全性和隐私性因此受到了损害。恶意用户可以获得重要的个人信息,例如银行账户、信用卡信息、用户登录账号和密码等。因此动摇了当前订户和潜在订户的信心。而且,恶意用户可以使用同一技术在不进行预订的情况下就获得网络服务。结果,网络服务提供者的资源被耗尽。此外,恶意用户的网络活动可能被错误地归咎于没有参与这些活动的某个人。结果,这个人可能因他没有使用过的服务而付费。此外,对于网络服务提供者的每一个IP地址而言,网络服务提供者在法律上所必需的记录可能无法可靠地指示出与该IP地址相关联的用户。
某些试图防止IP盗用的方法使用MAC地址来识别合法的预订设备。这些方法试图防止合法的IP地址被映射到未授权与该IP地址相关联的MAC地址。不幸的是,这些方法并没有防止恶意用户修改其设备的MAC地址,以复制与某一IP地址合法关联的MAC地址(即“MAC地址盗用”)。一种广为使用的操作系统,微软视窗2000,为用户提供了这样一个接口,该接口允许用户更改执行该操作系统的设备的MAC地址。
防止网络地址盗用的一种理论上的方法可能涉及实现更加智能的网络交换机。不幸的是,对于已经采用了大量缺少这种智能的网络交换机的网络服务提供者而言,这样一种方法可能没什么用。替换如此多的现有网络交换机可能是不经济的。此外,在更加智能的网络交换机出现之前,这种方法始终都是理论上的。
试图防止网络地址盗用的现有方法的另一项缺点是这些方法在响应于检测到这种盗用时所采取的有限动作。典型地,响应于检测到被盗用的网络地址,现有方法除了丢弃未认可的包之外几乎不做什么。因此,没有有效地阻止恶意用户将来的盗用尝试(例如,进行其他ARP攻击)。
基于上述原因,确切地需要一种有效的方法,以利用现有的网络交换机来防止MAC地址和IP地址的盗用。


在附图中以示例而非限制的方式图示了本发明,图中用相同的标号来表示相似的元件,并且其中图1是图示了用于防止网络地址盗用的系统的概况的框图;图2是图示了用于防止网络地址盗用的方法的一种实施方式的高层概况的流程图;图3是图示了用于防止网络地址盗用的方法的一种可替换实施方式的高层概况的流程图;图4A、图4B和图4C是图示了用于更新ARP表和生成通知的过程的一种实施方式的流程图;以及图5是图示了可以在其上实现一种实施方式的计算机系统的框图。
具体实施例方式
描述了一种用于防止网络地址盗用的方法和装置。在以下描述中,出于解释的目的,阐述了很多具体的细节以提供对本发明的完整理解。然而,对本领域的技术人员来说很清楚的是,没有这些具体的细节也可以实现本发明。此外,以框图的形式示出了公知的结构和设备,以免不必要地模糊了本发明。
这里根据以下提纲来描述各种实施方式1.0综述2.0结构和功能概述3.0建立MAC-IP-端口绑定关系的方法3.1防止网络地址盗用的过程3.2生成并发送通知的过程4.0实现机制——硬件概述5.0扩展和替换1.0综述在本发明中实现了在上述“背景技术”中所指出的需要以及对以下描述将会变得清楚的其他需要和目的,本发明在一个方面中包括一种用于防止网络地址盗用的方法。在因特网协议(IP)地址、媒体访问控制(MAC)地址和端口之间建立绑定关系。基于所述绑定关系来更新地址解析协议(ARP)表。
在其他方面中,本发明包括被配置来执行上述步骤的计算机装置、计算机可读介质和载波。
2.0结构和功能概述图1是图示了用于防止网络地址盗用的系统的概况的框图。该系统包括非受信网络110、默认网关120、层2交换机130、计算机140A-140B、ARP表160和网络管理系统(NMS)180。层2交换机130包括动态主机配置协议(DHCP)中继代理135和端口137A-137B。层2交换机130还可以包括ARP表160。NMS 180包括DHCP服务器150和NMS数据库170。
非受信网络110与默认网关120相连。默认网关120直接或间接地通过网络与DHCP服务器150相连。默认网关120还有可能通过网络与层2交换机130相连。计算机140A通过端口137A与层2交换机130相连。计算机140B通过端口137B与层2交换机130相连。计算机140A-140B可以包括任何网络设备,例如路由器、个人计算机、工作站或其他主机。
层2交换机130经由链路132与ARP表160相接口。NMS数据库170还经由虚拟链路166与ARP表160相接口。NMS数据库170还与DHCP服务器150相接口。
计算机140A-140B中的每一个都能够通过DHCP请求获得IP地址。层2交换机130能够在端口137A-137B之一上接收到DHCP请求。层2交换机130还能够转发DHCP请求。DHCP中继代理135能够识别出DHCP请求接收自哪个端口。DHCP服务器150能够接收DHCP请求。DHCP服务器150还能够分配IP地址。
为了解释一个简单的实施例,图1示出了两台计算机以及其他主要元件。然而,在实际的系统中,可能有任意数量的这种计算机和元件。ARP表160是识别通过层2交换机130与网络通信的设备的信息库。对于计算机140A-140B中的每一个,ARP表160都可以包括一个条目(例如,一行)。ARP表160还可以包括默认网关120的条目。每个条目都包括MAC地址以及与该MAC地址相关联的IP地址。可以基于对层2交换机130在广播域内所广播的ARP请求的响应来创建ARP表中的条目。
MAC地址162A可以是计算机140A的网络接口设备(例如网络接口卡)的MAC地址。MAC地址162B可以是计算机140B的网络接口设备的MAC地址。IP地址164A可以是计算机140A的网络接口设备的IP地址。IP地址164B可以是计算机140B的网络接口设备的IP地址。
NMS 180能够从DHCP请求或某种其他源(例如网络清单系统数据库)获得MAC地址、IP地址和端口ID。NMS 180还能够将网络地址和端口之间的绑定关系记录在NMS数据库170中。虽然NMS数据库170被示出为包括在NMS 180中,但是NMS 180能够将绑定关系记录在任何数据库中,包括不是NMS 180一部分的数据库中。另外,NMS 180能够基于NMS数据库170来更新ARP表160。NMS 180能够生成通知。NMS 180还能够指示(例如通过命令消息)层2交换机130和计算机140A-140B执行指定的操作。
NMS数据库170可以包括映射关系171,其中包括针对计算机140A-140B中每一个的条目(例如一个记录)。NMS数据库170的映射关系171还可以包括默认网关120的条目。每个条目可以包括MAC地址、与该MAC地址相关联的IP地址、以及耦合到与所述MAC地址和IP地址相关联的设备的交换机端口的端口标识符(ID)。例如,MAC地址172A可以是计算机140A的网络接口设备的MAC地址。MAC地址172B可以是计算机140B的网络接口设备的MAC地址。IP地址174A可以是计算机140A的网络接口设备的IP地址。IP地址174B可以是计算机140B的网络接口设备的IP地址。端口ID 176A可以是端口137A的标识符。端口ID176B可以是端口137B的标识符。因此,映射关系171中的每个条目都可以包括MAC地址、IP地址和端口ID之间的绑定关系。
从某种角度看,MAC地址和IP地址可以组合起来形成设备在网络内的单个标识符。MAC地址和IP地址每一个也单独标识网络内的设备。
端口及其对应的端口ID也至少与网络交换机相关地标识网络内的设备,该设备通过所述网络交换机与网络进行通信。因为同时只能有不超过一台的设备可以与网络交换机的给定端口物理连接,所以端口ID标识了一台设备与该设备通过其与网络通信的网络交换机之间的唯一关系。当通过端口发送或接收数据包(例如ARP消息)时,它们与某一端口ID相关地被发送或接收。因此,端口ID是通过网络交换机进行通信的设备的独有特征。因为设备和端口之间的连接是物理连接,并且因为所述设备的用户无法控制网络交换机,所以和IP地址或MAC地址不同,端口ID无法通过所述设备来改变。
3.0建立MAC-IP-端口绑定关系的方法图2是图示了用于防止网络地址盗用的方法的一种实施方式的高层概况的流程图。在框210中,在从DHCP请求中获得的IP地址、MAC地址和端口之间建立绑定关系。例如,在一种实施方式中,计算机140A通过发出DHCP请求而获得IP地址。DHCP请求包括计算机140A的网络接口设备的MAC地址172A。层2交换机130在端口137A上接收到所述DHCP请求。DHCP中继代理135使用DHCP Relay“82”将端口137A识别为层2交换机130接收到所述DHCP请求的端口。DHCP中继代理135将用于标识端口137A的端口ID 176A加入所述DHCP请求。层2交换机130将所述DHCP请求转发到DHCP服务器150。响应于该DHCP请求,DHCP服务器150向计算机140A的网络接口设备分配IP地址174A。将DHCP服务器150作为其组成部分的NMS 180从所述DHCP请求中获得MAC地址172A、IP地址174A和端口ID 176A。NMS 180在NMS数据库170中记录MAC地址172A、IP地址174A和端口ID 176A之间的绑定关系。
在框220,基于在框210建立的绑定关系来更新ARP表。例如,NMS180可以基于MAC地址172A、IP地址174A和端口ID 176A之间的绑定关系来更新ARP表160。可以通过由NMS 180向层2交换机130发送包含MAC地址172A和IP地址174A的ARP消息来完成更新。结果,ARP表160中就包括了MAC地址162A和IP地址164A之间的关联,其中MAC地址162A等于MAC地址172A,而IP地址164A等于IP地址174A。ARP表160不需要有能力存储端口ID 176A。因此,层2交换机130不必具有能够存储端口ID 176A的ARP表。因而,很多现有的网络交换机都可以用作层2交换机130。一个实施例是Cisco系统公司生产的Catalyst4000交换机。
图3是图示了用于防止网络地址盗用的方法的一种可替换实施方式的高层概况的流程图。在这个可替换的实施方式中,DHCP中继代理135不需要将端口ID 176A包括在DHCP请求中。NMS 180不需要从DHCP请求中获得MAC地址172A、IP地址174A和端口ID 176A。相反,NMS 180可以从另一个源获得MAC地址172A、IP地址174A和端口ID 176A,下面将会描述。
在框310中,在IP地址、MAC地址和端口之间建立绑定关系。例如,在注册周期内,NMS 180可以从原始的DHCP请求中发现MAC地址172A和174A,同时可以记录用户的邮政地址。通过查询网络清单数据库可以获得端口ID 176A和176B,所述网络清单数据库存储了物理邮政地址和端口ID(即与位于邮政地址处的设备相连的端口的标识符)之间的映射关系。网络清单数据库可以在初始的网络安装期间来填写,并且可以是NMS 180的一个子系统。结果就知道了与新的网络订户相关联的端口ID,并且该端口ID可以和MAC-IP映射关系一起被插入到诸如NMS数据库170的数据库中,所述数据库存储MAC-IP-端口绑定关系。
在框320中,以指定的频率,基于绑定关系来重复地更新ARP表。例如,NMS 180可以基于NMS数据库170中的绑定关系,每分钟就更新一次ARP表160中的每个映射关系。因为NMS 180能够更新ARP表160,所以包括ARP表160的网络交换机无需包括能够查询NMS数据库170的智能。实质上,NMS 180持有权威性的、不可盗用的绑定关系,并且可以周期性地、确信地覆写ARP表160中的MAC-IP地址绑定关系。因此,很多现有的网络交换机都可以用作层2交换机130。在一种实施方式中,所述指定的频率是基于网络流量的大小。例如,NMS 180可以在每次层2交换机130接收到预定数量的ARP消息时更新ARP表160。
以上参考图2和图3所描述的每一种实施方式都包括了用于建立IP地址、MAC地址和端口之间的绑定关系的技术。所描述的每一种实施方式还包括了用于更新ARP表的技术。上面所描述的实施方式可以包括这些技术的某些组合,但是本发明的其他实施方式也可以包括这些技术的其他组合。换言之,对于使用哪种建立绑定关系的技术与所选定的用于更新ARP表的技术结合起来并没有限制;这些技术相互独立。
MAC地址和IP地址之间的绑定关系可以从DHCP请求中获得。为了将这样的绑定关系与特定的端口关联起来,可以用几种方式中的任何一种来发现所述端口。例如,可以通过利用网络交换机中的Option“82”能力来发现端口。就另一个实施例而言,可以从在注册期间内填写的网络清单数据库中发现端口。就又一个实施例而言,用户注册工具(URT)服务器可以向已被配置来与URT服务器通信的网络交换机提供端口信息,所述URT服务器可以从Cisco系统公司获得。
诸如NMS 180的NMS可以在生成IP地址和MAC地址之间新的绑定关系的每一次DHCP事务后(例如,只要诸如计算机140A或计算机140B的计算机被分配了IP地址)就更新诸如ARP表160的ARP表。在各种实施方式中,NMS可以在其他时间或者在发生其他事件时额外地更新ARP表。例如,NMS可以以指定的时间频率(例如每“t”秒),基于包括上述MAC-IP-端口绑定关系的数据库来更新ARP表。就另一个实施例而言,诸如层2交换机130的网络交换机可以主动地与这样一个数据库同步。更具体地说,网络交换机可以以指定的频率与数据库同步。同步的频率可以是一个预定的时间周期(例如每“t”秒)。只要自上一次同步后有指定数量的ARP包流经网络交换机,或者只要网络交换机接收到ARP包,所述网络交换机就可以与数据库进行同步。这里没有穷尽性地列举出可被用来确定数据库和ARP表之间的同步频率的方案。为了实现所选定的方案,可以根据需要将更多或更少的智能包括到网络交换机中。
在上述任何一种实施方式中,除了在框220中完成的更新之外,还可以采用被设计来防止网络地址盗用的附加措施。下面将更加详细地描述这些措施中的一些。
3.1防止网络地址盗用的过程图4A、图4B和图4C是图示了用于更新ARP表以及生成通知的过程的一种实施方式的流程图。为了解释一个实施例,使用了假想地址和端口值。在以下实施例中,假定NMS数据库170包括诸如端口137A-MAC162A-IP 164A和端口137B-MAC 162B-IP 164B的绑定关系,所述NMS数据库170可被包括在NMS 180或层2交换机130中。
在框410中,通过网络交换机的端口X接收到宣称有MAC地址Y和IP地址Z的ARP包。所述ARP包因此宣称以下绑定关系,即端口X-MAC Y-IP Z。端口X被用来盗用具有IP地址Z和/或MAC地址Y的设备的网络地址。例如,层2交换机130可能通过端口137B从计算机140B接收到包括MAC地址162A和IP地址164A的ARP消息,上述两个地址都是被合法分配给计算机140A的,而不是计算机140B的。
如何保护网络地址免遭盗用取决于如上所述的如何更新ARP表。如果NMS以预定的定期来更新ARP表,那么当非法的ARP包到达时,网络交换机就会用虚假的MAC-IP绑定关系来更新ARP表。当NMS下一次与ARP表同步时,NMS检测出非法的绑定关系。基于MAC-IP-端口数据库中的非法绑定关系和合法绑定关系,NMS将能够确定哪一个网络实体正在被攻击,而所述攻击又起源于哪一个网络实体。可以采取适当的动作。可以用来自NMS数据库的合法的ARP条目将虚假的ARP条目替换出去。
如果网络交换机基于预定的定期,主动地将ARP表与MAC-IP-端口数据库同步,那么网络地址可以以同样的方式得到保护。
如果网络交换机针对MAC-IP-端口数据库检查每一个进入的ARP包,并且随后将ARP表与所述数据库同步,那么当ARP包到达时,网络交换机就可以从ARP包内容中获得MAC-IP绑定关系。基于通过其接收到ARP包的端口,网络交换机可以建立ARP包的MAC-IP-端口绑定关系。然后,所述交换机可以针对所述数据库中的关系来检查ARP包的MAC-IP-端口绑定关系。然后,NMS可以确定ARP包的绑定关系是否合法。例如,一个MAC-IP=162A-网关IP的绑定关系将被认定为非法。就另一个实施例而言,即使162A-164A绑定关系根据网络交换机所使用的ARP表是合法的,162A-164A-137B绑定关系也将被认定为非法。如果绑定关系是合法的,那么NMS将允许ARP包继续前进。NMS还可以更新所述数据库,并且指示网络交换机适当地更新ARP表。如果绑定关系是非法的,则NMS将检测正遭受攻击的网络实体。NMS还将检测攻击所源于的网络实体。然后可以采取适当的动作。
在框415中,确定端口X-MAC Y-IP Z绑定关系是否与所指定的数据库中的任一条目匹配,所述数据库例如是NMS数据库170。实质上,端口X-MAC Y-IP Z绑定关系这一组合将与所述数据库中的每种组合(即绑定关系)进行比较。如果发现匹配,则控制前进到框420。如果未发现匹配,则控制前进到框417。
在框417中,确定端口X是不是数据库中的受信端口。例如,可能有一个专用端口(例如端口0)用于网络管理员。这个专用端口是一个受信端口。如果端口X是受信端口,则控制前进到框420。如果端口X不是受信端口,则攻击正源起于端口X,并且控制前进到图4B的框426。
在框420,系统正常进行。
参考图4B,在框426中,确定MAC Y-IP Z是不是数据库中的有效对。如果MAC Y-IP Z是数据库中的有效对,则控制前进到框427。如果MAC Y-IP Z不是数据库中的有效对,则控制前进到框430。
在框427中,断定端口X正在发动攻击,并且与数据库中的MAC Y-IP Z一起包括在一个绑定关系中的端口W正在遭受攻击。控制然后前进到图4C的框445。
在框430中,确定端口X-MAC Y是不是数据库中的有效对。如果端口X-MAC Y是数据库中的有效对,则控制前进到框431。如果端口X-MAC Y不是数据库中的有效对,则控制前进到框435。
在框431中,确定IP Z是不是数据库中的有效条目。如果IP Z是数据库中的有效条目,则控制前进到框432。如果IP Z不是数据库中的有效条目,则控制前进到图4C的框439。
在框432中,断定端口X正在发动攻击,并且与数据库中的IP Z一起包括在一个绑定关系中的端口W正在遭受攻击。控制然后前进到图4C的框445。
在框435中,确定端口X-IP Z是不是数据库中的有效对。如果端口X-IP Z是数据库中的有效对,则控制前进到框436。如果端口X-IP Z不是数据库中的有效对,则控制前进到图4C的框439。
在框436中,确定MAC Y是不是数据库中的有效条目。如果MAC Y是数据库中的有效条目,则控制前进到框437。如果MAC Y不是数据库中的有效条目,则控制前进到图4C的框439。
在框437中,断定端口X正在发动攻击,并且与数据库中的MAC Y一起包括在一个绑定关系中的端口W正在遭受攻击。控制然后前进到图4C的框445。
3.2生成并发送通知的过程参考图4C,在框445中,为端口W生成通知。例如,所述通知可以警告用户他的网络地址已被另一台设备使用。在框450中,所述通知被发送到端口W。
在框439中,断定端口X正在发动攻击。在框455中,向端口X生成警告。例如,如果用户正在盗用网络地址,那么所述警告可以警告用户他的活动正在被监视,并且那些活动将被限制。警告的细节可以被定制。从某种角度看,警告本身就是一个通知。在框460中,警告被发送到端口X。
就另外一个实施例而言,通知可以提醒网络系统管理员(例如,在NMS 180中具有管理员权限的用户)有关正在被盗用的网络地址和端口、以及有关通过其网络地址正在被盗用的端口(即端口X)。网络管理员可以提示用户获得新的IP地址。网络管理员还可以禁用端口X。在这些实施例的任何一个中,NMS 180都可以生成通知。所述通知可以呈现在计算机显示器上。所述通知可被记日志在计算机文件中。
在一种实施方式中,到端口X的通信被中断。例如,NMS 180可以指示(例如通过命令消息)层2交换机130停止在端口137B上发送或接收包。因而,盗用与合法设备相关联的IP地址和MAC地址的恶意用户被阻止在与他的设备相连的端口上发送或接收包,即使ARP表160中包括被盗用的IP和MAC地址之间的关联。一旦NMS 180确定某一端口正在被滥用,那么到该端口的通信就可以被自动中断。这种自动中断可以在发出了预定数量的警告之后执行。已被告知了这种滥用状况的网络系统管理员可以相应地指示NMS 180中断到被滥用的端口的通信。
在一种实施方式中,向与包括在包括IP地址Z(已被盗用)的绑定关系中的端口相连的设备分配一个与IP地址Z不同的IP地址。换言之,向NMS数据库170中与被盗用的IP地址合法关联的计算机分配一个新的不同IP地址。例如,NMS 180(包括DHCP服务器150)可以指示计算机140A(例如通过命令消息)改变它的IP地址。这一改变也被反映在NMS数据库170内对应的绑定关系中。只要NMS 180检测到被盗用的网络地址,所述改变就可以自动发生。网络系统管理员可以响应于被告知网络地址已被盗用,而引发所述改变。因此,与被盗用的网络地址相关的潜在上非法的网络活动此后将不会被错误地归咎于前者,即该网络地址的合法用户。此外,由网络服务提供者保存的法律上必需的记录将准确地代表网络地址和这些网络地址的用户之间的关联。
4.0实现机制——硬件概述图5是图示了可以在其上实现一种实施方式的计算机系统500的框图。计算机系统500包括用于传送信息的总线502或其他通信机制、以及与总线502相耦合用于处理信息的处理器504。计算机系统500还包括主存储器506,例如随机访问存储器(“RAM”)或其他动态存储器件,其耦合到总线502用于存储将由处理器504执行的指令和信息。主存储器506还可以用来在将由处理器504执行的指令的执行期间存储临时变量或其他中间信息。计算机系统500还包括只读存储器(“ROM”)508或其他静态存储器件,其耦合到总线502用于存储处理器504的静态信息和指令。还提供了诸如磁盘或光盘的存储设备510,其耦合到总线502用于存储信息和指令。
计算机系统500可以经由总线502耦合到诸如阴极射线管(“CRT”)的显示器512,该显示器512用于向计算机用户显示信息。包括数字字母键和其他键在内的输入设备514被耦合到总线502,用于向处理器504传送信息和命令选择。另一种类型的用户输入设备是光标控制设备516,例如用于向处理器504传送方向信息和命令选择并且用于控制显示器512上的光标移动的鼠标、跟踪球、输入笔或者光标方向键。这种输入设备一般具有两个轴上的二维自由度,即第一轴(例如x)和第二轴(例如y),其允许设备指定一个平面内的位置。
本发明与计算机系统500用于防止网络地址盗用的用途有关。根据本发明的一种实施方式,响应于处理器504执行一个或多个由包含在主存储器506中的一条或多条指令组成的序列,由计算机系统500提供了网络地址盗用防止功能。这些指令可以从另一个计算机可读介质(例如存储设备510)被读入主存储器506中。包含在主存储器506中的指令序列的执行使得处理器504完成这里所描述的过程步骤。在可替换的实施方式中,可以使用硬连线电路来取代用以实现本发明的软件指令或者与这些软件指令组合起来。因此,本发明的实施方式不限于硬件电路和软件的任何特定组合。
使用在这里的术语“计算机可读介质”是指参与向处理器504提供指令用以执行的任何介质。这样的介质可以具有多种形式,包括但不限于非易失性介质、易失性介质和传输介质。非易失性介质例如包括光盘或磁盘,例如存储设备510。易失性介质包括动态存储器,例如主存储器506。传输介质包括同轴电缆、铜线和光纤,包括组成总线502的线。传输介质还可以采用声波或光波的形式,例如在无线电波和红外线数据通信中所生成的那些波。
计算机可读介质的常见形式例如包括软盘、软性磁碟、硬盘、磁带、或者任何其他磁介质、CD-ROM、任何其他光介质、穿孔卡片、纸带、任何其他具有孔模式的物理介质、RAM、PROM、以及EPROM、FLASH-EPROM、任何其他存储芯片或卡带、下面将描述的载波、或者任何其他计算机可以从中读取的介质。
各种形式的计算机可读介质都可以用来向处理器504运送含有一条或多条指令的一个或多个序列以供执行。例如,一开始可以在远程计算机的磁盘上携带指令。远程计算机可以将所述指令载入其动态存储器,并且使用调制解调器通过电话线发送所述指令。位于计算机系统500本地的调制解调器可以接收到电话线上的数据,并使用红外线发射器将所述数据转换成红外线信号。红外线检测器可以接收在红外线信号中携带的数据,并且适当的电路可以将所述数据放置到总线502上。总线502将所述数据运送到主存储器506,处理器504从主存储器506中取得并执行指令。主存储器506所接收的指令在被处理器504执行之前或之后,可选地可被存储在存储设备510中。
计算机系统500还包括耦合到总线502的通信接口518。通信接口518提供了耦合到与本地网络522相连的网络链路520的双向数据通信。例如,通信接口518可以是集成业务数字网络(“ISDN”)卡或调制解调器,用于提供到对应类型的电话线的数据通信连接。作为另一个实施例,通信接口518可以是局域网(“LAN”)卡,用于提供到兼容LAN的数据通信连接。也可以采用无线链路。在任何这样的实施方案中,通信接口518发送并接收传送代表各类信息的数字数据流的电磁信号或光信号。
网络链路520一般提供穿过一个或多个网络到达其他数据设备的数据通信。例如,网络链路520可以提供穿过本地网络522到达主机计算机524或者到达由因特网服务提供商(“ISP”)526运行的数据设备的连接。ISP 526反过来又通过现在通常被称为“因特网”528的全球范围包数据通信网络而提供数据通信业务。本地网络522和因特网528都使用传送数字数据流的电信号、电磁信号或光信号。穿过各种网络的信号以及在网络链路520上并穿过通信接口518的信号都向计算机系统500传送数字数据,并从计算机系统500向外传送数字数据,这些信号都是传输信息的载波的示例性形式。
计算机系统500可以通过网络、网络链路520和通信接口518发送消息并接收数据,包括程序代码在内。在因特网的实施例中,服务器530可以通过因特网528、ISP 526、本地网络522和通信接口518发送所请求的应用程序代码。根据本发明,一种这样的下载应用提供了这里所描述的防止网络地址的盗用。
所接收的代码可以在被接收时由处理器504来执行,和/或被存储在存储设备510或其他非易失性存储设备中以供后面执行。按照这种方式,计算机系统500可以获得载波形式的应用代码。
5.0扩展和替换在以上说明书中,参考其中的具体实施方式
描述了本发明。然而很明显的是,在不偏离本发明更宽的精神和范围的情况下可以对其做出多种修改和改变。因此,说明书和附图应被视为示例性的而非限制性的。
权利要求
1.一种防止网络地址盗用的方法,所述方法包括计算机实施的以下步骤建立因特网协议地址、媒体访问控制地址和端口之间的绑定关系,所述因特网协议被称为IP,所述媒体访问控制被称为MAC;以及基于所述绑定关系来更新地址解析协议表,所述地址解析协议被称为ARP。
2.如权利要求1所述的方法,还包括计算机实施的以下步骤比较第一组合和一个或多个第二组合;其中所述第一组合包括由ARP消息标识的第一IP地址、由所述ARP消息标识的第一MAC地址以及通过其接收到所述ARP消息的第一端口的标识符;并且其中,所述第二组合中至少有一个包括IP地址、MAC地址和端口的标识符。
3.如权利要求2所述的方法,其中响应于来自存储所述ARP表的设备的查询而完成所述比较步骤。
4.如权利要求2所述的方法,还包括计算机实施的以下步骤一旦确定所述第一组合不同于所述第二组合中的每一个,就生成通知。
5.如权利要求4所述的方法,还包括计算机实施的以下步骤向所述第一端口发送警告。
6.如权利要求4所述的方法,还包括计算机实施的以下步骤将所述通知发送到被包括在包括所述第一IP地址的绑定关系中的端口。
7.如权利要求2所述的方法,还包括计算机实施的以下步骤一旦确定所述第一组合不同于所述第二组合中的任何一个,就中断来自所述第一端口的通信。
8.如权利要求2所述的方法,还包括计算机实施的以下步骤一旦确定所述第一组合不同于所述第二组合中的任何一个,就向下述设备分配不同于所述第一IP地址的第二IP地址,所述设备与被包括在包括所述第一IP地址的绑定关系中的端口相连。
9.如权利要求1所述的方法,其中以指定的频率重复所述更新。
10.如权利要求9所述的方法,其中所述频率是基于网络流量的大小。
11.如权利要求1所述的方法,其中响应于接收到ARP包而进行更新。
12.如权利要求1所述的方法,其中所述端口是从动态主机配置协议请求中获得的,所述动态主机配置协议被称为DHCP。
13.一种防止网络地址盗用的方法,所述方法包括计算机实施的以下步骤建立第一标识符和第二标识符之间的关联,其中所述第一标识符用于标识网络中的第一设备,并且其中所述第二标识符用于标识所述第一设备和第二设备之间的唯一关系,其中所述第一设备通过所述第二设备与所述网络通信;以及基于所述关联,将所述第一标识符包括到信息库中,所述信息库用于标识被允许通过所述第二设备进行通信的设备。
14.如权利要求13所述的方法,还包括计算机实施的以下步骤比较第一组合和一个或多个第二组合;其中所述第一组合包括第三标识符和第四标识符;其中所述第三标识符用于标识第三设备和第四设备之间的唯一关系,所述第三设备通过所述第四设备与所述网络进行通信;其中所述第四标识符用于标识所述网络内的所述第三设备;并且其中所述第四标识符与所述第三标识符相关地被接收到;并且其中,所述第二组合中至少有一个包括所述第四标识符的至少一部分;和用于标识第五设备和第六设备之间的唯一关系的标识符,其中所述第五设备通过所述第六设备与所述网络进行通信。
15.一种防止网络地址盗用的方法,所述方法包括计算机实施的以下步骤建立第一标识符、第二标识符和第三标识符之间的关联,其中所述第一标识符和所述第二标识符用于标识网络中的第一设备,并且其中所述第三标识符用于标识所述第一设备独有的特征,其中所述特征无法通过所述第一设备来更改;以及基于所述关联,替换所述第一标识符和不是所述第二标识符的一个标识符之间的关联。
16.如权利要求15所述的方法,还包括计算机实施的以下步骤比较第一组合和一个或多个第二组合;其中所述第一组合包括第四标识符、第五标识符和第六标识符;其中所述第四标识符用于标识第二设备独有的第一特征;其中所述第五和第六标识符用于标识网络内的所述第二设备;其中所述第五和第六标识符与所述第四标识符相关地被接收到;并且其中所述第一特征无法通过所述第二设备来更改;并且其中,所述第二组合中至少有一个包括所述第五标识符以及用于标识第三设备独有的第二特征的标识符。
17.一种携带用于防止网络地址盗用的一个或多个指令序列的计算机可读介质,其中的指令在被一个或多个处理器执行时使得所述一个或多个处理器实现以下步骤建立因特网协议地址、媒体访问控制地址和端口之间的绑定关系;以及基于所述绑定关系来更新地址解析协议表。
18.一种用于防止网络地址盗用的装置,包括用于建立因特网协议地址、媒体访问控制地址和端口之间的绑定关系的装置;以及基于所述绑定关系来更新地址解析协议表的装置。
19.一种用于防止网络地址盗用的装置,包括耦合到数据网络用以从中接收一个或多个包流的网络接口;处理器;和一个或多个存储的指令序列,所述指令在被所述处理器执行时使得所述处理器实现以下步骤建立因特网协议地址、媒体访问控制地址和端口之间的绑定关系;以及基于所述绑定关系来更新地址解析协议表。
20.一种防止网络地址盗用的方法,所述方法包括计算机实施的以下步骤基于接收到动态主机配置协议请求中的因特网协议地址值、媒体访问控制地址值和端口值,在管理包网络交换机的网络管理系统中建立所述因特网协议地址值、所述媒体访问控制地址值和所述端口值之间的绑定关系;以及基于所述绑定关系,更新所述包网络交换机的地址解析协议表。
全文摘要
公开了一种用于防止网络地址盗用的方法。在因特网协议(IP)地址、媒体访问控制(MAC)地址和端口之间建立绑定关系。基于所述绑定关系来更新地址解析协议(ARP)表。
文档编号H04L29/06GK1682516SQ03821950
公开日2005年10月12日 申请日期2003年9月16日 优先权日2002年9月16日
发明者阿马尔·拉耶斯, 迈克尔·张 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1