路由器检测的制作方法

文档序号:7940654阅读:218来源:国知局
专利名称:路由器检测的制作方法
技术领域
本发明总地涉及一种改进的数据处理系统,更具体地涉及一种用于在网络中发现 未授权路由器的计算机实现的方法、数据处理系统、以及计算机程序产品。
背景技术
分布式网络数据处理系统在商务及家庭中正变得越来越普遍。通常,网络数据处理系统包含一网络,其具有用于提供在该网络内连接的各种装置与计算机之间的通信链路 的媒体。该媒体包括电缆,用于提供与其它装置(例如在该网络上的不同装置之间提供数 据路由的路由器)的通信链路。一种用于在网络内传送数据的协议为传输控制协议/互 联网协议(TCP/IP)。此协议用于互联网上,也可以实施在其它网络上,例如内联网、局域网 (LAN)或广域网(WAN)。TCP提供传输功能,以确保所发送的全部字节在另一端处被正确地 接收。IP用于从TCP接受分组,并加入一标题(header)来递送该分组到数据链路层协议。 IP地址由网络中的每一个客户端及服务器使用以便在不同系统之间发送数据。路由器是用于确定数据在不同网络(即独立的逻辑子网络)之间行进的适当路径 的装置。路由器沿着此路径转发数据分组到下一装置。路由器可创建或维护可用路由以及 它们的状况的表格,并使用此信息来对于给定分组确定最佳路由。在安全性的世界中,在一个机构的网络中的未授权路由器被称为不良路由器 (rogue router) 0这些未授权的路由器未被监控,在该路由器的子网络上的机器也未被监 控。各机构不希望未授权的路由器在它们的网络上运行,因为有很多与这些路由器相关联 的安全性的考虑。在该网络中的客户端装置可能会成为不良路由器,即使用户并无恶意。例 如,如果用户连接膝上型计算机到该客户端装置,并使用调制解调器经由互联网存取电子 邮件,该调制解调器即成为未授权路由器。如果用户的该膝上型计算机上的操作系统包括 路由器功能并且该功能被使能,则该膝上型计算机甚至可作为路由器。此场景产生安全性 问题,因为该用户的膝上型计算机包含比授权路由器更脆弱的防火墙。因此,网络安全管理 员期望能够检测未授权路由器并停止它们的操作。当一个分组从一台计算机被发送到另一台计算机时,其会穿过零个或更多个路 由器。分组穿过的路由器的顺序被称为其路由或路径。穿过一个路由器被称为一个跳跃 (hop)。在现有技术中,可以使用跟踪路由工具(traceroute utility)来通过记录通过源机 器与指定、的地机器之间的分布式网络的路由来检测网络上的路由器。如果该目的地机器 是激活的,并且在该源机器中的监视工具正在查验(Ping)该目的地机器的IP地址,则能够 检测该源机器与该目的地机器之间的路由器。该跟踪路由命令通过发送一系列的分组(使 用互联网控制消息协议或ICMP(Internet Control Message Protocol))到该目标目的地 机器来操作。第一分组利用受限的存活时间(TTL,“Time-T0-Live")值来构建,该值设计 成要被接收第一跳跃的分组的第一路由器超过。例如,第一分组中的TTL值为1。当第一路 由器遇到具有TTL值为1的分组时,第一路由器则必须将ICMP超时(ICMP Time Exceeded) 消息(类型U)发送回发送源机器。该发送源机器也发送包含第二跳跃的TTL值为2、然后是第三跳跃的TTL值为3等等的其它分组。因此,该路径中的每个路由器将在该传送源机 器与该目的地机器之间利用类型11的分组来响应。当该最后目的地机器响应于一分组时, 该过程即停止。尽管该跟踪路由工具可用于检测网络中的路由器,跟踪路由工具的问题是如果 该进行路由的子网络是未知的或如果该路由器的子网络上的机器为静音或关机时,网络管 理员不能够发现机器是否正在进行路由。因此,现有技术中的工具(例如跟踪路由)仅允 许在源机器知道子网络的IP地址或该子网络中的机器的IP地址的情况下发现机器是否为 路由器。

发明内容
例示的实施例提供一种用于发现网络中的未授权路由器的计算机实现的方法、数 据处理系统,以及计算机程序产品。例示的实施例中的方法首先获取可疑路由器或目的地 装置的物理地址。创建一数据分组,其至少包含目的地媒体访问控制字段、目的地互联网 协议字段、以及存活时间(time-to-live)字段,其中该目的地媒体访问控制字段包含该目 的地装置的物理地址,其中该目的地互联网协议字段包含一假冒(bogus)的互联网协议地 址,并且其中该存活时间字段包含一个指示该数据分组已经超过时间限制的值。使用该目 的地媒体访问控制字段中的物理地址将该数据分组发送到目的地装置。如果从该目的地装 置接收到超时消息,该目的地装置被确定为被使能来进行路由。


现在将仅以示例的方式参考附图描述本发明的优选实施例,其中图1为可实现例示的实施例的分布式数据处理系统的示意图;图2为可实现例示的实施例的数据处理系统的框图;图3为根据本发明优选实施例描述的数据处理系统的典型软件架构;图4为根据本发明优选实施例的传输控制协议/互联网协议(TCP/IP)及类似协 议的示意图;图5为根据例示的实施例用于发现未授权路由器的不良路由器搜寻器(hunter) 系统的框图;图6为根据例示的实施例由不良路由器搜寻器创建的分组;以及图7为根据例示的实施例用于发现未授权路由器的方法的流程图。
具体实施例方式现在参照附图,特别是图1至图2,提供了可实现例示性实施例的数据处理环境的 示意图。应该理解,图1至图2仅是示例性的,其并非要施加或暗示关于可以实现不同实施 例的环境的任何限制。对于所示的环境可进行许多修改。图1为可实现例示性实施例的数据处理系统的网络的示意图。网络数据处理系统 100为计算机的网络,其中可以实现例示的实施例。网络数据处理系统100包含网络102, 该网络102为用于提供在网络数据处理系统100内连接在一起的各种装置和计算机之间的 通信链路的媒体。网络102可包括诸如有线、无线通信链路或光纤缆线的连接。
在所示的例子中,服务器104与服务器106连同存储单元108连接至网络102。此 夕卜,客户端110、112及114连接至网络102。客户端110、112及114可例如为个人计算机 或网络计算机。在所示的例子中,服务器104向客户端110、112及114提供数据,例如引导 文件、操作系统映像以及应用程序。在此例中,客户端110、112及114为服务器104的客户 端。网络数据处理系统100可包括未示出的额外的服务器、客户端及其它装置。在所示的例子中,网络数据处理系统100为具有网络102的互联网,该网络102代表使用传输控制协议/互联网协议(TCP/IP)的协议组来彼此通信的网络和网关的全世界 范围的集合。互联网的核心为由对数据及消息进行路由的数千个商务、政府、教育及其它计 算机系统构成的主节点或主计算机之间的高速数据通信线的骨干。当然,网络数据处理系 统100也可实现为一些不同类型的网络,例如内联网、局域网络(LAN)或广域网络(WAN)。 图1仅为例子,而不是对于不同例示性实施例的体系结构限制。现在参照图2,示出了可实现例示性实施例的数据处理系统的框图。数据处 理系统200为计算机(例如图1中的服务器104或客户端110)的例子,其中可以针对 例示性实施例放置实施该方法的计算机可用程序代码或指令。在此例示性例子中,数 据处理系统200包括通信构造202,其提供处理器单元204、存储器206、持续存储装置 (persistentstorage)208、通信单元210、输入/输出(I/O)单元212及显示器214之间的 通{曰。处理器单元204用于执行可载入到存储器206的软件的指令。取决于特定的实现 方式,处理器单元204可为一个或多个处理器的组合,或可以为多处理器核。另外,处理器 单元204可使用一个或多个异质处理器系统来实现,其中在单个芯片上具有主处理器及多 个次级处理器。在另一例示性例子中,处理器单元204可为对称性多处理器系统,其中包含 相同类型的多个处理器。在这些例子中,存储器206可为例如随机存取存储器。持续性存储装置208根据 特定实现方式可采用多种形式。例如,持续性存储装置208可包含一或多个组成部分或装 置。例如,持续性存储装置208可为硬盘驱动器、快闪存储器、可覆写光盘、可覆写磁带或以 上的某种组合。由持续性存储装置208使用的媒体也可以是可移除的。例如,可移除式硬 盘驱动器可用于持续性存储装置208。在这些例子中,通信单元210提供与其它数据处理系统或装置的通信。在这些例 子中,通信单元210为一网络接口卡。通信单元210通过使用物理和无线通信链路或这两 者来提供通信。输入/输出单元212允许针对其它装置进行数据的输入及输出,所述其它装置可 以连接至数据处理系统200。例如,输入/输出单元212可提供经由键盘及鼠标的用户输入 的连接。另外,输入/输出单元212可将输出发送到打印机。显示器214提供一种机制来 向用户显示信息。用于操作系统及应用的指令或者程序可位于持续性存储装置208上。这些指令可 载入到存储器206中来由处理器单元204执行。不同实施例的处理可由处理器单元204使 用计算机实施的指令来执行,这些指令可位于存储器(例如存储器206)中。这些指令被称 为程序代码、计算机可用程序代码,或计算机可读程序代码,其可由处理器单元204中的处 理器读取及执行。不同实施例中的程序代码可以实施在不同的物理或有形的计算机可读媒体、例如存储器206或持续性存储装置208上。程序代码216以函数形式位于计算机可读媒体218上,并可载入到或传送到数据 处理系统200来由处理器单元204执行。程序代码216及计算机可读媒体218在这些例子 中形成计算机程序产品220。在一个例子中,计算机可读媒体218可为有形的形式,例如光 盘或磁盘,其被插入或置于作为持续性存储装置208的一部分的驱动器或其它装置中,以 便传送到存储装置、例如作为持续性存储装置208的一部分的硬盘驱动器上。在有形的形 式中,计算机可读媒体218也可采用持续性存储装置的形式,例如连接至数据处理系统200 的硬盘驱动器或快闪存储器。或者,程序代码216可经由到通信单元210的通信链路和/或经由到输入/输出单 元212的连接从计算机可读媒体218传送到数据处理系统200。该通信链路和/或该连接 在该例示性例子中可为物理的或无线的。该计算机可读媒体也可采取非有形媒体的形式, 例如包含程序代码的通信链路或无线传输。对数据处理系统200所例示的不同组成部分并非要对可以实施不同实施例的方 式提供架构性限制。不同的例示性实施例可实现在包括除了对数据处理系统200所例示的 那些组成部分之外或取代它们的组成部分的数据处理系统中。图2所示的其它组成部分可 以不同于所示的例示性例子。例如,总线系统可用于实施通信构造202,并可包含一或多个总线,例如系统总线 或输入/输出总线。当然,该总线系统可使用任何适当类型的架构来实施,其可提供附加至 该总线系统的不同组成部分或装置之间的数据传输。此外,通信单元可包括一或多个装置 来传送及接收数据,例如调制解调器或网络适配器。另外,存储器例如可以是存储器206或 高速缓存,它们例如可在存在于通信构造202中的接口及存储器控制器中心中找到。现在参照图3,根据例示的实施例来描述数据处理系统的典型软件架构。此架构可 实现在数据处理系统、例如图2的数据处理系统200中。在软件架构300中的最低层处,操 作系统302被用来提供高层功能给用户及其它软件。这种操作系统通常包括基本输入输出 系统(BIOS)。通信软件304通过直接调用操作系统功能或间接地绕过该操作系统来在该网 络上访问用于通信的硬件来经由物理通信链路通过到诸如互联网的网络的外部端口提供
通{曰。应用编程接口(API)306允许该系统的用户、个人、或软件例程使用一符合标准的 接口来调用系统功能,而不用考虑如何实施该特定功能。网络接入软件308代表可用于允 许该系统接入网络的任何软件。此接入可以是对诸如局域网(LAN)、广域网(WAN)或互联网 之类的网络的接入。对于互联网,此软件可包括例如Web浏览器之类的程序。应用软件310 代表任何数目的软件应用程序,其被设计成响应于经由该通信端口的数据来提供用户所寻 求的功能。例示的实施例的机制在这些例子中可实现在通信软件304内。图4为根据例示的实施例的传输控制协议/互联网协议(TCP/IP)及类似协议。TCP/IP及类似协议由通信架构400利用。在此例中,通信架构400为四层系统。此架构包 括应用层402、传输层404、网络层406及链路层408。每层负责处理各种通信任务。链路 层408也称为数据链路层或网络接口层,并且通常包括该操作系统中的装置驱动程序及该 计算机中的对应网络接口。此层处理与所使用的网络媒体进行物理接口的所有硬件细节, 例如光纤缆线或以太网缆线。
网络层406也被称为互联网层,并处理数据分组在该网络中的移动。例如,网络 层406处理在该网络上传输的各种数据分组的路由。TCP/IP组合中的网络层406由几种 协议组成,包括互联网协议(IP)、互联网控制消息协议(ICMP)、以及互联网群组管理协议 (IGMP)。接着,传输层404提供网络层406与应用层402之间的接口,其可帮助两个主机计 算机之间的数据传输。传输层404所处理的事情例如是将从应用层传送给它的数据划分成 适当大小的片段以用于下面的网络层,确认接收到的分组,以及设定暂停来确定另一端确 认发送的分组。在TCP/IP协议组合中,存在两种完全不同的传输协议,TCP及用户数据报 协议(UDP/‘User datagram protocol" )。TCP提供可靠性服务来确保数据在两个主机之 间适当地传送,其包括丢失检测及重传服务。相反地,UDP向应用层提供更为简单的服务,这是通过仅从一个主机向另一个主机 发送称为数据报的数据分组,而并不提供任何用来保证该数据被适当地传送的机制。当使 用UDP时,应用层必须执行可靠性功能。应用层402处理特定应用的细节。对于几乎每一种实现方式,存在许多常见的 TCP/IP应用,包括用于远端登录的Telnet、文件传输协议(FTP)、用于电子邮件的简单邮件 传输协议(SMTP),及简单网络管理协议(SNMP)。例示的实施例的机制可实现为网络层406 内的处理。例示的实施例提供不良路由器搜寻器系统,其通过发现该网络中的未授权路由器 来检测潜在的安全性问题。未授权路由器是这样一种机器,其中该机器上的路由功能有意 或无意地被使能而未被网络安全管理员授权。相对于现有的路由器检测方法(例如跟踪路 由工具),例示的实施例中的不良路由器搜寻器系统允许网络安全管理员在该机器正在路 由的子网络的IP地址为未知时以及在该子网络上的机器的IP地址为未知时确定机器是否 为未授权的路由器。即使在确定时该子网络上的机器并未开启或在线,也可做出此确定。图5为根据例示的实施例用于发现未授权路由器的不良路由器搜寻器系统的框 图。在此例中,该未授权路由装置采取可疑子网络路由器502的形式。可疑子网络路由器 502可以是具有被有意或无意地使能的路由功能的机器。可疑子网络路由器(SR,“SUbnet router" ) 502包含网络接口卡(NIC,“Network interface card"),以便访问以太网。可 疑子网络路由器502中的网络接口卡使用媒体访问控制(MAC)地址访问该以太网。MAC地 址为硬件地址,其唯一地识别网络的每一节点。例如,每个网络接口卡具有一个不同的MAC 地址。可疑子网络路由器502的MAC地址在制造阶段被分配给该网络接口卡。网络504为提供各种装置与计算机之间的通信链路的分布式网络的例子,例如图 1的网络102。可疑子网络路由器502被实施成对网络504中的流量进行路由。可疑子网 络路由器502可以将网络504上的数据分组转发到子网络506。在此例中,子网络506包含 多个机器,例如Sl 508到Sll 510。尽管传统系统采用跟踪路由工具来通过基于路由器的已知IP地址发送一分组 到该路由器来确定该路由器是否为停机或失效,不良路由器搜寻器(RRH,“Rogue router hunter")主机512包含一程序,该程序以独特的方式使用跟踪路由工具来确定像可疑子 网络路由器502这样的装置是否被配置成路由器。即使该不良路由器搜寻器程序并不知道 该可疑路由器的子网络的IP地址或该子网络上的机器的IP地址,也可做出此确定。不良路由器搜寻器主机512包含具有MAC地址的网络接口卡来访问网络504。不良路由器搜寻器主机512可经由网络504与可疑子网络路由器502通信,因为不良路由器搜寻器主机512 知道可疑子网络路由器502的以太网地址(MAC地址)。不良路由器搜寻器512可以通过 使用识别目标装置是否在该网络上的查验工具(Ping utility),或在仅知道目标的IP地 址时使用地址解析协议来确定目标的硬件地址来获取可疑子网络路由器502的MAC地址。 不良路由器搜寻器512需要获取可疑子网络路由器502的MAC地址,因为子网络路由器将 不会侦听或处理分组,除非该分组在该分组的目的地地址中包含该子网络路由器的MAC地 址。该查验工具通过向目标装置发送ICMP请求分组来操作,并侦听应答。该应答分组可包 含源MAC地址,目的地或目标MAC地址,源IP地址,以及目的地IP地址。因此,不良路由器 搜寻器主机512中的程序创建数据分组,该数据分组包括源MAC地址(其包含不良路由器 搜寻器主机512的MAC地址),以及目的地MAC地址(其包含可疑子网络路由器502的MAC 地址)。此数据分组在该分组的目的地IP地址字段中也包括可疑子网络路由器502的假冒 的IP地址。该不良路由器搜寻器也将设定该分组的存活时间值为1。然后不良路由器搜寻 器主机512发送该数据分组到可疑子网络路由器502,并且可疑子网络路由器502接收该分 组,因为该分组中的目的地MAC地址与可疑子网络路由器502中的网络接口卡的MAC地址 相匹配。可疑子网络路由器502检查分组标题,并确定目的地IP分组是否被寻址到可疑子 网络路由器502。如果该分组中的目的地IP分组与可疑子网络路由器502的IP地址不匹 配,可疑子网络路由器502将丢弃该分组。因此,如果该子网络路由器并未配置来进行路 由,该子网络路由器检查目的地IP地址,确定该目的IP地址并非该子网络路由器的IP地 址,并丢弃该分组。但是,如果可疑子网络路由器502使能其路由器功能,可疑子网络路由 器502将不会丢弃该分组。在这种路由器被使能的状况下,可疑子网络路由器502最终将 比较该分组中的目的地IP地址与路由表中的IP地址来确定该分组的最佳路由。该子网络 路由器确定,虽然该目的地IP地址并非子网络路由器的IP地址,但因为该子网络路由器被 配置来进行路由,该子网络路由器必须向前发送该分组。但是,在可疑子网络路由器502执 行该比较之前,可疑子网络路由器502检查存活时间(TTL)字段。TTL字段为跳跃限制,其 用于表明对于在一个分组应该被丢弃之前该分组可经历的迭代次数的限制。如果该TTL字 段小于或等于1,可疑子网络路由器502根据ICMP协议向该分组中的源IP地址或不良路由 器搜寻器主机512返回一个超时(类型11)分组。因此,该子网络路由器确定其不能够路 由该分组,因为TTL值过低,并且该子网络路由器向分组发送方通知此问题。如果不良路由 器搜寻器主机512接收到这种ICMP超时消息,该不良路由器搜寻器知道可疑子网络路由器 502已使能其路由功能。不良路由器搜寻器主机512可以向网络安全管理员警告该未授权 路由器。在一特定例子中,利用高级交互执行体(AIX )操作系统的可疑子网络路由器502 接收并检查来自不良路由器搜寻器主机512的分组。如果该分组中的目的地IP地址不匹 配可疑子网络路由器502的IP地址,并且可疑子网络路由器502已使能路由,该分组在被 传送到路由表之前被传送到ip_mforWard()函数。此ipjnforward()函数在该分组中的 TTL期满(即TTL彡1)时将返回0,使得可疑子网络路由器502利用ICMP超时(类型11) 消息进行响应。如果不良路由器搜寻器主机512从可疑子网络路由器502接收到这种ICMP超时消息时,则不良路由器搜寻器主机512知道可疑子网络路由器502被使能来进行路由。 图6为根据例示的实施例由不良路由器搜寻器创建的分组。分组600可以从不良 路由器搜寻器512发送,以确定例如图5中可疑子网络路由器502的机器是否正在进行路 由。分组600包括多个字段,包括源MAC地址602、目的地MAC地址604、源IP地址606、目 的地IP地址608及TTL字段610。源MAC地址602是发送该分组的装置或图5的不良路由器搜寻器主机512的MAC 地址。目的地MAC地址604为接收该分组的装置或图5的可疑子网络路由器502的MAC 地址。如前所述,在该子网络上的可疑路由机器的IP地址未知的情况下,包含源IP地址及 目的地IP地址的常规分组不能用于确定该可疑机器是否正在进行路由。不良路由器搜寻 器通过创建分组600来解决此问题,该分组600允许该不良路由器搜寻器使用一个特定可 疑路由器的MAC地址(该地址为该不良路由器搜寻器所知)将该分组发送到该可疑路由 器。因此,当该不良路由器搜寻器发送分组600到该可疑路由器时,该可疑路由器接收该分 组,因为在该分组中的目的地MAC地址匹配该可疑路由器的网络接口卡的MAC地址。源IP地址606为发送该分组的装置或该不良路由器搜寻器的IP地址。如果可疑 路由器正在进行路由,源IP地址606被该可疑路由器使用以向该不良路由器搜寻器返回 ICMP超时消息。目的地IP地址608为假冒的IP地址。在分组600中并未使用正确的目的地IP 地址,因为不良路由器搜寻器并不知道可疑路由器或子网络机器的任何IP地址。假冒的IP 地址放置在目的地IP地址608中来允许该可疑路由器以正常方式处理分组600,并允许该 不良路由器搜寻器发现该可疑路由器是否正在进行路由,因为目的地IP地址608中的假冒 的IP地址将不匹配该可疑路由器的IP地址,因此如果路由被使能时,该可疑路由器将尝试 路由该分组。TTL字段610为指明被分配给分组600的存活时间值的值。当该不良路由器搜寻 器创建分组600时,该不良路由器搜寻器分配值“1”到TTL字段610,因为在该不良路由器 搜寻器与该可疑路由器之间仅需要一个跳跃。TTL字段610中的值1使得当该可疑路由器 接收到分组600时,该可疑路由器向该不良路由器搜寻器发送回一个ICMP超时消息。图7为根据例示的实施例用于发现未授权路由器的方法的流程图。该方法开始于 不良路由器搜寻器程序创建根据图6的分组600的数据分组,该分组包含不良路由器搜寻 器的源MAC地址,可疑路由器的目的地MAC地址,该不良路由器搜寻器的源IP地址,假冒的 目的地IP地址,以及具有值1的TTL字段(步骤702)。该不良路由器搜寻器发送该分组到 该可疑路由器(步骤704)。该可疑路由器接收该分组(步骤706),因为该分组中的目的地 MAC地址与可疑路由器的网络接口卡的MAC地址相匹配。然后该可疑路由器检查该分组中的目的地IP地址(假冒的IP地址),以确定该 分组是否旨在用于该可疑路由器(步骤708)。因为该分组中的目的地IP地址为假冒的地 址,该分组中的目的地IP地址将不匹配该可疑路由器的IP地址。因此该可疑路由器将确 定该分组并非旨在用于该可疑路由器(步骤710)。此时,如果该可疑路由器上并未使能路由功能,该可疑路由器丢弃该分组(步骤 712),然后将该方法终止。由于不良路由器搜寻器从未从该可疑路由器接收到ICMP超时消息,该不良路由器搜寻器确定该可疑路由器并不在进行路由。但是,如果在该可疑路由器上使能了路由功能,该可疑路由器检查该分组中的TTL 字段(步骤714)。因为由不良路由器搜寻器创建的分组中的TTL字段的值为1,该可疑路 由器基于该分组中的源IP地址向该不良路由器搜寻器(分组发送方)返回一个ICMP超时 消息(步骤716)。因为该分组中的源IP地址为该不良路由器搜寻器的IP地址,该不良路 由器搜寻器接收该ICMP超时消息(步骤718)。当来自可疑路由器的超时消息被不良路由器搜寻器接收到时,该不良 路由器搜寻 器将知道该可疑路由器正在进行路由(步骤720)。然后该不良路由器搜寻器可以警告网络 安全管理员该可疑路由器为该网络上的未授权路由器(步骤722),然后终止该方法。本发明可采用整体上为硬件实施例,整体上为软件实施例或同时包含硬件及软件 元件的实施例的形式。在一优选实施例中,本发明实施成软件,其包括但不限于固件、驻留 软件、微代码等。另外,本发明可采用可从计算机可用或计算机可读媒体访问的计算机程序产品的 形式,其提供程序代码来用于或配合于计算机或任何指令执行系统。计算机可用或计算机 可读媒体可为任何有形设备,其中可包含、存储、传送、传播或传输由指令执行系统、设备或 装置使用或配合使用的程序。该媒体可为电子、磁性、光学、电磁、红外或半导体系统(或设备或装置)或传播 媒体。计算机可读媒体的例子包括半导体或固态存储器、磁带、可移除计算机盘、随机存 取存储器(RAM)、只读存储器(ROM)、硬磁盘及光盘。光盘的现有例子包括光盘只读存储器 (CD-ROM)、读取 / 写入光盘(CD-R/W)及 DVD。另外,计算机存储媒体可包含或存储计算机可读程序代码,使得当该计算机可读 取程序代码在计算机上执行时,此计算机可读取程序代码的执行使得该计算机在通信链路 上传送另一个计算机可读取程序代码。此通信链路可使用一种媒体,它例如是但不限于物 理或无线媒体。适用于存储和/或执行程序代码的数据处理系统将包括至少一个处理器,其经由 系统总线直接或间接地耦合至存储器元件。存储器元件可包括在该程序代码实际执行期间 利用的本地存储器、大容量存储装置,及高速缓存,其提供至少某些程序代码的暂时存储, 由此降低代码在执行期间必须从大容量存储装置中获取代码的次数。输入/输出或I/O装置(包括但不限于键盘、显示器、指向装置等)可直接或经由 中介I/O控制器耦合至该系统。网络适配器也可耦合至该系统来使能该数据处理系统,以通过中介的私有或公共 网络耦合至其它数据处理系统或远端打印机或存储装置。调制解调器、缆线调制解调器及 以太网卡仅为几种目前可使用的网络适配器。本发明的说明书已为了例示及描述的目的而呈现,其并非要穷举或限制于所公开 的本发明的形式。本领域技术人员将可了解到有许多修改及变化。该实施例的选择和描述 是为了最好地解释本发明的原理,实际应用,并使得其它本领域技术人员可了解本发明的 多种实施例具有多种修正而可适用于所考虑到的特定用途。
权利要求
一种用于检测分布式网络中的未授权路由器的计算机实现的方法,该计算机实现的方法包含获取目的地装置的物理地址;创建数据分组,该数据分组至少包含目的地媒体访问控制字段、目的地互联网协议字段、以及存活时间字段,其中该目的地媒体访问控制字段包含该目的地装置的物理地址,其中该目的地互联网协议字段包含假冒的互联网协议地址,并且其中该存活时间字段包含指示该数据分组已经超过时间限制的值;使用该目的地媒体访问控制字段中的物理地址来向该目的地装置发送该数据分组;以及响应于从该目的地装置接收到超时消息,确定该目的地装置被使能来进行路由。
2.如权利要求1所述的计算机实现的方法,还包含响应于未能从该目的地装置接收到超时消息,确定该目的地装置没有被使能来进行路由。
3.如权利要求1所述的计算机实现的方法,其中该目的地装置的物理地址为该目的地 装置中的网络接口卡的媒体访问控制地址。
4.如权利要求1所述的计算机实现的方法,其中该数据分组还包含源媒体访问控制字 段以及源互联网协议字段,该源媒体访问控制字段包含源装置的物理地址,该源互联网协 议字段包含该源装置的互联网协议地址。
5.如权利要求1所述的计算机实现的方法,其中该目的地装置检查该数据分组中的目 的地互联网协议地址,确定该数据分组中的目的地互联网协议地址是否匹配该目的地装置 的互联网协议地址,如果在该目的地装置上使能了路由则检查该数据分组中的存活时间字 段中的值,并且如果该值指出该数据分组已经超过时间限制,则向源互联网协议地址字段 中的该互联网协议地址发送该超时消息。
6.如权利要求5所述的计算机实现的方法,其中如果在该目的地装置上没有使能路 由,则该目的地装置丢弃该数据分组。
7.如权利要求1所述的计算机实现的方法,其中在该目的地装置的互联网协议地址为 未知时确定该目的地装置被使能进行路由。
8.如权利要求1所述的计算机实现的方法,其中在该目的地装置的子网络上的各装置 的互联网协议地址为未知时确定该目的地装置被使能进行路由。
9.如权利要求8所述的计算机实现的方法,其中所述装置为离线或关机。
10.如权利要求1所述的计算机实现的方法,其中该目的地装置的物理地址是使用查 验工具或地址解析协议中的一个来得到的。
11.一种用于检测分布式网络中的未授权路由器的数据处理系统,该数据处理系统包含总线;存储装置,连接至该总线,其中该存储装置包含计算机可用代码; 连接至该总线的至少一个受管理装置; 通信单元,连接至该总线;以及处理单元,连接至该总线,其中该处理单元执行该计算机可用代码来得到目的地装置的物理地址;创建数据分组,该数据分组至少包含目的地媒体访问控制字段、目的地互联网 协议字段、以及存活时间字段,其中该目的地媒体访问控制字段包含该目的地装置的物理 地址,其中该目的地互联网协议字段包含假冒的互联网协议地址,并且其中该存活时间字 段包含指示该数据分组已经超过时间限制的值;使用该目的地媒体访问控制字段中的该物 理地址向该目的地装置发送该数据分组;以及响应于从该目的地装置接收到超时消息,确 定该目的地装置被使能进行路由。
12.一种用于检测分布式网络中的未授权路由器的计算机程序产品,该计算机程序产 品包含计算机可用媒体,其上有形地实施计算机可用程序代码,该计算机可用程序代码包含用于获取目的地装置的物理地址的计算机可用程序代码;用于创建数据分组的计算机可用程序代码,该数据分组至少包含目的地媒体访问控制 字段、目的地互联网协议字段、以及存活时间字段,其中该目的地媒体访问控制字段包含该 目的地装置的物理地址,其中该目的地互联网协议字段包含假冒的互联网协议地址,并且 其中该存活时间字段包含指示该数据分组已经超过时间限制的值;用于使用该目的地媒体访问控制字段中的物理地址来向该目的地装置发送该数据分 组的计算机可用程序代码;以及用于响应于从该目的地装置接收到超时消息,确定该目的地装置被使能进行路由的计 算机可用程序代码。
13.如权利要求12所述的计算机程序产品,还包含用于响应于未能从该目的地装置接收到超时消息,确定该目的地装置没有被使能进行 路由的计算机可用程序代码。
14.如权利要求12所述的计算机程序产品,其中该目的地装置的物理地址为该目的地 装置中的网络接口卡的媒体访问控制地址。
15.如权利要求12所述的计算机程序产品,其中该数据分组还包含源媒体访问控制字 段和源互联网协议字段,该源媒体访问控制字段包含源装置的物理地址,该源互联网协议 字段包含该源装置的互联网协议地址。
16.如权利要求12所述的计算机程序产品,其中该目的地装置检查该数据分组中的目 的地互联网协议地址,确定该数据分组中的目的地互联网协议地址是否匹配该目的地装置 的互联网协议地址,如果在该目的地装置上使能了路由则检查该数据分组中的存活时间字 段中的值,并且如果该值指出该数据分组已经超过时间限制,则向该源互联网协议地址字 段中的该互联网协议地址发送超时消息。
17.如权利要求16所述的计算机程序产品,其中如果在该目的地装置上没有使能路 由,该目的地装置丢弃该数据分组。
18.如权利要求12所述的计算机程序产品,其中在该目的地装置的互联网协议地址为 未知或在该目的地装置的子网络上的各装置的互联网协议地址为未知时确定该目的地装 置被使能进行路由。
19.如权利要求18所述的计算机程序产品,其中所述装置为离线或关机。
20.如权利要求12所述的计算机程序产品,其中该目的地装置的物理地址是通过使用查验工具或地址解析协议中的一个来得到的 。
全文摘要
一种用于发现网络中的未授权路由器的计算机实现的方法、数据处理系统,及计算机程序产品。在例示的实施例中的方法先获取可疑路由器或目的地装置的物理地址。创建数据分组,其至少包含目的地媒体访问控制字段、目的地互联网协议字段、以及存活时间字段,其中该目的地媒体访问控制字段包含该目的地装置的物理地址,其中该目的地互联网协议字段包含假冒的互联网协议地址,并且其中该存活时间字段包含指示该数据分组已经超过时间限制的值。使用在该目的地媒体访问控制字段中的物理地址将该数据分组发送到该目的地装置。如果从该目的地装置接收到超时消息,该目的地装置即被确定为被使能来进行路由。
文档编号H04L12/26GK101816166SQ200880110274
公开日2010年8月25日 申请日期2008年9月22日 优先权日2007年10月5日
发明者G·F·迈克布里迪, J·C·穆里罗, J·M-H·谢, S·M·考哈尼, S·P·穆伦 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1