CN1394038A - Ip网络节点发现方法 - Google Patents

Ip网络节点发现方法 Download PDF

Info

Publication number
CN1394038A
CN1394038A CN 01129653 CN01129653A CN1394038A CN 1394038 A CN1394038 A CN 1394038A CN 01129653 CN01129653 CN 01129653 CN 01129653 A CN01129653 A CN 01129653A CN 1394038 A CN1394038 A CN 1394038A
Authority
CN
China
Prior art keywords
node
network management
address
router
seed list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 01129653
Other languages
English (en)
Other versions
CN1152516C (zh
Inventor
谢剑平
沈虹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB011296534A priority Critical patent/CN1152516C/zh
Publication of CN1394038A publication Critical patent/CN1394038A/zh
Application granted granted Critical
Publication of CN1152516C publication Critical patent/CN1152516C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种IP网络节点发现方法,以IP网络中的路由器节点作为种子节点,利用其路由表和ARP表的信息查找下一跳路由器和与该节点直连的子网中各主机加以记录,并对点对点方式连接的路由器采取在IP地址范围内从两端优先进行的快速查找方法,允许人工干预跳过网络中不支持SNMP的路由器,从而提高网络节点发现方法的运行效率。

Description

IP网络节点发现方法
本发明涉及IP(互联网协议)网络管理,尤其涉及一种IP网络节点发现方法。
为了能够发现未知网络的节点,包括路由器设备及非路由器设备,完整地组织设备、子网之间的逻辑关系,以显示网络的拓扑结构,现有技术中采用的网络节点发现方法是让用户给出一段IP地址范围,然后对这一范围内的每一个IP地址发送PING命令,即ICMP(InternetControl Message Protocol网间网控制报文协议)回应请求报文,如果有返回,则发送SNMP(简单网络管理协议)PDU(Protocol Data Unit协议数据单元),读取它的sysObjectID(系统对象标志)、sysServices(网络设备提供的协议层服务)、ipForwarding(网络设备是否被设置为转发IP数据报)、ipAddrTable(设备中的IP地址)以确定其设备是否为路由器。如果是路由器,则安装到拓扑数据库中;如果不是路由器,则保存起来,直到所有的路由器安装完毕,再安装各路由器相连子网的非路由器设备。上述方法实现起来比较简单,但是需要用户提供发现线索,如果针对规模庞大的网络结构,采用这种向整个IP地址范围逐一发送PING命令,再对回应的节点进行检验的方法,则有大量操作是对于并不存在的IP地址进行,显然耗时较长而且效率低下。
本发明的目的在于针对现有技术中的不足,提供一种利用设备自有信息自动进行拓扑发现而且算法效率提高的IP网络节点发现方法。
为达到上述目的,本发明采用的技术方案是:设置用于存储路由器节点信息的种子列表和用于存储所有发现节点信息的节点列表,并包括下述步骤:
A、设置于IP网络中的网管工作站发现其所在子网中的节点,将所发现节点加入节点列表,并将其中的路由器节点加入种子列表;
B、从种子列表中取出一个节点,将该节点的路由表、IP地址表和ARP(Address Resolution Protocol)表取出并保存;
C、根据步骤B所取出节点的路由表和IP地址表,得到该节点的所有下一跳路由器并将其加入种子列表;
D、根据步骤B所取出节点的ARP表,得到与该节点直连的子网中各主机的IP地址并将所得到的节点加入相应的列表;
E、将步骤B所取节点从种子列表中删除;
F、检查种子列表中是否有节点存在,如果有,转步骤B;如果无,则发现方法结束。
由于采用了以上技术方案,本发现方法的执行由网管工作站从其所在子网中发起,无需用户输入IP地址范围,并且将节点设备路由表和用于显示本地系统地址的ARP表的信息作为发现线索,比现有技术的遍历方法减少了大量发送PING命令的操作,有的放矢,提高了运行效率。
下面结合附图和实施例对本发明技术方案作进一步说明。
图1是本发明方法的步骤流程图。
如图1所示,首先执行步骤A,设置于IP网络中的网管工作站发现其所在子网中的节点,将所发现节点加入节点列表,并将其中的路由器节点加入种子列表,具体内容可依下述步骤进行:
A1、将网管工作站路由表中的默认路由器加入种子列表;
A2、网管工作站使用广播地址向所在子网中的所有主机发送用于确定节点之间的底层连接是否可用的PING命令;
A3、将回应PING命令的节点加入节点列表;
A4、从步骤A3发现的节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
A5、对步骤A4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
A6、将步骤A5查询出的节点加入种子列表。
其中步骤A5通常为向节点设备发送SNMP PDU,提取sysServices、ipForwarding。如果sysServices&0x04!=0即具有第三层功能,并且ipForwarding=1,同时ipAddrTable表存在非127.0.0.1以外的多个IP地址,则判定该设备为路由器设备,否则为非路由器设备。
通过步骤A,种子列表和节点列表均被加入了节点,上述两个列表都可以队列方式存储所加入节点。然后执行步骤B,从种子列表中取出一个节点,将该节点的路由表、IP地址表和ARP表取出并保存,再进入步骤C,根据步骤B所取出节点的路由表和IP地址表,得到该节点的所有下一跳路由器并将其加入种子列表。
步骤C的具体内容可依下述步骤进行:
C1、检查路由表中取出的下一跳路由器的IP地址是否在节点设备自身的IP地址表中,如果否,执行步骤C1至C6;如果是,执行步骤C7、C8;
C2、使用用于确定节点之间的底层连接是否可用的PING命令找出所有下一跳路由器节点中的可连通节点;
C3、将步骤C2找出的可连通节点的IP地址与节点列表中所有节点的IP地址和已经发现的所有路由器节点的IP地址表进行比较,如果均未发现相同IP地址,则确定该可连通节点为新发现节点;
C4、从步骤C3确定的新发现节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
C5、对步骤C4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
C6、将步骤C5查询出的节点加入种子列表;
C7、根据相应IP地址确定下一跳路由器所在子网;
C8、对该子网范围内两端的若干对IP地址使用PING命令找出可连通节点加入种子列表。
首先取得设备的IP地址表和路由表,用路由表中取出的下一跳路由器的IP地址与设备自己的IP地址表比较,如果发现该地址不在设备自己的IP地址表中,说明这就是真正下一跳路由器的IP地址,对其执行步骤C2至C6。如果发现该地址在设备自己的IP地址表中,说明该接口使用的是点到点的连接方式。这时的下一跳地址并不是真正的下一跳路由器的IP地址,而是本设备的接口IP地址,我们可以根据这个IP地址确定下一跳路由器所在的子网,通过对这个子网范围内的IP地址发送PING命令,我们就可以找到下一跳路由器。
通常在一个规模较大的IP网络中对地址的使用都遵循一定规范,点对点连接方式的特点是子网中只有两个节点,所以一般网络设计者为节省网络地址和提高路由效率都使用30位掩码的最小子网,在这种情况下,如果你已经知道本端的IP地址,则对端的地址可以直接计算出来。如已知IP地址为200.1.1.77掩码为255.255.255.252则200.1.1.76为该子网的网络地址;200.1.1.79为该子网的广播地址;200.1.1.78为对端的IP地址。各地址满足如下关系式:
网络地址=已知IP地址&网络掩码;
广播地址=~已知IP地址|网络掩码;
(广播地址>对端地址>网络地址)and
           (对端地址!=已知IP地址);
根据以上的条件,对端地址要大于200.1.1.76且小于200.1.1.79同时又不等于200.1.1.77,那么符合条件的只有200.1.1.78。如果网络设计者按以上方式分配网络地址,那么我们可以立即查到下一跳路由器的IP地址。但是如果网络设计者使用了一个大范围的子网,如B类甚至A类子网,那么发现算法就需要在很大的一个地址范围内查找下一跳路由器的IP地址。如果我们在整个子网范围内使用遍历的方法查找,对于一个B类子网则有65535个可能的IP地址,使算法在这里作长时间的查找,影响运行速度。本发明使用了另外的方法,不对所有的IP地址遍历,仅对最可能采用的IP地址进行查找,如果查找了一定数量的地址后还没有找到,则放弃对该接口的查找,继续后续步骤。通常网络设计者配置路由器会使用子网内两端的地址,所以我们可以优先查找这些地址,使用从两端向中间逼近的方法,以提高查找的效率。例如对于一个B类子网地址129.1.0.0,可依如下次序查找:129.1.0.254,129.1.0.1;129.1.0.253,129.1.0.2;依此类推,所谓查找就是对如上IP地址使用PING命令找出可连通节点加入种子列表。实际使用中,为了既提高查找的效率又尽量减少遗漏,对相应子网范围内两端使用PING命令的IP地址数量可由本发现方法的使用者在运行时设定。
步骤C执行后,新的路由器节点被加入了种子列表,再执行步骤D,根据步骤B所取出节点的ARP表,得到与该节点直连的子网中各主机的IP地址并将所得到的节点加入相应列表,具体内容可依下述步骤进行:
D1、通过简单网络管理协议获得所取出节点的ARP表;
D2、对ARP表中的节点使用用于确定节点之间的底层连接是否可用的PING命令找出其中的可连通节点;
D3、将步骤C2找出的可连通节点的IP地址与节点列表中所有节点的IP地址和已经发现的所有路由器节点的IP地址表进行比较,如果均未发现相同IP地址,则确定该可连通节点为新发现节点,将新发现节点加入节点列表;
D4、从步骤D3确定的新发现节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
D5、对步骤D4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
D6、将步骤D5查询出的节点加入种子列表;
随后,将步骤B所取节点从种子列表中删除,再检查种子列表中是否还有节点存在,如果有,转步骤B从种子列表中取出一个节点进行新节点发现;如果无,则发现方法结束。
有时,IP网络中的路由节点未启用简单网络管理协议的网络管理代理软件,或者虽启用简单网络管理协议的网络管理代理软件却使用非通用口令,这将导致无法发现该节点后的节点。针对此类情况,可以通过网络管理员得到该设备的口令,或取得该节点后的一个路由节点的IP地址,就可以人工输入的方法将该节点或该节点后的一个路由器节点加入种子列表,从而继续发现其后面的节点。
在网管系统每次使用发现方法后,可将结果保存,再次运行时则不必对已发现过的节点操作。

Claims (6)

1、一种IP网络节点发现方法,其特征在于:设置用于存储路由器节点信息的种子列表和用于存储所有发现节点信息的节点列表,并包括下述步骤:
A、设置于IP网络中的网管工作站发现其所在子网中的节点,将所发现节点加入节点列表,并将其中的路由器节点加入种子列表;
B、从种子列表中取出一个节点,将该节点的路由表、IP地址表和ARP表取出并保存;
C、根据步骤B所取出节点的路由表和IP地址表,得到该节点的所有下一跳路由器并将其加入种子列表;
D、根据步骤B所取出节点的ARP表,得到与该节点直连的子网中各主机的IP地址并将所得到的节点加入相应的列表;
E、将步骤B所取节点从种子列表中删除;
F、检查种子列表中是否有节点存在,如果有,转步骤B;如果无,则发现方法结束。
2、如权利要求1所述的IP网络节点发现方法,其特征在于:所述网管工作站发现其所在子网中的节点,将所发现节点加入节点列表,并将其中的路由器节点加入种子列表过程依下述步骤进行:
A1、将网管工作站路由表中的默认路由器加入种子列表;
A2、网管工作站使用广播地址向所在子网中的所有主机发送用于确定节点之间的底层连接是否可用的PING命令;
A3、将回应PING命令的节点加入节点列表;
A4、从步骤A3发现的节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
A5、对步骤A4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
A6、将步骤A5查询出的节点加入种子列表。
3、如权利要求1所述的IP网络节点发现方法,其特征在于:所述根据从种子列表中取出的节点的路由表和IP地址表,得到该节点的所有下一跳路由器并将其加入种子列表的过程依下述步骤进行:
C1、检查路由表中取出的下一跳路由器的IP地址是否在节点设备自身的IP地址表中,如果否,执行步骤C2至C6;如果是,执行步骤C7、C8;
C2、使用用于确定节点之间的底层连接是否可用的PING命令找出所有下一跳路由器节点中的可连通节点;
C3、将步骤C2找出的可连通节点的IP地址与节点列表中所有节点的IP地址和已经发现的所有路由器节点的IP地址表进行比较,如果均未发现相同IP地址,则确定该可连通节点为新发现节点;
C4、从步骤C3确定的新发现节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
C5、对步骤C4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
C6、将步骤C5查询出的节点加入种子列表;
C7、根据相应IP地址确定下一跳路由器所在子网;
C8、对该子网范围内两端的若干对IP地址使用PING命令找出可连通节点加入种子列表。
4、如权利要求3所述的IP网络节点发现方法,其特征在于:所述对相应子网范围内两端使用PING命令的IP地址数量由本发现方法的使用者在运行时设定。
5、如权利要求1所述的IP网络节点发现方法,其特征在于:所述根据从种子列表中取出节点的ARP表,得到与该节点直连的子网中各主机的IP地址并将所得到的节点加入相应列表的过程依下述步骤进行:
D1、通过简单网络管理协议获得所取出节点的ARP表;
D2、对ARP表中的节点使用用于确定节点之间的底层连接是否可用的PING命令找出其中的可连通节点;
D3、将步骤C2找出的可连通节点的IP地址与节点列表中所有节点的IP地址和已经发现的所有路由器节点的IP地址表进行比较,如果均未发现相同IP地址,则确定该可连通节点为新发现节点,将新发现节点加入节点列表;
D4、从步骤D3确定的新发现节点中找出启用简单网络管理协议的网络管理代理软件并支持管理信息库MIB-II的节点;
D5、对步骤D4找出的节点用简单网络管理协议查询具有IP转发能力的节点;
D6、将步骤D5查询出的节点加入种子列表。
6、如权利要求1、2、3、4或5所述的IP网络节点发现方法,其特征在于:对IP网络中未启用简单网络管理协议的网络管理代理软件或启用简单网络管理协议的网络管理代理软件且使用非通用口令的路由器节点,以人工输入的方法将该节点或该节点后的一个路由器节点加入种子列表。
CNB011296534A 2001-06-26 2001-06-26 Ip网络节点发现方法 Expired - Fee Related CN1152516C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB011296534A CN1152516C (zh) 2001-06-26 2001-06-26 Ip网络节点发现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB011296534A CN1152516C (zh) 2001-06-26 2001-06-26 Ip网络节点发现方法

Publications (2)

Publication Number Publication Date
CN1394038A true CN1394038A (zh) 2003-01-29
CN1152516C CN1152516C (zh) 2004-06-02

Family

ID=4669339

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB011296534A Expired - Fee Related CN1152516C (zh) 2001-06-26 2001-06-26 Ip网络节点发现方法

Country Status (1)

Country Link
CN (1) CN1152516C (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100352239C (zh) * 2003-11-06 2007-11-28 国际商业机器公司 主机中分组终端的路由器辅助快速处理方法、系统
CN100353717C (zh) * 2003-03-28 2007-12-05 华为技术有限公司 一种针对互联网协议的安全访问控制方法
CN1934830B (zh) * 2004-03-17 2010-05-26 皇家飞利浦电子股份有限公司 把设备连接到对等网络
CN101222408B (zh) * 2008-01-31 2010-09-29 杭州华三通信技术有限公司 Vlan拓扑的生成方法和装置
CN101873232A (zh) * 2010-07-27 2010-10-27 迈普通信技术股份有限公司 设备唯一性判断方法以及ip网络发现服务器
CN102271350A (zh) * 2011-03-30 2011-12-07 东方通信股份有限公司 无线集群网管中的网络拓扑的自动发现的方法
CN101764728B (zh) * 2010-01-27 2012-02-08 杭州华三通信技术有限公司 一种网络拓扑的发现方法和设备
US8117305B2 (en) 2006-05-25 2012-02-14 Duaxes Corporation Communication management system, communication management method, and communication control device
CN101989946B (zh) * 2009-07-30 2012-07-18 中兴通讯股份有限公司 一种通信设备路由转发表的压缩方法
CN104272650A (zh) * 2012-04-11 2015-01-07 迈克菲公司 资产检测系统
CN105656790A (zh) * 2016-01-28 2016-06-08 昭文科技(北京)股份有限公司 多路径数据传输方法及装置
CN105847040A (zh) * 2016-03-18 2016-08-10 国家电网公司 一种基于拓扑发现的资源对象修正方法

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100353717C (zh) * 2003-03-28 2007-12-05 华为技术有限公司 一种针对互联网协议的安全访问控制方法
CN100352239C (zh) * 2003-11-06 2007-11-28 国际商业机器公司 主机中分组终端的路由器辅助快速处理方法、系统
CN1934830B (zh) * 2004-03-17 2010-05-26 皇家飞利浦电子股份有限公司 把设备连接到对等网络
US8117305B2 (en) 2006-05-25 2012-02-14 Duaxes Corporation Communication management system, communication management method, and communication control device
CN101222408B (zh) * 2008-01-31 2010-09-29 杭州华三通信技术有限公司 Vlan拓扑的生成方法和装置
CN101989946B (zh) * 2009-07-30 2012-07-18 中兴通讯股份有限公司 一种通信设备路由转发表的压缩方法
CN101764728B (zh) * 2010-01-27 2012-02-08 杭州华三通信技术有限公司 一种网络拓扑的发现方法和设备
CN101873232A (zh) * 2010-07-27 2010-10-27 迈普通信技术股份有限公司 设备唯一性判断方法以及ip网络发现服务器
CN102271350A (zh) * 2011-03-30 2011-12-07 东方通信股份有限公司 无线集群网管中的网络拓扑的自动发现的方法
CN104272650A (zh) * 2012-04-11 2015-01-07 迈克菲公司 资产检测系统
US9847965B2 (en) 2012-04-11 2017-12-19 Mcafee, Llc Asset detection system
CN105656790A (zh) * 2016-01-28 2016-06-08 昭文科技(北京)股份有限公司 多路径数据传输方法及装置
CN105656790B (zh) * 2016-01-28 2019-03-05 东智安通(北京)科技有限公司 多路径数据传输方法及装置
CN105847040A (zh) * 2016-03-18 2016-08-10 国家电网公司 一种基于拓扑发现的资源对象修正方法
CN105847040B (zh) * 2016-03-18 2019-09-10 国家电网公司 一种基于拓扑发现的资源对象修正方法

Also Published As

Publication number Publication date
CN1152516C (zh) 2004-06-02

Similar Documents

Publication Publication Date Title
US5835720A (en) IP discovery apparatus and method
US6895429B2 (en) Technique for enabling multiple virtual filers on a single filer to participate in multiple address spaces with overlapping network addresses
US7742426B2 (en) System, method, and computer-readable medium for determining a layer 2 path trace in a heterogeneous network system
EP1811724A1 (en) Determining data link (L2) network paths
CN1152516C (zh) Ip网络节点发现方法
EP2316192A1 (en) Incremental and targeted auto-discovery of network devices
US20010056499A1 (en) Method of and device for deciding network address, and computer product
CN113452561A (zh) 一种拓扑生成方法、装置、设备及可读存储介质
CN101075933A (zh) 学习mac地址的方法及网元设备
CN1885858A (zh) 一种基于snmp协议对网络设备进行集群式管理的方法
CN1558615A (zh) 一种物理网络拓扑发现系统及其方法
US7870246B1 (en) System, method, and computer program product for platform-independent port discovery
JP2010097273A (ja) ネットワーク構成情報取得方法および装置
US6826621B1 (en) Method and system for aggregating interface addresses
CN111565117A (zh) 一种基于snmp的拓扑发现方法和系统
CN1536834A (zh) 因特网中构造对等网络及获取该网络中共享信息的方法
CN1917436A (zh) 基于Web实现网络设备集群式管理的方法
US20040151202A1 (en) Method and apparatus for discovering topology information in a network
US20130246603A1 (en) System, method, and computer program product for automatic router discovery
CN115865844B (zh) 基于sdn与ndn的虚实结合动态流量调度方法及装置
CN115314419B (zh) 一种面向云网络自适应连通性分析方法、系统、设备及存储介质
CN1145319C (zh) 网络拓扑结构的搜索方法
US6883024B2 (en) Method and apparatus for defining application scope and for ensuring finite growth of scaled distributed applications
CN100352233C (zh) 路由表的组织与查找方法
CN109842692A (zh) 用于获得物理网络中主机信息的VxLAN交换机、系统和方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040602

Termination date: 20150626

EXPY Termination of patent right or utility model