收藏 分销(赏)

实验1网络配置与网络管理软件SNMPc的使用.docx

上传人:xrp****65 文档编号:7443616 上传时间:2025-01-04 格式:DOCX 页数:34 大小:1.65MB 下载积分:10 金币
下载 相关 举报
实验1网络配置与网络管理软件SNMPc的使用.docx_第1页
第1页 / 共34页
实验1网络配置与网络管理软件SNMPc的使用.docx_第2页
第2页 / 共34页


点击查看更多>>
资源描述
实验1网络配置与网络管理软件SNMPc的使用 一. 实验项目:网络实验环境的搭建,网络管理软件的安装、配置和基本使用 二. 实验内容: 1. 构建简单实验网络,并启用各网络设备的SNMP功能; 2. 网络管理软件SNMPc的安装与配置; 3. 学习SNMPc的主要管理功能,掌握软件系统的基本操作。 三. 实验目的: 1. 使学生掌握典型网络管理软件SNMPc的安装、配置和基本使用技能。 2. 掌握网络设备管理的基本参数配置。 3. 通过实际操作,加深对课堂上SNMP协议理论知识的理解。 四. 实验设备及环境: 1. Huawei 3Com Quidway R2621路由器:1台; 2. Cisco 2950网络交换机:1台; 3. 计算机:2台; 4. 直通双绞线2根,交叉双绞线1根,串口配置线1根; 5. 网络管理软件:SNMPc7。 五. 学生分组情况: 每组6人。 六. 实验步骤及要求: 1. 构建实验的网络环境 参照下图构建实验的网络环境。注意:同层次设备用交叉线相连(但现在很多设备带自动翻转功能,直连也可),如交换机与交换机,计算机与计算机,计算机与路由器(可看作专用计算机);而路由器和交换机、交换机和计算机用直通线相连。 图4 实验网络拓扑结构 2. 配置各设备的网络参数并启用其网管功能: 为了配置路由器或交换机,用串口线将计算机的COM串行接口与路由器或交换机的Console控制口相连,然后在计算机中运行超级终端进行参数设置(端口设置需还原为默认值)。 (1) 配置Cisco 2950交换机 1、配置IP地址 两层交换机在数据链路层转发数据时是不需要IP地址的,但为了使交换机要能够被网管,也可给它标识一个管理IP地址。默认情况下CISCO交换机的VLAN 1为管理VLAN,为该管理VLAN配上IP 地址,交换机就可以被网管了。命令如下: a、 进入全局模式: Switch> enable Password: cs608 (如果需要密码的话) Switch# configure terminal     b、进入VLAN 1接口模式: Switch(config)# interface vlan 1     c、配置IP地址: Switch(config-if) # ip address 192.0.0.2 255.255.255.0 通常VLAN1是默认的管理VLAN,如果当前VLAN1 不是管理VLAN ,只需要将上面命令的vlan1换成管理VLAN即可。(查看交换机所有VLAN的信息:Switch# show vlan brief) 2、开启SNMP功能     a、退出到全局配置模式: Switch(config-if)# exit     b、配置一个名为public的只读的团体(Community)          Switch(config)# snmp-server community public ro     c、再配置一个名为private的可写的团体          Switch(config)# snmp-server community private rw (注意:后面的SNMPc7管理站也要设置相应的团体,才能与交换机中的代理模块进行网管通信。) (2) 配置Huawei 3Com Quidway R2621路由器 1、 配置IP地址 [Router] interface Ethernet 0 进入第一个以太网口 [Router-Ethernet0] ip address 192.0.0.1 255.255.255.0 配置第一个口的IP [Router-Ethernet0] interface Ethernet 1 进入第二个以太网口 [Router-Ethernet1] ip address 192.0.1.1 255.255.255.0 配置第二个口的IP 如果重复设置IP地址,会提示Duplicate IP Address. 配置好后可用[Router] display ip interface,检查路由器各接口的情况。 2、 启用SNMP功能 [Router-Ethernet1] quit 退入到全局模式 [Router] snmp-agent 开启snmp服务 [Router] snmp-agent community read public 设置只读团体public [Router] snmp-agent community write private 设置可写团体private [Router] snmp-agent sys-info version all 支持snmpv1/v2/v3 [Router] save 保存设置 (3) 设置计算机的IP地址和默认网关,并启用计算机的SNMP功能 参照图4设置两台计算机的IP地址和默认网关,设置好后,下面启用计算机的SNMP网管功能。 首先确定并启用计算机中的SNMP模块 :开始->运行->cmd->回车,输入命令“net start snmp”。 C:\\Documents and Settings\\mmpire> net start snmp SNMP Service 服务正在启动 . SNMP Service 服务已经启动成功。   上述说明计算机已经安装有SNMP服务组件,并启动成功;如果显示服务名无效,则需先安装SNMP服务组件:   1. 打开控制面板,双击[添加/删除程序];   2. 在弹出的[添加/删除程序]对话框的左窗格中,单击 [添加/删除 Windows 组件];   3. 在弹出的[Windows 组件向导]中双击 [管理和监视工具]。   4. 在弹出的[管理和监视工具] 对话框中,勾选[简单网络管理协议],单击 [确定]。   5. 安装协议时需要用到Windows XP SP2安装盘中的i386文件夹。(i386文件夹已拷贝到网络管理文件夹下)   再执行前面的“net start snmp”命令启动SNMP服务。 3. 验证网络连通性: 网络中各个设备能否ping通,通则证明各设备是连通的,不通则可能网络参数配置出错或者双绞线有问题。注意,工作在数据链路层的二层交换机是无法ping通的其网络层的IP地址的。计算机的默认网关必须正确设置,否则无法ping通其它网络。 4. 在某台计算机上安装网络管理软件SNMPc7: (1) SNMPc7安装过程中会弹出如图所示界面: 图5 SNMPc7安装界面一 可选择三种安装组件:服务器,控制台和轮询代理。选择安装服务器(Server)组件,它包括SNMP服务器、本地控制台与轮询代理模块。 (2)选择好安装目录后会弹出如图所示界面: 图6 SNMPc7安装界面二 在界面中输入网络发现的seed设备(即网络发现的起点设备)的IP地址、子网掩码以及团体名。seed设备一般选取管理网络中的核心设备(如某路由器),SNMPc利用它作为发现其它网络设备的起始节点,实现全网络的自动发现;如果输入错误的seed设备信息,SNMPc7网络发现功能会出现异常。 Seed设备的设置也可在SNMPc启动后在Configure -> Discovery/ Polling菜单中修改。 (3) SNMPc安装完成后,会自动启动Air Messenger Pro paging application安装程序。这时用户可以选择安装也可以退出安装。Air Messenger Pro的功能:将告警信息通过Email方式发送给SNMPc管理用户。 (4) 所有安装完成后,需要重新启动计算机。 (5) 网络管理软件SNMPc7操作界面如下: 图7 SNMPc7的操作界面 5. 配置或修改SNMPc的参数: (1) 设置或修改seed设备(即网络发现的起始设备信息,包括其IP,掩码和团体名): Config -> Discovery/Polling 图8 设置网络发现的起点设备 例如也可将管理站计算机(192.0.1.2/24)设置为网络发现的起点设备。 (2)设置团体名:Config -> Discovery/Polling -> Comm 图9 设置团体信息的对话框 可增加、修改或删除已有的团体名信息。请增加只读团体public,可读可写团体private。 图10 编辑团体信息 6. 重新运行SNMPc7 运行SNMPc: 开始 -> SNMPc -> Startup System 软件运行后,会以seed设备为起点自动发现并构建整个网络的拓扑图。 图11 SNMPc7的运行界面 7. 远程管理: 双击拓扑图中的路由器或计算机,会显示此设备的端口图,如下图。通过双击图标,可在图中对设备的各端口进行远程打开和关闭操作。选择某端口,然后通过Port菜单可远程查看此端口的详细参数。 图12 某设备各端口的远程管理界面 在拓扑图中右击某设备图标,选择Tools->MIB Browser,可查看各设备代理中的MIB信息。如下图所示: 图13 某设备的MIB操作界面 此图左侧以树状图的形式给出了该设备MIB树结构,设备的各被管对象就位于此MIB树的叶子节点上,可远程查看或修改设备中给被管对象信息。 图13 设备MIB中的Get操作 对话框中的按钮给出了管理站的几种基本操作,如Get, Getnext, Getbulk和Set等操作。如果要Get获取某对象的实例值,只需要给出该对象实例的标识符,并点击Get按钮即可执行。如图13是获取SysDescr的实例值:输入其实例标识符SysDescr.0,然后点击Get按钮,即可获得相关设备的描述Quidway Router R2621 Huawei这样的信息。另外多次点击Next按钮,则可按词典顺序依次获取设备MIB树中各管理对象的信息。 图14中,可使用Set操作修改设备MIB中sysName.0的实例值,即设备的名称。有时不能成功Set,可能是因为对象为只读或团体名没有写的权限,如果是后者,可点击Settings按钮,然后设置好可读写的团体名,如图15所示。 图14 MIB操作界面中的设置按钮 图15 设置读写共同体 下图首先通过Get查看了路由器MIB中interface接口组的ifNumber值,如果值为5表示该路由器有5个端口(如图16所示),因此在ifTable表中有5个表行,对应每一个端口有一个表行。如果要获取第x (x=1,2,3,4,5)个端口的最大传输速率,可通过Get操作获取ifSpeed.x的值;如果要获取第x个端口的物理地址,可通过Get操作获取ifPhysAddress.x的值。 图16 获取设备的接口数量 实验2 SNMP报文信息的捕获与解析 一. 实验项目:使用Sniffer软件捕获与解析SNMP报文 二. 实验目的: 1. 使学生熟悉SNMP报文的结构和内容。 2. 掌握网络抓包与分析工具Sniffer的使用。 三. 实验设备及环境要求: 1. Huawei 3Com Quidway R2621路由器:1台; 2. Cisco 2950网络交换机:1台; 3. 计算机:2台; 4. 直通双绞线2根,交叉双绞线1根,串口配置线1根; 5. 网络管理软件:SNMPc7; 6. 网络抓包软件:sniffer。 四. 学生分组情况: 每组6人 五. 实验步骤及要求: 1. 安装网络抓包工具Sniffer Pro (序列号见安装文件夹),并重启电脑; 2. 使用Sniffer Pro软件抓取网络数据包: (1) Sniffer Pro启动后的界面如下: 图17 Sniffer的工作界面 (2) 设置参数: 首先选择正确的网络适配器,以确定Sniffer从哪个网卡上捕获数据:File->select settings 图18 选择进行捕获的工作网卡 设置捕获条件:Capture -> Define filter。 其中根据Address进行捕获有两种选择: 1、链路层捕获,按源MAC和目的MAC地址进行捕获。地址输入方式为十六进制连续输入,如:00E0FC123456。 2、IP层捕获,按源IP和目的IP进行捕获。地址输入方式为点分十进制方式,如:一方设为192.0.1.2,另一方为任意设备Any。本实验采用此方式,如图20所示。 图19 设置Address捕获条件(链路层捕获) 图20 设置Address捕获条件(网络层捕获) 报文捕获功能可以在报文捕获面板中进行完成,见下图。 图21 报文捕获面板 主界面左上角有4个按钮,如上图。第一个按钮表示捕获开始,第二个按钮表示暂停,第三个表示停止捕获,第四个按钮表示停止捕获并显示捕获信息(如果sniffer没有捕获到数据此按钮为灰色)。 先开启Sniffer捕获功能,然后使用SNMPc运行Get和Set操作,Sniffer捕获到SNMP报文后可对每条报文进行解码(Decode)显示,此时需要点击屏幕左下角的Decode。 图22 进行报文Decode解码 图23 查看某报文详细解码信息 3. 捕获并解析SNMP报文。 实验3 简单的网络管理站程序设计与开发 一. 实验项目:简单网络管理编程 二. 实验目的: 1. 通过理解和分析SNMP简单程序,使学生掌握网络管理编程的基本方法。 2. 掌握SNMP各种报文的格式。 3. 掌握sniffer软件的使用。 三. 实验设备及环境要求: 1. Huawei 3Com Quidway R2621路由器:1台; 2. Cisco 2950网络交换机:1台; 3. 计算机:2台; 4. 直通双绞线2根,交叉双绞线1根,串口配置线1根; 5. 网络管理软件:SNMPc7; 6. 网络抓包软件:sniffer。 7. 编程环境Visual 2003或VC 6。 四. 学生分组情况: 每组6人。 五. 实验要求: 1. 使用2003或vc6搭建SNMP示例程序运行环境。 2. 分析示例程序,写上相应注释,上机调试及运行。 3. 使用sniffer捕获并分析的示例程序发出的SNMP报文。 六. 实验具体步骤: 一、安装SNMP服务 先查看计算机系统中是否已经安装并启用SNMP服务,开始->运行->cmd->回车,输入命令“net start snmp”: C:\\Documents and Settings\\mmpire>net start snmp SNMP Service 服务正在启动 . SNMP Service 服务已经启动成功。 则已经安装有SNMP,如果没有安装,则需先安装SNMP服务:    1. 打开控制面板,双击[添加/删除程序];    2. 在弹出的[添加/删除程序]对话框的左窗格中,单击 [添加/删除 Windows 组件]; 3. 在弹出的[Windows 组件向导]中双击 [管理和监视工具]。 4. 在弹出的[管理和监视工具] 对话框中,勾选[简单网络管理协议],单击 [确定]。 5. 安装协议时需要用到Windows XP SP2安装盘 再执行“net start snmp”命令启动SNMP服务。 二、编译并生成SNMP管理站程序的可执行文件   使用微软platform SDK提供的SNMP编程样例源代码,这是一个最简单的SNMP管理站程序,用户通过在控制台输入SNMP命令来与网管代理进行交互。 1. 将SNMP管理站相关的五个文件拷贝到D盘根目录。 2. 编译示例代码 (1)如果是.net环境 a) 从以下路径打开VC.net命令行窗口:开始->所有程序-> Visual Studio. NET 2003->Visual Studio .NET 2003 命令提示。 b) 打开窗口之后输入以下命令: C:\\Documents and Settings\\mmpire>d: D:\\>nmake all   dir后可发现当前目录下生成子目录WIN2000_DEBUG,里面有wsnmputil.exe,可在控制台环境下执行。它支持SNMPv1的Get,GetNext,Set操作,以及SNMPv2的GetBulk等操作。 (2)如果是vc6环境 a) 新建一个空的Win32 Console Application控制台工程aaa(工程名可自定义); 图24 在VC下创建一个Console控制台工程 图25创建一个空的控制台工程 b) 通过Project -> Add to Project -> Files向工程添加源程序文件WSnmpUtil.h, WSnmpUtil.Cpp和Helper.Cpp; c) 通过Project -> Settings -> link -> Object / Library Modules向工程中添加源程序需要用到的库文件user32.lib gdi32.lib snmpapi.lib wsnmp32.lib mgmtapi.lib oldnames.lib Ws2_32.lib; d) 去掉WSnmpUtil.cpp中函数SetWindowLongPtr()和GetWindowLongPtr()的Ptr后缀,然后即可编译。 e) 在C:\Program Files\Microsoft Studio\Myprojects\aaa\Debug默认文件夹下生成aaa.exe可执行文件,可通过“开始->运行->输入cmd”,打开控制台环境,使用cd命令进入到此目录,再运行此管理站程序(方法见下节)。此SNMP管理站程序支持SNMPv1的Get,GetNext,Set操作,以及SNMPv2的GetBulk等操作。    3. 运行SNMP管理站程序 (1)发送GetRequest命令 //例如使用Get命令获取路由器的某个被管对象信息,需要给出路由器的名称或IP地址、团体名以及要获取的被管对象的实例标识符。 aaa -v1 get 192.0.1.1 public 1.3.6.1.2.1.1.1.0 OID : 1.3.6.1.2.1.1.1.0 system. sysDescr.0 OCTET STRING – Quidway Router R2621 Huawei Versatile Routing Platform Software VRP<R> software, Version 1.74 Release 0105(表示获取到了路由器的系统描述信息) (2)发送GetNextRequest命令 //使用GetNext命令获取路由器的下一个被管对象信息 aaa -v1 getnext 192.0.1.1 public 1.3.6.1.2.1.1.1.0 OID : 1.3.6.1.2.1.1.2.0 system. sysObjectID.0 OBJECT IDENTIFIER – .1.3.6.1.4.1.2011.1.1.1.2621(获取到了MIB中给定对象的下一个被管对象的实例值) aaa -v1 getnext 192.0.1.1 public 1.3.6.1.2.1.1.2.0 OID : 1.3.6.1.2.1.1.3.0 system. sysUpTime.0 TIMETICKS: 389243(获取到了MIB中给定对象的下一个被管对象的实例值) (3)发送SetRequest命令 //使用Set命令修改路由器的系统名称。(其对象标识符为1.3.6.1.2.1.1.5) aaa -v1 get 192.0.1.1 public 1.3.6.1.2.1.1.5.0 (首先获取原来的设备名称) OID : 1.3.6.1.2.1.1.5.0 system. sysName.0 OCTET STRING – G52-1 aaa -v1 set 192.0.1.1 private 1.3.6.1.2.1.1.5.0 myrouter (设置新的名称) Succeeded in setting the OID value .. aaa -v1 get 192.0.1.1 public 1.3.6.1.2.1.1.5.0 (查看新的名称) OID : 1.3.6.1.2.1.1.5.0 system. sysName.0 OCTET STRING – myrouter(此对象值已成功设置为myrouter) 三、SNMP管理站具体实现代码   主要有三个源文件:WSnmpUtil.h, Helper.Cpp和WSnmpUtil.Cpp:   1. WSnmpUtil.h   包含21个常量定义,一个结构体类型声明,一个GlobalVars类声明,以及19个函数声明。   2. Helper.Cpp   包含一些函数定义,比如输出提示消息,解析命令行输入的命令,调试信息,地址转换,输出Oid地址以及pSession的参数。   3. WSnmpUtil.Cpp   #include <stdio.h> #include <string.h> #include <stdlib.h> #include <winsock2.h> #include <winsnmp.h> #include <snmp.h> #include <mgmtapi.h> #include \\\\"WSnmpUtil.h\\\\" //外部全局变量gVars,记录用户命令等信息 GlobalVars gVars;  int main( int argc, char **argv ) { //初试化一般参数  PSNMP_MGR_SESSION pSession = NULL;  int nReturn = 0;  BOOL result;  int i = 0;  //初试化SNMP参数  smiUINT32 nMajorVersion = 0;  smiUINT32 nMinorVersion = 0;  smiUINT32 nLevel = 0;  smiUINT32 nTranslateMode = 0;  smiUINT32 nRetransmitMode = 0;  //接收用户在命令行输入的命令,主要记录在变量gVars中  ParseCommandLine( argc, argv );  //加载SNMP服务  SnmpStartup(&nMajorVersion,&nMinorVersion,&nLevel,&nTranslateMode,&nRetransmitMode);  //分两种情况设置传输模式(SNMP1/SNMP2)  if ( gVars.version == FALSE )   SnmpSetTranslateMode( SNMPAPI_UNTRANSLATED_V1 );  else   SnmpSetTranslateMode( SNMPAPI_UNTRANSLATED_V2 );  //为会话分配内存空间  pSession = ( PSNMP_MGR_SESSION )SnmpUtilMemAlloc( sizeof( SNMP_MGR_SESSION ) );  /*创建一个隐藏的负责监听WinSNMP消息的窗口,这是一段典型的调用CreateWindow()创建windows窗口的代码。(注:窗口处理函数是NotificationWndProc(),本程序调用CreatWindow()后返回,而由系统来创建窗口,其中就要调用这个窗口处理函数,这种由程序员编写而由系统调用的函数需要定义为CALLBACK函数)注意:SNMP接收的数据包(PDU)就在窗口进程里处理*/  CreateNotificationWindow( pSession );  //建立会话  SnmpOpen( pSession->hWnd, WM_SNMP_INCOMING );  //解析用户在命令行输入的命令  switch (gVars.operation)  {   case TRAP:WaitForTraps( pSession );break;   case WALK:CreatePduSendRequest( pSession, NULL );break;   case GET:   case GET_NEXT:result = CreatePduSendRequest( pSession, NULL ); break;    //创建一个PDU并发送一个请求    case GET_BULK:result = CreatePduSendRequest( pSession, NULL ); break;   case SUB_TREE:result = CreatePduSendRequest( pSession, NULL ); break;   case SET:result = CreatePduSendRequest( pSession, NULL );break;    //先探测所给agent是否存在,之后再发送设定消息  }  CloseWinSNMPSession ( pSession );//关闭WinSNMP任务,调用了SnmpClose()  SnmpUtilMemFree( pSession );//释放内存  SnmpCleanup( );//清理工作  WSACleanup( );//关闭windows sockets  return ( nReturn ); } //end of main() 
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服