net snmp trap协议中trap报文使用什么协议和端口

工作原理/SNMP协议
snmp协议在典型的SNMP用法中,有许多系统被管理,而且是有一或多个系统在管理它们。每一个被管理的系统上又运行一个叫做(agent)的软件元件,且通过SNMP对管理系统报告资讯。
基本上,SNMP代理者以变量呈现管理资料。管理系统透过GET,GETNEXT和GETBULK协定指令取回资讯,或是代理者在没有被询问的情况下,使用TRAP或INFORM传送资料。管理系统也可以传送配置更新或控制的请求,透过SET协定指令达到主动管理系统的目的。配置和控制指令只有当网络基本结构需要改变的时候使用,而监控指令则通常是常态性的工作。
可透过SNMP存取的变量以阶层的方式结合。这些分层和其他(例如变量的类型和描述)以管理信息库(MIBs)的方式描述。
应用模型/SNMP协议
snmp协议SNMP是基于TCP/IP协议族的网络管理标准,是一种在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。SNMP能够使网络管理员提高网络管理效能,及时发现并解决网络问题以及规划网络的增长。网络管理员还可以通过SNMP接收网络节点的通知消息以及告警事件报告等来获知网络出现的问题。
SNMP管理的网络主要由三部分组成:
网络管理系统(NMS)
网络中被管理的每一个设备都存在一个管理信息库(MIB)用于收集并储存管理信息。通过SNMP协议,NMS能获取这些信息。被管理设备,又称为网络单元或网络节点,可以是支持SNMP协议的路由器、交换机、服务器或者主机等等。
SNMP代理是被管理设备上的一个网络管理软件模块,拥有本地设备的相关管理信息,并用于将它们转换成与SNMP兼容的格式,传递给NMS。
NMS运行应用程序来实现监控被管理设备的功能。另外,NMS还为网络管理提供大量的处理程序及必须的储存资源。
协议发展/SNMP协议
通过snmp协议向 snmp 第一版
SNMP第一版和SMI规格的资料型态SNMP第一版SMI指定许多的资料型态,它们被分为两大类:
简单资料型态
泛应用资料型态
SNMPv1使用基于团体名进行报文认证
SNMP第二版和管理资讯结构SNMP第二版SMI在RFC&2578之中描述,它在SNMP第一版的SMI规格资料型态上进行增加和强化,例如位元串(bit&strings)、网络地址(network&addresses)和计数器(counters)。
SNMP协定在OSI模型的应用层(第七层)运作,在第一版中指定五种核心PDU:
GET&REQUEST
GET&NEXT&REQUEST
GET&RESPONSE
SET&REQUEST
其他PDU在SNMP第二版加入,包含:
GETBULK&REQUEST
SNMP第二版SMI资讯模块SNMP第二版SMI也指定了资讯模块来详细说明一群相关连的定义。有三种SMI资讯模块:MIB模块、回应状态、能力状态。
SNMP第三版SNMP第三版由RFC&3411-RFC&3418定义,主要增加SNMP在安全性和远端配置方面的强化。
SNMP第三版提供重要的安全性功能:
信息完整性:保证封包在传送中没有被。
认证:检验信息来自正确的来源。
封包加密:避免被未授权的来源窥探。
SNMPv3定义了基于用户的安全模型,使用共享密钥进行报文认证。
SNMPv3中引入了下列三个安全级别。
noAuthNoPriv:不需要认证,不提供隐私性(加密)。
authNoPriv:基于HMAC-MD5或HMAC-SHA的认证,不提供。
authPriv:除了认证之外,还将CBC-DES加密算法用作隐私性协议。
信息/SNMP协议
MIB,Management&Information&Base:管理信息库,由网络管理协议访问的管理对象数据库,它包括SNMP可以通过网络设备的SNMP管理代理进行设置的变量。SMI,Structure&of&Management&Information:管理信息结构,用于定义通过网络管理协议可访问的对象的规则。SMI定义在MIB中使用的数据类型及网络资源在MIB中的名称或表示。
使用SNMP进行网络管理需要下面几个重要部分:,管理代理,管理信息库和网络管理工具。
管理基站通常是一个独立的设备,它用作网络管理者进行网络管理的用户接口。基站上必须装备有管理软件,管理员可以使用的用户接口和从MIB取得信息的数据库,同时为了进行网络管理它应该具备将管理命令发出基站的能力。
管理代理是一种网络设备,如主机,网桥,路由器和集线器等,这些设备都必须能够接收管理基站发来的信息,它们的状态也必须可以由管理基站监视。管理代理响应基站的请求进行相应的操作,也可以在没有请求的情况下向基站发送信息。
MIB是对象的集合,它代表网络中可以管理的资源和设备。每个对象基本上是一个数据变量,它代表被管理的对象的一方面的信息。
最后一个方面是管理协议,也就是SNMP,SNMP的基本功能是:取得,设置和接收代理发送的意外信息。取得指的是基站发送请求,代理根据这个请求回送相应的数据,设置是基站设置管理对象(也就是代理)的值,接收代理发送的意外信息是指代理可以在基站未请求的状态下向基站报告发生的意外情况。
SNMP为应用层协议,是TCP/族的一部分。它通过用户数据报协议(UDP)来操作。在分立的管理站中,管理者进程对位于管理站中心的MIB的访问进行控制,并提供网络管理员接口。管理者进程通过SNMP完成网络管理。SNMP在UDP、IP及有关的特殊网络协议(如,Ethernet,FDDI,X.25)之上实现。
风险/SNMP协议
接入Internet的网络面临许多风险,Web服务器可能面临攻击,邮件服务器的安全也令人担忧。但除此之外,网络上可能还存在一些隐性的漏洞。大多数网络总有一些设备运行着SNMP服务,许多时候这些SNMP服务是不必要的,但却没有引起网络管理员的重视。
根据SANS协会的报告,对于接入Internet的主机,SNMP是威胁安全的十大首要因素之一;同时,SNMP还是Internet主机上最常见的服务之一。特别地,SNMP服务通常在位于网络边缘的设备(防火墙保护圈之外的设备)上运行,进一步加剧了SNMP带来的风险。这一切听起来出人意料,但其实事情不应该是这样的。
SNMP开发于九十年代早期,其目的是简化大型网络中设备的管理和的获取。许多与网络有关的软件包,如HP的Open&View和Nortel&Networks的Optivity&Network&Management&System,还有Multi&Router&Traffic&Grapher(MRTG)之类的免费软件,都用SNMP服务来简化网络的管理和维护。
由于SNMP的效果实在太好了,所以网络硬件厂商开始把SNMP加入到它们制造的每一台设备。今天,各种网络设备上都可以看到默认启用的SNMP服务,从交换机到路由器,从防火墙到网络打印机,无一例外。
仅仅是分布广泛还不足以造成威胁,问题是许多厂商安装的SNMP都采用了默认的通信字符串(例如密码),这些通信字符串是程序获取设备信息和修改配置必不可少的。采用默认通信字符串的好处是网络上的软件可以直接访问设备,无需经过复杂的配置。
通信字符串主要包含两类命令:GET命令,SET命令。GET命令从设备读取数据,这些数据通常是操作参数,例如连接状态、接口名称等。SET命令允许设置设备的某些参数,这类功能一般有限制,例如关闭某个网络接口、修改路由器参数等功能。但很显然,GET、SET命令都可能被用于拒绝服务攻击(DoS)和恶意修改网络参数。
最常见的默认通信字符串是public(只读)和private(读/写),除此之外还有许多厂商私有的默认通信字符串。几乎所有运行SNMP的网络设备上,都可以找到某种形式的默认通信字符串。
SNMP2.0和SNMP1.0的安全机制比较脆弱,通信不加密,所有通信字符串和数据都以明文形式发送。攻击者一旦捕获了网络通信,就可以利用各种嗅探工具直接获取通信字符串,即使用户改变了通信字符串的默认值也无济于事。
近几年才出现的SNMP3.0解决了一部分问题。为保护通信字符串,SNMP3.0使用DES(DataEncryptionStandard)算法加密数据通信;另外,SNMP3.0还能够用MD5和SHA(SecureHashAlgorithm)技术验证节点的标识符,从而防止攻击者冒充管理节点的身份操作网络。
虽然SNMP3.0出现已经有一段时间了,但自从发布以来还没有广泛应用。如果设备是2012年以前的产品,很可能根本不支持SNMP3.0;甚至有些较新的设备也只有SNMP2.0或SNMP1.0。
即使设备已经支持SNMP3.0,许多厂商使用的还是标准的通信字符串,这些字符串对黑客组织来说根本不是秘密。因此,虽然SNMP3.0比以前的版本提供了更多的安全特性,如果配置不当,其实际效果仍旧有限。
要避免SNMP服务带来的安全风险,最彻底的办法是禁用SNMP。如果你没有用SNMP来管理网络,那就没有必要运行它;如果你不清楚是否有必要运行SNMP,很可能实际上不需要。即使你打算以后使用SNMP,只要现在没有用,也应该先禁用SNMP,直到确实需要使用SNMP时才启用它。
下面列出了如何在常见的平台上禁用。Windows&XP和Windows&2000
在XP和Win2K中,右击“我的电脑”,选择“管理”。展开“服务和应用程序”、“服务”,从服务的清单中选择SNMP服务,停止该服务。然后打开服务的“属性”对话框,将启动类型改为“禁用”(按照微软的默认设置,Win2K/XP默认不安装SNMP服务,但许多软件会自动安装该服务)。WindowsNT4.0
选择“开始”→“设置”,打开服务设置程序,在服务清单中选择SNMP服务,停止该服务,然后将它的启动类型改为禁用。Windows9x
打开控制面板的网络设置程序,在“配置”页中,从已安装的组件清单中选择“MicrosoftSNMP代理”,点击“删除”。检查HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run注册键,确认不存在snmp.exe。Cisco&Systems硬件
对于Cisco的网络硬件,执行“noSNMP-server”命令禁用SNMP服务。如果要检查SNMP是否关闭,可执行“showSNMP”命令。这些命令只适用于运行CiscoIOS的平台;对于非IOS的Cisco设备,请参考随机文档。HP硬件
对于所有使用Jet&Direct卡(绝大部分HP网络打印机都使用它)的HP网络设备,用telnet连接到Jet&Direct卡的IP地址,然后执行下面的命令:
SNMP-config:0
这些命令将关闭设备的SNMP服务。但必须注意的是,禁用SNMP服务会影响服务的发现操作以及利用SNMP获取设备状态的端口监视机制。RedHatLinux
对于RedHatLinux,可以用Linuxconf工具从自动启动的服务清单中删除SNMP,或者直接从/etc/services文件删除启动SNMP的行。对于其他Linux系统,操作方法应该也相似。
保障SNMP的安全
如果某些设备确实有必要运行SNMP,则必须保障这些设备的安全。首先要做的是确定哪些设备正在运行SNMP服务。除非定期对整个网络进行端口扫描,全面掌握各台机器、设备上运行的服务,否则的话,很有可能遗漏一、二个SNMP服务。特别需要注意的是,网络交换机、打印机之类的设备同样也会运行SNMP服务。确定SNMP服务的运行情况后,再采取下面的措施保障服务安全。加载SNMP服务的补丁
安装SNMP服务的补丁,将SNMP服务升级到2.0或更高的版本。联系设备的制造商,了解有关安全漏洞和升级补丁的情况。保护SNMP通信
一个很重要的保护措施是修改所有默认的通信字符串。根据设备文档的说明,逐一检查、修改各个标准的、非标准的通信字符串,不要遗漏任何一项,必要时可以联系制造商获取详细的说明。过滤SNMP
另一个可以采用的保护措施是在网络边界上过滤SNMP通信和请求,即在防火墙或边界路由器上,阻塞SNMP请求使用的端口。标准的SNMP服务使用161和162端口,厂商私有的实现一般使用199、391、705和1993端口。禁用这些端口通信后,外部网络访问内部网络的能力就受到了限制;另外,在内部网络的路由器上,应该编写一个ACL,只允许某个特定的可信任的SNMP管理系统操作SNMP。例如,下面的ACL只允许来自(或者走向)SNMP管理系统的SNMP通信,限制网络上的所有其他SNMP通信:
access-list&100&permit&iphost&w.x.y&any
access-list&100&deny&udp&any&any&eq&snmp
access-list&100&deny&udp&any&any&eq&snmp&trap
access-list&100&permit&ip&any&any
这个ACL的第一行定义了可信任管理系统(w.x.y)。利用下面的命令可以将上述ACL应用到所有网络接口:
interface&serial0
ip&access-group&100&in
总之,SNMP的发明代表着网络管理的一大进步,现在它仍是高效管理大型网络的有力工具。然而,SNMP的早期版本天生缺乏安全性,即使最新的版本同样也存在问题。就象网络上运行的其他服务一样,SNMP服务的安全性也是不可忽视的。不要盲目地肯定网络上没有运行SNMP服务,也许它就躲藏在某个设备上。那些必不可少的网络服务已经有太多让人担忧的安全问题,所以最好关闭SNMP之类并非必需的服务——至少尽量设法保障其安全。
数据/SNMP协议
snmp协议的细节简单网络管理协议(SNMP)是1990年之后TCP/IP网络中应用最为广泛的网络管理协议。1990年5月,RFC1157定义了SNMP(simplenetworkmanagementprotocol)的第一个版本SNMPv1。RFC1157和另一个关于管理信息的文件RFC1155一起,提供了一种监控和管理计算机网络的系统方法。因此,SNMP得到了广泛应用,并成为网络管理的事实上的标准。
SNMP在90年代初得到了迅猛发展,同时也暴露出了明显的不足,如,难以实现大量的数据传输,缺少身份验证(Authentication)和加密(Privacy)机制。因此,1993年发布了SNMPv2,具有以下特点:支持分布式网络管理扩展了数据类型可以实现大量数据的同时传输,提高了和性能丰富了故障处理能力增加了集合处理功能加强了数据定义语言
信息库/SNMP协议
管理信息库MIB指明了网络元素所维持的变量(即能够被管理进程查询和设置的信息)。MIB给出了一个网络中所有可能的被管理对象的集合的数据结构。SNMP的管理信息库采用和域名系统DNS相似的树型结构,它的根在最上面,根没有名字。图1画的是管理信息库的一部分,它又称为对象命名树(objectnamingtree)。
对象命名树的顶级对象有三个,即ISO、ITU-T和这两个组织的联合体。在ISO的下面有4个结点,其中的一个(标号3)是被标识的组织。在其下面有一个dod的子树(标号是6),再下面就是Internet(标号是1)。在只讨论Internet中的对象时,可只画出Internet以下的子树(图中带阴影的虚线方框),并在Internet结点旁边标注上{1.3.6.1}即可。
在Internet结点下面的第二个结点是mgmt(管理),标号是2。再下面是管理信息库,原先的结点名是mib。1991年定义了新的版本MIB-II,故结点名现改为mib-2,其标识为{1.3.6.1.2.1},或{Internet(1).2.1}。这种标识为对象标识符。
最初的结点mib将其所管理的信息分为8个类别,见图2。现在demib-2所包含的信息类别已超过40个 。
应当指出,MIB的定义与具体的网络管理协议无关,这对于厂商和用户都有利。厂商可以在产品(如路由器)中包含SNMP代理软件,并保证在定义新的MIB项目后该软件仍遵守标准。用户可以使用同一网络管理客户软件来管理具有不同版本的MIB的多个路由器。当然,一个没有新的MIB项目的路由器不能提供这些项目的信息。
这里要提一下MIB中的对象{1.3.6.1.4.1},即enterprises(企业),其所属结点数已超过3000。例如IBM为{1.3.6.1.4.1.2},Cisco为{1.3.6.1.4.1.9},Novell为{1.3.6.1.4.1.23}等。
查询/SNMP协议
作用简述SNMP是"SimpleNetworkManagementProtocol"的缩写,中文含义是"简单网络管理协议",这个协议的作用和详细情况,各位可以参考有关资料.这里只介绍针对这个协议进行状态查询的工具软件Snmputilg.exe.也是支持工具目录中所提供的.至于用途,不外乎是给系统管理员提供关于SNMP方面的信息,便于在排除故障的时候当做参考.打开工具显示界面之后,你就可以用来执行诸如GET,GET-NEXT等等操作或进行有关的设置.另外,这个工具也能将数据保存到剪贴板,或将数据保存为以逗号为结束符号的文本文件.在使用中应当注意:即使多数对象的都使用了默认的ID标识(数值),你也要谨慎地使用SNMPSET命令,因为不正确地使用这个命令之后,可能导致网络名称资源方面的问题或是在引起连通方面的问题。使用方法1.启动程序:在windows2000的环境中,点击"开始-&运行",在编辑框中键入snmputilg然后回车或点击"确定"。
2.和以前遇到的不同,Snmputilg.exe是一个图形界面的工具,尽管执行程序的时候可以使用命令行控制窗口打开它,但实际启动成功之后出现的界面仍然是图形的
3.工具启动后,Node编辑框中显示的是默认的回送地址,地址值是127.0.0.1;CurrentOID指的是"当前对象标识符",标识是windows系统中用来代表一个对象的数字,每个标识都是整个系统中唯一的,也就是说,标识不会、也不允许重复.图中显示的值是.1.3.6.1.2.1.public是community一项的默认选择.上面所介绍的这些项目也可选定别的值。
4.如果选择了别的系统的IP地址,则必须运行SNMP服务,而目标系统必须配置好网络访问的地址,所谓配置,包括地址设置和权限打开.同时,所需要的辅助工具也应当具备或运行.缺省情况下,windows2000对所有另外系统的IP地址都是允许访问的。
5.另一个问题是community,当选定community的值时,一要注意它所代表的对象必须存在,二要注意其"可读"属性只有获准许可之后才能进行读操作.三要注意这个项目在windows系列的不同版本中,对访问地址的限制可能不一样。
6.凡是SNMP可以执行的功能(SNMPFunctiontoExecute),在图中下拉组合框中都已经列出,可供选择.选择好之后,请鼠标点击ExecuteCommand按钮来执行对应的操作。
以下是这些操作的功能简介:
GETthevalueofthecurrentobjectidentifier:得到当前对象的ID标识数值
GETtheNEXTvalueafterthecurrentobjectidentifier(thisisthedefault):得到紧接当前对象之后的下一个对象的ID标识数值(这是默认的)
GETtheNEXT20valuesafterthecurrentobjectidentifier:得到当前对象之后的20个对象的ID标识数值
GETallvaluesfromobjectidentifierdown(WALKthetree):得到从当前对象往下的所有对象的ID标识数值
WALKthetreefromWINSvaluesdown:从WINS值往下漫游目录
WALKthetreefromDHCPvaluesdown:从DHCP值往下漫游目录
WALKthetreefromLANMANvaluesdown:从LANMAN值往下漫游目录
WALKthetreefromMIB-IIdown(InternetMIB):从MIB-II往下漫游目录
7.显示结果含义解释:
这些结果可以清除,也可以保存或更新,要实现上述功能,可以使用菜单中对应的操作,具体地说,这些操作包括:
将一个或多个结果拷贝入剪贴板.
删除现在列出的所有内容.
清除已经执行过的所有的命令.
请求记录当前已经选定的项目.
产生一个文本文件,用该文件保存所有的记录的映像
编辑或设置某个对象的标识.在使用这个操作时要谨慎,因为一旦进行了不正确地设置,将可能导致网络名称资源方面的问题或是在引起连通方面的问题.
协议操作/SNMP协议
SNMPv2标准的核心就是通信协议———它是一个请求/应答式的协议。
这个协议提供了在manager与agent、manager与manager之间交换管理信息的直观、基本的方法。
每条SNMPv2的报文都由一些域构成:
如果发送方、接收方的两个Party都采用了验证(authentication)机制,它就包含与验证有关的信息;否则它为空(取NULL)。验证的过程如下:发送方和接收方的Party都分别有一个验证用的密钥(secretkey)和一个验证用的算法。报文发送前,发送方先将密钥值填入图中digest域,作为报文的前缀。然后根据验证算法,对报文中digest域以后(包括digest域)的报文数据进行计算,计算出一个摘要值(digest),再用摘要值取代密钥,填入报文中的digest域。接收方收到报文后,先将报文中的摘要值取出来,暂存在一个位置,然后用发送方的密钥放入报文中的digest。将这两个摘要值进行比较,如果一样,就证明发送方确实是srcParty域中所指明的那个Party,报文是合法的;如果不一样,接收方断定发送方非法。验证机制可以防止非法用户"冒充"某个合法Party来进行破坏。
authInfo域中还包含两个时间戳(timestamp),用于发送方与接收方之间的同步,以防止报文被截获和重发。
SNMPv2的另一大改进是可以对通信报文进行加密,以防止监听者窃取报文内容。除了privDst域外,报文的其余部分可以被加密。发送方与接收方采用同样的加密算法(如DES)。
通信报文可以不加任何安全保护,或只进行验证,也可以二者都进行。
OSI/SNMP协议
在CLTS上的映射
在CLTS[7,8]上的SNMP映射是直通方式的。步骤原理和UDP采用的相同。注意CLTS和服务都是通过包含了全部地址信息的UDP信息传输包来提供的。因此,[1]中的“传输地址”,映射在CLTS上的SNMP仅仅是一个传输选项和网络地址。
应该注意到,正如[1,5]中描述的那样,映射在面向非连接的传输服务上的SNMP和SNMP的结构原理是完全一致的。然而,CLTS本身既可以采用一个面向无连接方式,又可以采用面向连接的网络服务方式实现。在这种映射中描述的映射支持任意实现方式。(当提供所有网络服务时,应该以CLNS为实现基础。)
不象Internet协议组,OSI没有使用周知口。当然,多路分解技术基于“”发生,“选择器”是具有局部重要意义的不透明八位字串。为了照顾基于CLTS的可互操作的SNMP实现,定义四个选择器是必要的。当CLTS采用无连接模式的网络服务来提供反向SNMP传输时,应该采用由6个ASCII字符组成的“snmp-l”传输选择器;按照约定,会发送一个SNMP中断给一个正在监听由7个ASCII字符组成的“snmp-l”传输选择器的SNMP管理器。当CLTS采用面向连接的网络服务来提供反向SNMP传输时,应该采用由6个ASCII字符组成“snmp-o”传输选择器;按照约定,会发送一个SNMP中断给一个正在监听由7个ASCII字符组成的“snmp-o”传输选择器的SNMP管理器。
当SNMP中断在CLTS上发送时,Trap-PDU中的代理地址字段包含了IP地址“0.0.0.0”。SNMP管理器可以基于由传输服务提供的信息(也就是源自T-UNIT-DATA.INDICATION基本数据单元的)探知陷阱的来源。
最大消息尺寸
一个在OSI上运行SNMP的实体应该准备好接收大小至少484个字节的消息。鼓励应用随时可能发生的更大的数值。
作用/SNMP协议
SNMP是1990年之后最常用的网络管理协议。SNMP被设计成与协议无关,所以它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。SNMP是一系列协议组和规范(见下表),它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。
现在,几乎所有的网络设备生产厂家都实现了对SNMP的支持。领导潮流的SNMP是一个从网络上的设备收集管理信息的公用通信协议。设备的管理者收集这些信息并记录在管理信息库(MIB)中。这些信息报告设备的特性、数据吞吐量、通信超载和错误等。MIB有公共的格式,所以来自多个厂商的SNMP管理工具可以收集MIB信息,在管理控制台上呈现给系统管理员。
通过将SNMP嵌入数据通信设备,如路由器、交换机或集线器中,就可以从一个中心站管理这些设备,并以图形方式查看信息。现在可获取的很多管理应用程序通常可在大多数当前使用的操作系统下运行,如Windows95、Windows98、WindowsNT和不同版本UNIX的等。
一个被管理的设备有一个管理代理,它负责向管理站请求信息和动作,代理还可以借助于陷阱为管理站主动提供信息,因此,一些关键的网络设备(如集线器、路由器、交换机等)提供这一管理代理,又称SNMP代理,以便通过SNMP管理站进行管理。
协议栈/SNMP协议
网络设备agent常用库:net-snmp——编写;snmp++——C、C++编写
网管管理端snmp&manager常用库:ObjectSNMP——Java编写,所有平台;WinSNMP——WFC库,Windows平台
&|&相关影像
互动百科的词条(含所附图片)系由网友上传,如果涉嫌侵权,请与客服联系,我们将按照法律之相关规定及时进行处理。未经许可,禁止商业网站等复制、抓取本站内容;合理使用者,请注明来源于。
登录后使用互动百科的服务,将会得到个性化的提示和帮助,还有机会和专业认证智愿者沟通。
此词条还可添加&
编辑次数:9次
参与编辑人数:5位
最近更新时间: 14:41:20
认领可获得以下专属权利:
贡献光荣榜篇一:SNMP协议考试题 一、单项选择题 1、 SNMP协议应用的传输层协议为(B) A、TCP B、UDP C、SNMP D、IP 2、下列哪些不是snmp的报文?( D ) A、Get-request
B、Get-next-request C、Set-requestD、 Set-next-request 3、下列不属于网管的五个基本功能的是______。(B) A、拓扑管理
B、分级管理
C、性能管理 D、故障管理
E、安全管理
F、配置管理 4、 以下关于SNMP(Simple Network Management Protocol)说法错误的是_____。 (D) A、目标是保证管理信息在任意两点中传送,便于网络管理员在网络上的 任何节点检索信息,进行修改,寻找故障 B、它采用轮询机制,提供最基本的功能集 C、易于扩展,可自定义MIB或者SMI D、它要求可靠的传输层协议TCP 5、 可以发出SNMP GetRequest的网络实体是(B)。 A、Agent
B、Manager C、Client
D、以上都不对 6、 Agent是承载在(
)之上,通过(
)号端口进行通讯。(C) A、TCP,161B、TCP,162 C、UDP,161D、UDP,162 7、 TRAP上报是通过( )的()端口(B) A、UDP,161B、UDP,162 C、TCP,161D、TCP,162 8、不通过SNMP和网管系统通信的设备有 。(E) A、ISN8850 B、Radium 8750 C、MA(MA5100、MA5200、MA5201) D、A8010 系列(IPP和NAS) E、窄带HONET
二、多项选择题 1、
以下属于拓扑管理功能的有(ABCD) A、 增删设备或子网 B、查看节点、链路或子网的状态 C、 通过定时轮询或手动启动对任一设备的状态或配置数据轮询 D、实时刷新拓扑显示数据。 2、 以下涉及SNMP协议本身安全性方面的有(BC) A、要对某设备操作时,要求输入用户名和口令 B、SNMP
community C、访问控制3、 以下属于SNMP
PDU的是(ABCDF) A、GetRequest PDU B、GetNextRequest PDU C、GetResponse PDU D、SetRequest PDU E、SetResponse PDU F、Trap PDU 4、 以下对SNMP
V1的描述错误的是(FG) A、被管功能简单,操作种类少,易于实现 B、易于扩展 C、不适合管理大型网络 D、不适合检索大数据块 E、不支持manager到manager间的通信 F、安全性较高 G、可靠性较高 5、 Agent是承载在()之上,通过()号端口进行通讯。(C) A、TCP,161 B、TCP,162 C、UDP,161D、UDP,162 6、 SNMP报文的格式中包括下列哪些?( ABC ) A、版本号 B、团体名
C、协议数据单元D、优先级 7、 在SNMP协议中,NMS(Network Management Station) 向代理(Agent)发 出的报文有哪些(ABC) A、GETB、GET NEXT
C、SET D、REQUEST 8、下面关于N2000模块结构的说法哪些是正确的
。(ABCD) A、N2000采用的网管平台统一规划为iMAP网管平台 B、iManager N2000综合网管系统的软件模块包括网管平台模块和相应的 应用软件模块 C、和设备的接口适配模块主要由网管平台模块提供 D、安装网管系统时可以根据设备选择相应的子系统模块安装 9、 综合网管系统目前支持的操作系统有_____(ABC) A、SUN的Solaris操作系统 B、IBM的AIX操作系统 C、HP的UX操作系统 D、OS2 E、WINDOWS 10、综合网管系统目前支持的数据库有____(ABC) A、SYBASE B、DB2 C、ORACLE D、FOXBASE 11、我司宽带网络产品通过SNMP和网管系统通信的设备有( ABCD )。 A、ISN8850 B、Rudium 8750 C、MA(MA5100、MA5200) D、MD5500E、A8010 系列(IPP和NAS) F、窄带HONET G、B型机 12、网管的基本功能是__ABCD____(ABCD) A、拓扑管理 B、配置管理 C、性能管理 D、故障管理 E、安全管理 F、分级管理 13、网络管理也简称网管,它的功能可概括为OAM&P,具体指的是____。( ABCD ) A、O是OPERATION,A是ADMINISTRATION,M是MAINTENANCE,P是PROVISIONNING B、运行、管理、维护、服务提供 C、运行包括网络的计费和通信量管理 D、维护包括报警和性能监控、测试和故障修复等
三、填空题 1、 一般说来,网管系统分为五大模块,他们是:配置管理模块、性能监控模块、故障管理模块、拓扑管理模块、安全管理模块。 2、
SNMP即 简单网络管理协议 ,在该协议中规定的参与实体有两种,一种 是
网管工作站(NMS) ,另一种是
代理(Agent) 。 3、 MIB又被称为管理信息库,它是所有被管对象的抽象集合,它按树形结构 组织,称为MIB树。每个被管对象对应树形结构的一个叶子结点,称为一 个object或一个MIB。 MIB树是棵静态树,也就是说,MIB树形结构在设备启动时完成初始化,以后Manager只是检索或修改每个被管对象的内容。 网管通过读写MIB中的被管对象实现对设备的管理。 4、 SNMP有三种基本操作,它们是:
GET-REQUEST
、GET-NEXT-REQUEST
、 SET-REQUEST 。 5、 Trap是被管设备遇到紧急情况时主动向网管站发送的消息。网管站收到 trap PDU后要将起变量对偶表中的内容显示出来。一些常用的trap类型有冷启动、热启动、链路状态发生变化等。
四、判断题
五、简答题 1、 请简述在SNMP协议的运行过程。 答: 驻留在被管设备上的AGENT从UDP端口161接受来自网管站的串行化报 文,经解码、团体名验证、分析得到管理变量在MIB树中对应的节点,从 相应的模块中得到管理变量的值,再形成响应报文,编码发送回网管站。 网管站得到响应报文后,再经同样的处理,最终显示结果。 2、如果网管工作站能ping通网络中的一台设备,但无法管理该设备,会是什 么原因?简叙理由。 答:原因有可能是该设备上没有网管的代理,或者网管工作站上的网管程序没有实现管理该设备的MIB,也可能是双方实现的MIB不匹配。 因为从SNMP协议上来说,网管工作站和代理是网管系统的两个部分,而且必须都对应实现了被管设备的同一版本的MIB,任何一方没有实现或双方使用的MIB不一致都将导致无法管理受管设备。篇二:基于SNMP协议的测试指导 基于SNMP协议的I2000版本测试指导 胡修文 KF-6-30 摘
要Abstract :本文结合I2000 WAPGW 版本的系统测试,介绍了SNMP协议的网管版本的 测试方法和相关测试工具的使用方法,给刚开始或即将测试SNMP协议网管版本的同事一个指引。 1 引言 WAP网关设备纳入I2000管理时采用的管理协议是SNMP协议,它不同于以前各个设备所使用的窄带MML协议、智能MML协议,虽然I2000的体系结构没有变化,但随着管理协议的变化,我们测试的手段和方法也有所不同了。本文以WAP网关设备的网管版本为例,总结了测试SNMP协议网管版本的一些方法,目的是使新接触此类网管版本的同事少走弯路,有所借鉴。 2 SNMP协议简介 首先我们必须了解一些SNMP协议的知识,这里简单介绍一些SNMP协议的基础知识,内容主要来自 《TCP/IP详解卷一》,更多内容请参考该红宝书。 SNMP即简单网络管理协议,目前有3个版本:V1、V2、V3,WAP网关用的是SNMP V3。网络管理包括管理进程Manager(如I2000)和设备代理进程Agent两部分,SNMP就是管理进程和代理进程之间的通信协议。它们之间的通信有两种方式,一种是管理进程向代理进程发出请求,询问一个具体的参数值;另外一种方式是代理进程主动向管理进程报告有某些重要的事件发生。此外,管理进程还可以改变代理进程的参数的值。 2.1 SNMP协议报文 管理进程和代理进程的交互有5种报文: 1、 get-request 操作:管理进程从代理进程处提取一个或多个参数值,简称 get; 2、 get-next-request 操作:管理进程从代理进程处提取一个或多个参数的下一个参数值,简称get-next; 3、 set-request 操作:管理进程设置代理进程的一个或多个参数值,简称 set; 4、 get-response 操作:代理进程返回的一个或多个参数值,是代理进程对前面3种操作的响应; 5、 trap 操作:代理进程主动发出的报文,通知管理进程有某些事情发生。如设备侧产生的告 警。 如下图所示: 图1
SNMP的5种操作 2.2 管理信息结构SMI SMI(Structure of Management Information)是关于MIB的一套公用的结构和表示符号。我们主要关心的是一些数据类型: 1、 INTEGER。整型。 2、 OCTER STRING。0或多个8bit字节,每个字节值在0~255之间。 3、 DisplayString。0或多个8bit字节,但是每个字节必须是ASCII码。 4、 OBJECT IDENTIFIER。对象标识符(OID),是一个整数序列,以“.”分隔,构成一个树型结构。如下图: .1.1.1.1.1.1.1 对象标识符OID 每一个节点有一个文字名,主要是为了阅读方便,在管理进程和代理进程的交互报文中,MIB对 象是以对象标识OID来命名的。其中 iso.org.dod.internet.private.enterprises(1.3.6.1.4.1)是给各厂家自定义预留的,如华为WAP GW的对象标识符OID是:1.3.6.1.4.1. (iso.org.dod.internet.private.enterprises.huawei.products.hwinfoX)。 5、 NULL。代表相关的变量没有值。 6、 IPAddress。IP地址。 7、 Counter。非负的整数,从0递增到2的32次方-1,达到最大值后归0。 8、 Gauge。非负的整数,取值的范围为从0到4 294 976 295(或增或减),达到最大值后锁定直到复位。 9、 TimeTicks。时间计数器,以0.01秒为单位递增。 10、 SEQUENCE。类似于Struture类型。 11、 SEQUENCE OF。向量。 2.3 管理信息库MIB 管理信息库MIB(Management Information Base)包含所有代理进程的所有可被查询和修改的参数。这些参数变量可以是只读的或可读可写的。变量可分为两类:简单变量和表格(table)变量。 2.4 实例标识 当对MIB变量进行操作,如查询和设置变量的值时,必须对MIB的每个变量进行标识,也就是MIB对象的实例(Instance)。只有叶子节点是可以操作的。这些节点可以是简单变量,其实例标识是在对象标识后面添加“.0”来处理;也可以是表格,MIB表格根据其对象标识按照字典的顺序进行排 序,即“先列后行”的顺序。 3 MIB Browser工具的使用 MIB Browser工具用于查询和设置设备Agent上 的MIB变量,是测试SNMP协议网管版本不可或缺的 工具。我们使用的是MG-SOFT MIB Browser V8.0版 本。 3.1 编译MIB文件 使用MIB Browser查询和设置设备Agent上的MIB变量,首先要有与这个设备对应的MIB文件。如果提供的是“.bui”文件,则要先进行Build、Compile后才能使用。比如现在提供的是文件“HUAWEI-InfoX-WAPGW().bui”,双击该文件,就会自动打开MIB Builder:
3.2 连接SNMP Agent 现在我们可以使用MIB Browser了。首先要连接SNMP Agent。 1、在界面Query页签中,输入SNMP Agent的IP地址 .1.1.1.1.1.1.1 MIB Builder 选择工具栏中的“Export”图标,并设置保存路径和文件名,就可以Build成“.my”文件。 .1.1.1.1.1.1.2 Build MIB文件 对于“.my”文件还需进行编译(Compile)。Build成“.my”文件后,会自动运行MIB Compiler。选择工具栏左边第一个图标“Compile MIB file”,选择打开刚才生成的“.my”文件,就可以编译并生成“.smidb”文件,选择路径、文件名并保存,则这个文件就可以使用了。一般保存在“安装路径\MG-SOFT\MIB Browser\MIB\SMIDB”目录下。 .1.1.1.1.1.1.3 Compile MIB文件
.1.1.1.1.1.1.4 Contact SNMP Agent 2、输入SNMP协议信息 这在SNMP中用来保证安全性。点击上图IP地址右边的榔头,会弹出对话框: .1.1.1.1.1.1.5 SNMP协议信息 首先要选择SNMP协议的版 本,有v1、v2c、v3三个版本,主要看设备侧使用的是哪个版本,不同的版本要求输入的参数也不同。WAPGW用的是SNMPv3,因此我们选择这个版本。再点击“Edit User”按钮,出现以下对话框:.1.1.1.1.1.1.6 SNMPv3安全参数 需要输入SNMPv3安全参数,分别输入User profile name、Security user name、Context name、SNMP port number。其中WAPGW设备提供的端口号是7161。Authentication protocol选择HMAC-MD5,并点右边的按钮输入口令,如现在是infox。 要注意的是WAPGW 的Agent下属各个设备节点的Context name是不同的,输入各个设备节点各自的Context name,才能查询和设置相应设备节点的变量。所以每次查询不同的设备节点时都需要编辑一下参数,修改相应的Context name。这点后面还会谈到。 填好这些参数,之后OK,就会去连接SNMP Agent,或者点工具栏左边第一个图标Contact。如果Agent正常,就可以连接上了。只有Contact SNMP Agent之后,才可以进行其他的操作,如get、set等。 3.3 加载MIB文件 需要加载设备相应的MIB文件,才能解析设备Agent的各个变量。 切换到界面上的MIB页,有上下两栏,其中上方是已经加载的MIB文件,下面则是可以加载的MIB文件。在下面可以看到我们先前编译过的HUAWEI WAPGW的MIB(如果没有,点一下中间的Refresh按钮),点击中间的箭头,将这两个MIB移动到上部,就完成了加载。 .1.1.1.1.1.1.7 Load MIB File 这时我们再回到Query页面,点开MIB树,就可以看见WAPGW的各个MIB节点了: .1.1.1.1.1.1.8 MIB Tree 3.4 查询MIB变量 查询设备Agent上的MIB变量可以有几种方法:Walk、Get、Get-next等。这些操作都可以在MIB树上各节点的右键菜单中选择。 1、 Walk操作:Walk是遍历一个节点所有变量的操作,其实质就是调用Get-next操作遍历查询一个节点下的所有变量。如果这个节点不是叶子节点,则遍历它的所有子节点。 .1.1.1.1.1.1.9 Walk操作 2、 Get操作:get操作一般是用于查询叶子节点表示的变量。MIB树中叶子节点的图标有两种:
表示简单变量;表示table变量。如果是 table变量则用Walk操作更方便一些,因为table变量可能有多条记录。 3.5 设置MIB变量 设置MIB变量用Set操作,当然这需要这个变量是可写的或可创建的。选择叶子节点右键菜单中的Set后,在对话框中输入设置值即可: .1.1.1.1.1.1.10 Set操作 3.6 查看表格 MIB变量有的是表格变量,一个表格有多条记录。例如WAPGW有一个节点是 hwinfoXAccessNodeEntry,包含Agent下的各个设备节点的信息: .1.1.1.1.1.1.11 MIB中的Table hwinfoXAccessNodeEntry下的各个节点就是表格中的各个列,每一列都可能有多条记录。可以 通过节点右键菜单中的“Table View”来查看整个表格的内容: .1.1.1.1.1.1.12 查看表格 表格内容如下(分左右两部分): .1.1.1.1.1.1.13 WAPGW节点信息表1
.1.1.1.1.1.1.14 WAPGW节点信息表2 前面提到,查询WAPGW Agent下各个设备节点的变量时都需要输入各个设备相应的 ContextName,各设备的ContextName就可以在上面这一张表格里找到,如图16。可以Copy表格内容加 以利用。 3.7 查找MIB对象 MIB树中各个节点对象都是用文字标识的,我们可以查看节点的OID,通过右键菜单中的“Prompt篇三:SNMP小测试 SNMP小测试 1. SNMP是什么,阐述它的用途和意义? SNMP是一套简单网络管理协议。是基于简单网关监视协议定义的,它是标准的用于IP网络节点管理的协议。它主要包括监视和控制变量集以及用于监视设备的两种数据格式SMI和MIB,能够远程管理支持此协议的网络设备,监视网络状态,修改网络配置,接收报警信息等。
2. 简述SNMP的工作原理。 SNMP管理的网络主要包括三部分:网络管理系统(NMS)代理(Agent)以及被管理设备。SNMP采用的是C/S模式,通过NMS和代理之间的交互,对网络设备进行管理和维护。NMS对网络设备进行读写、设置的操作。代理接到指令后,然后从其他设备上其他协议模块中取得所要的管理变量的值,形成响应报文反馈给NMS。在一些紧急情况下,代理主动的发送trap报文。 3. SNMP中有哪些命令?各代表什么含义和作用? 主要有四种命令。 1.get-request 从代理处获取一个或者多个参数值 2.get-next-request从代理获取当前参数的下一个参数值 3.set-request 设置代理的参数值 4.get-response 代理返回的参数值,主要是以上三种操作的相应值 4. SNMPv1/v2c/v3的主要区别有哪些? SNMPv1是最初的版本,提供最小额度的网管服务。SMI和MIB比较简单,存在安全漏洞。采用团体名认证,是一种简单的请求/响应协议。 SNMPv2c是对SNMPv1功能的增强,报文格式PDU类型不同,Trap报文的格式也不同: 1. 增加了新的数据类型。Counter32、 Counter64。Unsigned32等。 2. 增加了新的操作类型。GetBulkRequest 和InformRequest。 3. 提供了更加丰富的错误代码,能够更加细致的区分错误。 4. 定义了新的MIB库(manager to manager),提供了对分布式管理结构的支持。 SNMPv3主要是在安全性进行了增强。添加了认证和加密(USM)和访问控制(VACM)。V3引入了基于用户的安全模型用于保证消息的安全以及基于视图的访问控制模型。 5. 设备的SNMP systemOID信息代表什么意义? 设备的厂商及其型号的唯一标识。一般来说enterprises后面的一串数字是为了区别生产厂商,以及厂商自定义的对于设备类型等的定义 6. 通过SNMP协议要成功获取到被管对象的某个OID节点信息需要满足哪些条件? 共同体、版本号、目的地址。其他的还包括超时、响应次数等。 7. 从图1、图2中的SNMP报文中你能提取到哪些信息?图1
图 2 图一可获取到当前版本为SNMPv1 共同体为public,pdu类型为响应信息,ID为OX,响应中无错误信息,响应信息的对象标识符以及其他的附加信息。 图二可获取到当前版本为SNMPv2c 共同体为public,pdu类型为响应信息,ID为OX,响应中无错误信息,get信息的对象标识符,无其他附加信息。 8. 通过SNMP如何获取设备的接口名称、类型、状态?如何打开/关闭指定的某个接口? 通过ifTable中ifname获取接口名称;ifType获取接口类型; 状态主要有两种:ifAdminStatus(期望状态)和ifQperStatus(当前状态) 首先在ObjectID末尾处添加 .+端口号,然后Set Value处设定所需状态。打开(1)/关闭 (2)/测试(3)。 9. 通过SNMP如何计算设备上接口的流入、流出速率(以Kbps为单位)? 通过ifTable表中获取ifInOctets的值,即为当前接口n流入总字节数,单位为Byte,记录当前时间T1,T2时再次获取ifInOctets的值。则流入速率为(M2-M1)*8/(T2-T1)*10-3Kbyte. 流出速率则为获取ifOutpOcetets的值,计算方法同上。 10. 通过SNMP怎样确定某个设备是多IP设备,这些IP被创建在哪些接口上,它属于哪些子 网? 通过ipAddressTable表信息通过ipAdEntAddr获取IP地址信息,如果出现多行IP地址,说明此设备为多IP设备,通过ifTable表中ifIndex和ifDescr获取端口的索引和详细信息。子网是通过获取IP地址以及掩码信息进行与运算之后获取。 11. 通过SNMP如何区分二层交换机、三层交换机以及路由器设备? 通过dot1dTpFdbTable表获取dot1dTpFdbAddress信息,如果有信息出现。说明此设备至少为二层交换机然后通过ipRouterTable表信息通过获取路由表信息,如果也出现路由表信息,则此设备为三层交换机,如果无路由信息,则为二级交换机。如果无交换表信息,只有路由表信息,则此设备为路由器设备。
12. SNMPserver能够接收到Agent发送的trap需要满足哪些条件? 首先保证Trap的能够正常发送。需要对trap要发送的目的地址,版本号,端口号,共同体进行正确配置。其次保证NMS能够正常接收trap。此时需要检查端口号以及共同体的配置是否正确。13. 尝试使用MIBbrowser监测192.168.60.117/118/215中一个设备的SNMP trap。 首先需要对trap要发送的目的地址(上述一个IP地址),版本号,端口号,共同体进行正确配置。其次保证NMS能够正常接收trap。此时需要检查端口号以及共同体的配置是否正确。
14. 在网络丢包率较高的环境下进行SNMP测试,通过配置哪些参数能获取到尽可能完整的被 管对象SNMP数据? 超时信息和重复次数 15.
如何判断设备通与不通 Ping网络通过之后,查看SNMP连接信息。 16. Trap有哪些类型? Coldstart、warmstart 、linkup、linkdown、authenticationFailure、egpNeighborLoss、enterpriseSpecific篇四:路由器中SNMP协议测试集规划与定义技术研究
路由器中SNMP协议测试集规划 与定义技术研究
级 二 ○ ○ 二 级 姓
名成 宇 萍 申请学位级别
业 计算机应用技术 指 导
教 师 曾华 教授
二○○五 年 九 月
路由器中SNMP协议测试集规划
级 二 ○ ○ 二 级 姓
名成 宇 萍 申请学位级别
业 计算机应用技术 指 导
教 师 曾华 教授
二○○五 年 九 月 Classified Index: TN393.06
Southwest Jiaotong University Master Degree Thesis
On Techniques of Test Suite Planning and Test Case Specification for SNMP Implementations in Routers
Grade: 2002 Candidate: Cheng Yuping Academic Degree Applied for: Master Speciality: Computer Application Supervisor: Prof. Zeng Huashen
September 2005 摘
要 路由器的测试技术涉及三方面的内容:测试方法研究、测试控制数据的描述/自动导出技术研究、测试系统的开发。本论文讨论的重点是如何对路由器中SNMP的测试控制数据集进行规划以及如何利用国际标准测试控制数据语言TTCN-3来定义/描述相关测试例。它是四川省网络通信技术重点实验室有关路由器的测试技术研究工作的组成部分之一。 第1章笔者首先简要讨论国内外路由器测试系统现状,指出路由器多端口并行测试技术存在的问题。然后介绍本研究工作的背景是四川省网络通信重点实验室的路由器多端口并发测试技术研究和系统的开发。开发中的路由器的多端口并发测试系统是具有上、下两级结构的分布式测试系统。上级系统处理系统配置、多端口间测试控制数据的指派、测试过程的管理和协调控制;下级为多个单端口或双端口测试系统。 第2章对SNMP,特别是SNMPv2协议进行了概要的介绍,然后对与SNMPv2有关的测试技术进行初步的讨论,为后续章节的讨论奠定基础。 第3、4章是笔者的主要工作,分别完成测试例生成两个重要步骤――测试集的规划和抽象测试例描述。第3章讨论SNMPv2协议测试集的规划原则,并按照归纳的规划原则对SNMPv2协议一致性测试集作出了详细的规划;第4章详细分析了如何利用TTCN-3对SNMPv2协议定义抽象测试集(ATS)。笔者在该章中,将探讨性地将SNMPv2协议测试分为四种类型:非参数标量测试、参数标量测试、列向量逐行测试和列向量抽取测试,分别给出每种测试的测试流程图和测试实例。第5章在对论文工作进行总结的基础上,对后续研究工作进行了分析和展望。 由于目前实验室的双端口测试器的开发工作尚未完成,因此未能进行编译并用于实际的测试。Internet的SNMP系列协议除与管理信息传输相关的协议本身外,还有与管理信息库(MIB)和远端监测(RMON)相关的文本,经过近20年的发展,相关协议已经更新为第3代,所涉及的RFC数量超过20个。笔者相信,笔者的工作将对后续的研究工作发挥借鉴作用。 关键词:路由器测试、测试集规划、测试集描述、SNMP、TTCN-3篇五:协议考试 判断: 1.没有完成两个数据包握手称为双向“握手”,是一种不安全的进程。( √ ) 6.区分服务也叫分用服务,传输层用于向上传送通信数据。
) A.BGPB.OSPFC.RIPD.IS-IS 7. DHCP工作于( c )。 A.网络层B.传输层C.应用层 D.链路层 A. pingB.ipconfig C.arpD.netstat 19. RIP协议规定在多长时间后把路由项定义为超时过期? () 7.带宽是一种跨网络信息数量的评估数据。( √
) 2.查阅网上对象所有域名和地址的术语称为统一资源8.绑定确认是一种必选数据。 ( ×
) 8. 必须要由网络管理员手动配置的是(
a )。 定位符URL。 ( ×
) 9.定界符是PDU的有效数据。 ( √
) A.静态路由B.直连路由 3.动态端口也叫临时端口。( √ ) 1.
ICMP是一种用于传输错误报告控制信息的协议。C.动态路由D.默认路由 4.用于描述DNS数据库段的数据是一种ASCII文本数据。(Y ) 9. OSPF协议使用(a)分组来保持与其邻居的连接。
( √ ) 2.
交换机工作于OSI模型的网络层。(N ) A.HelloB.Keepalive 5.SOCKS是一种Socket的实现机制。 ( ×
) 3. 某一主机IP地址为182.192.168.7,它属于C类网址。C.SPF(最短路径优先)D.LSU(链路状态更新) 6.区分服务也叫分用服务,传输层用于向上传送通信数( N) 10. RIP协议是基于(
b )的协议。 据。
) 4. 网络层传输的基本单位是帧。(N ) A.TCP B.UDPC.IPD.ICMP 7.RIPv2最多有15个网络直径,OSPFv2最多有128个5. 计算机与打印机之间的通信属于串行通信。(N )
11. IP组播地址是( d
)。 网络直径。 (
× ) 6. 网络带宽表示常传输介质允许通过的信号频带范围。A.A类地址B.B类地址C.C类地址D.D类地址 8.DHCP响应消息包含DHCP请求消息。( √ ) (N) 12. 一个子网网段地址为126.64.0.0掩码为9.定界符是PDU的有效数据( √
) 7. MAC地址是每台网络设备在网上的标识,因此网卡也 255.248.0.0的网络,它最大允许的主机地址是10.ARPA是一种与Mac地址及IP地址相关的一种协议。
有一个全球唯一的MAC 地址。( Y ) (c)。 ( ×
) 8. 同一子网上的二主机通信是根据IP 地址进行路由选A.126.64.255.254
B.126.224.0.5 11.地址请求是一种ARP服务请求。(
× ) 择,故必须配置路由器。(N) C.126.71.255.254D.126.63.255.255 12.可接收的使用策略AUP是一种格式文档策略。 9.
IP地址的唯一性是指任何接入互联网的计算机都13. 内部网关协议OSPF是一种广泛使用的基于(
√ ) 只能有一个IP地址。( N
) 协议。 13.Apple Talk是一种组安全策略协议。(
D类IP地址仅用于多投点数据传送。( Y)
A.链路状态算法B.距离-矢量算法 14.权威服务器是PKI中一种发放安全证书的服务器。选择 C.集中式路由算法D.固定路由算法 ( × ) 1. 在OSI参考模型中,在数据链路层之上的是(
c )。 14. 路由器转发分组是根据报文分组的()。 15.自治系统是一组单一管理权限下的路由器。( √
) A.物理层 B.应用层 C.网络层 D.传输层 A.端口号 B.MAC地址C.IP地址D.域名 16.区分服务也叫分用服务,传输层用于向上传送通信2. ARP请求报文属于(
b )。 15. 已知某个网络的掩码是255.255.248.0,那么下面属数据。
) A.单播 B.广播 C.多播D.组播 于同一网段的是 17.带宽是一种跨网络信息数量的评估数据。 ( √ ) 3. 从整个Internet的观点出发,(
c)方法可以有效的A.10.110.16.1和10.110.25.1 18.绑定确认是一种必选数据。 (
× ) 减少路由表的规模。 B.10.52.57.34和10.52.62.2 19.定界符是PDU的有效数据。 (
√ ) A.增加动态路由的更新频率 B.使用路由过滤策略 C.10.76.129.21和10.76.137.1 20.黑洞是数据包无记录丢失的网络节点。 ( √ ) C.路由聚合D.划分VLAN D.10.33.23.2和10.33.31.1 1.地址请求是一种ARP服务请求。( ×
) 4. 在TCP协议的报文中端口号代表某种服务类型,其中 16. IP报文中TTL的最大值为()。 2.可接收的使用策略AUP是一种格式文档策略。( √
) 25代表( b )服务。 A.50B.100C.200D.255 3.Apple Talk是一种组安全策略协议。( ×
A.FTPB.SMTPC.HTTP D.UDP 17. IP协议使用()字段指示各分片中的数据在原数据4.权威服务器是PKI中一种发放安全证书的服务器。5. 用于无盘工作站中发现其IP地址的协议是( b
)。 报中的位置。 ( ×
) A.ARPB.RARP
C.ICMP D.DHCP A.DFB.MFC.片偏移量D.校验和 5.自治系统是一组单一管理权限下的路由器。( √
a )是在自治系统(AS)之间传播路由的协议。 18. ()命令是基于ICMP协议实现的。 A.90s
B.120s C.180s D.240s 20.某端口的IP地址为172.16.7.131/26,则该IP地址所 在网络的广播地址是()。 A.172.16.7.255 B.172.16.7.129 C.172.16.7.191 D.172.16.7.252
d )之间传播路由的协议。 A.主机 B.子网
C.区域(area) D.自治系统 2.
整个Internet就是由通过(
c )互联的多个物理网络构成。 A.集线器B.网卡C.路由器D.网桥 3.
用于发现设备的IP地址的协议是(d)。 A.DHCP B.RARP
C.ICMPD.ARP 4.
路由器转发分组是根据报文分组的(
c )。 A.端口号
B.MAC地址C.IP地址
数据报分片重组的地点(
d )。 A.路由器 B.交换机C.源主机D.目的主机 6.
下面哪个协议被认为是面向连接的传输层协议( c)。 A.UDP
为了保证连接的可靠性,TCP通常采用( a
)。 A.三次握手法
B.窗口控制机制 C.自动重发机制D.端口机制 8.ARP应答报文属于(
a )。 A.单播 B.广播 C.多播
管理计算机通信的规则称为(
d )。 A.网络操作系统B.介质 C.服务 D.协议 有四个子网:196.199.48.0/24,196.199.49.0/24,196.199.50.0/24 ,196.199.51.0/24.将它们聚合为(
c )。 A.196.199.48.0/24 B.196.199.51.0/24 C.196.199.48.0/22D.196.199.51.0/22 12. 从整个Internet的观点出发,( c
)方法可以有效的减少路 由表的规模。 A.增加动态路由的更新频率
B.使用路由过滤策略 C.路由聚合D.划分VLAN13. 为了满足子网寻径的需要,路由表中应包含的元素有(
b)。 28. 在TCP/IP的传输层中,小于(
d )的端口号已保留和现有的服务 7. UDP的端口号分配有两种方式集中统一分配方式和动态分配方式 A.源地址、子网掩码、目的网络地址 B.目的网络地址、度量、下一跳地址 C.源地址、目的网络地址、下一跳地址 D.源地址、度量、下一跳地址 14. RIP工作于(c)。 A.网络层B.传输层C.应用层D.链路层 15. 在下列几组协议中,哪一组属于网络层协议?(
d ) A.IP和TCP B.ARP和TELNET C.FTP和UDP D.ICMP和IP 17. 应用程序PING发出的是(cd)报文。 A.TCP请求报文; B.TCP应答报文 C.ICMP请求报文
D.ICMP应答报文 18. UDP协议和TCP协议的共同之处有()。 A.流量控制B.重传机制 C.校验和
D.提供目的、源端口号 20. 在计算机网络中,主机及主机上运行的程序可以用(c)来标识。A.IP地址,主机地址B.程序名,IP地址。 C.IP地址,端口号D.IP地址,MAC地址。 21. 内部网关协议RIP是一种广泛使用的基于(
b )的协议。 A.链路状态算法B.距离矢量算法 C.集中式路由算法D.固定路由算法 22. 帧的数据字段内容是( b
)。 A.64字节B.网络层PDU C.第二层源地址
D.从应用层直接产生的数据 24. TCP连接使用( c
)来执行异常关闭。 A.紧急比特B.确认比特 C.复位比特D.同步比特 25. IP协议的核心是为了解决( b
)问题。 A.传输B.寻径C.封装
D.校验 26. 下列的协议中,属于TCP/IP协议结构的应用层是()。 A.UDP B.IP C.TCP D.Telnet 27. 负责电子邮件传输的应用层协议是(a)。 A.SMTP B. PPPC.IPD.FTP 16. 把邮件服务器上的邮件读取到本地硬盘中,使用的协议是a A.POP B.SMTP C.SNMP D.HTTP 对应,大于该数字的端口号可自由分配。 8. 路由表的建立和维护方式可以是静态的也可以是_____________动A.100B.99C.6 态的 29. IP 地址 126.1.1.2 属于___,其默认的子网掩码为()。 简答: A.B 类,255.255.0.0 B.A 类,255.0.0.0
1. 简述TCP与UDP之间的相同点和不同点。 请根据矢量-距离(Vector-Distance)路由算法给出路由器K更新C.C 类,255.255.0.0D.C 类,255.255.255.0 (1)相同点:TCP与UDP都是基于IP协议的传输协议。 后的路由表。(10分) 31. 下列MAC地址表示中,正确的是( d
)。 (2)不同点: 答: A.00-63-08-A6-AN-N4 B.202.196.2.10
a.TCP是面向连接的,而UDP是无连接的。 C.001D.00-60-08-A6-38-45 b.TCP在提高可靠性上采取了措施而UDP没有。
32.文件传输协议FTP默认的端口号是(
a )。 c.TCP适用于非实时性的数据传输,而UDP适用于实时性的数据传输。 A.21 B.23 C.25 D.80 2. 简述IP协议的主要功能?
33.下列对网络收敛最好的描述是(b)。 (1)无连接数据报的投递(数据结构,静态特性)
A.路由器共享管理配置改变所需要的时间,比如口令 (2)数据报寻径(选路,操作特性) B.当发生拓扑改变后,网络中的路由器更新它的路由表所需要(3)差错与报文控制(管理特性) . 的时间 3. 简述OSPF路由算法中4类路由器? C.一个自治系统内部的路由学到另一个自治系统的路由所需要内部路由器、区域边界路由器、骨干路由器
的时间 自制系统边界路由器 根据如图A-1所示的互联网,请给出路由器R的路由表。(10分)D.路由器运行不同的路由协议来更新路由表所需要的时间 4. 简述TCP/IP层次模型与OSI模型之间的对应关系。 34.某校园网的地址是202.100.192.0/18,要把该网络分成30个子(1)网络接口层(2)网际层(3)传输层(4)应用层 网,则子网掩码应该是(
c )。 分析题: A.255.255.200.0 B.255.255.224.0 1.假定网络中的路由器K的路由表有如下的项目: C.255.255.254.0 D.255.255.255.0 35. 下列哪项协议不支持CIDR和VLSM?( c)。 A.RIPv1
B.OSPF C.RIPv2
D.EIGRP 填空: 1 1. IP提供的数据传输是不可靠的,在丢失数据报的同时,IP规定 应该给源主机一个错误报告,这个工作是__ICMP____协议完成的。 2. ICMP报文分为三大类 差错报告类报文、请求/应答类报文和单向通知的控制类报文。 3. RIP协议为了保持路由信息的时效性,RIP使用三个定时器分别是_现在路由器K收到从路由器J发来的路由信息如下:更新定时器、过期定时器和刷新定时器。 4. IP报文的报文头最少有__20______个字节。 3/44 一个数据报总长度为3020字节(含首部长度20字节)。现在经过5. UDP的端口号分配有两种方式___客户端的端口__、和__服务器的一个网络传送,但此网络能够传送的最大数据长度为1220字节。(8分) 端口。试问: 6.RIP协议以UDP报文来封装自已的协议报文,协议号是____520_____。 (1) 应分为几个短些的数据报片?(3个) (2) 各数据报片的数据字段长度为何数值? 数据字段长度分别和600字节 (3) 各数据报片片偏移字段的值为何数值? 片偏移字段的值分别为0,150和300。 (4) 各数据报片MF标志应为何数值? MF字段的值分别为1,1,0。 4、假定网络中的路由器K的路由表有如下的项目答:源端口:1586
目的端口:53 用户数据报总长度:28字节
数据部分长度:28-8=20 字节 该数据报从客户发送给服务器的 使用UDP的这个服务器程序是DNS服务器。 简答题: 1、网络体系结构边界 UDP不保证 (3)对系统资源的要求TCP较多,UDP少; (4) TCP传输存在一定的延时,UDP响应速度稍微快一些 网络体系结构边界是计算机软件系统中区分网络通信软件系7、拥塞控制算法 6. 下图为一个IP数据报的截图,根据截图,回答后面的问题。(10分)统和操作系统软件,(2分)以及其内部各个协议软件之间功慢开始,拥塞避免,快重传,快恢复. 能划分的精确定义。网络体系结构主要存在两种边界:操作系8、单臂路由 统边界和协议边界。(4分) 2.用户数据报协议UDP为什么需要伪头部? 就是在路由器的物理接口上逻辑的划分出子接口,通常用于VLAN间的通信,也解决了物理接口不够用的情况。 答:(1)为了保证数据传输的质量,UDP的校验和提供了唯一9、三网合一 的对数据是否原封不动传送到目的的监督手段。通过在伪头部意指电信网、有线电视网和计算机通信网的相互渗透、互相兼的设置长度字段,使得它在校验和计算中出现了两次,从而允容、并逐步整合成为全世界统一的信息通信网络。数字化地球:许UDP两次检查数据是否已经正确到达目的地. 数字地球是按地理空间位置,以极高的分辨率(1米左右)对 (2)同时,源IP地址是根据IP层对路由的选择而定,标识大地进行选点抽样,将抽样点上的自然资源信息,社会资源信 (1)该IP数据报的总长度为: 1500 字节(2)该IP数据报内封装的协议为:ICMP (3)数据报是否分片是,依据为哪个字段的值Flags:0x02(more (4)该IP数据报有无选项字段? 无 7 现有一个公司需要创建内部的网络,该公司包括工程技术部.市场部. 了数据报传输时所经过的网络接口,要得到目的IP地址也需息作为该点的属性输入到计算机中,然后对这些信息进行统筹要从IP层找。使用伪头部还可以使得UDP层可直接得知目的安排,抽样分析和逻辑组合,最终为决策者提供服务 IP地址而不必从IP层找,提高了数据处理效率。 3.路由收敛 10、点到点通信 通过网络进行通信时,点到点通信是指仅仅在相邻节点之间(2 现在路由器K收到从路由器J发来的路由信息如下:答:路由收敛是指从网络结构发生变化开始到路由域中所有路分)、数据交换限定在网际层之下(3分)、不使用端口的数据由器对当前的网络结构和路由转发达成一致状态的过程,收敛通信方式。(4分) 财务部和办公室等四大部门,每个部门约有25~30台计算机。(10分) 时间是指从网络的拓扑结构发生变化到网络上所有的相关路2.端到端通信 问: (1) 若要将几个部门从网络上进行分开。如果分配该公司使用由器都得知这一变化,并且相应地做出改变所需要的时间。 的地址为一个C类地址,网络地址为192.168.161.0,如何划分网络,将4.半开链接 几个部门分开?(2)确定各部门的网络IP和掩码,并写出分配给每
答:端到端通信是指传输层实体在数据通信前,经过各种各样的交换设备,在两端设备之间建立一条链路,就像它们是直接 请根据矢量-距离(Vector-Distance)路由算法给出路由器K更新后个部门网络中的主机IP地址范围; 的路由表。(6分)5.
市场部:192.168.161.65/27~192.168.161.94/27 财务部:192.168.161.97/27~192.168.161.126/27 办公室:192.168.161.129/27~192.168.161.158/27 答:半开链接是传输层中没有完成最终确认的TCP链接。半开相连的一样,链路建立后,发送端就可以发送数据,直至数据链接可以是TCP SYN攻击的标识信号。 发送完毕,接收端确认接收成功。 协议栈 解:(1):四个部门相当于四个不同的网段,每个部门各有一个网络号,5、ARP协议 每个部门有25~30台计算机,说明每个网段中至少有30个主机位。 (2):工程技术部:网络ip:192.168.161.32 掩码:255.255.255.224
市场部:网络ip:192.168.161.64 掩码:255.255.255.224
财务部:网络ip:192.168.161.96 掩码:255.255.255.224
办公室:网络ip:192.168.161.128掩码:255.255.255.224 IP地址范围:工程技术部:192.168.161.33/27~192.168.161.62/27 ARP协议是位于网际层用于实现IP地址和MAC地址转换的一是指网络中各层协议的总和,其形象的反映了一个网络中文件种网络协议。(2分)其主要功能是根据本地主机的MAC地址传输的过程:由上层协议到底层协议,再由底层协议到上层协通过本地路由器获取本地主机的IP地址。(4分) 4.Socket 议。 1、简述DHCP协议执行过程 Socket也叫网络套接字,是一个用于标识应用层程序通信链答:DHCP协议使用C/S服务方式完成主机IP地址的动态配置。的句柄,描述IP地址和端口对。在实现上通常由两个缓冲区(1分)需要IP地址的主机在启动时向DHCP服务器发送发现和两个数据队列构成。 6、简述TCP和UDP协议的区别。 报文,目的地址是255.255.255.255,源地址是0.0.0.0,(3分)DHCP服务器收到报文后查找数据库该主机的配置信息, (1)UDP是一种无连接的传输协议, TCP协议是一种有连接的找到后通过提供报文返回配置信息,否则,从IP地址池中取传输协议; 出一个IP地址分配给该主机。(5分) (2)TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,2、简述TELNET协议功能答:TELNET协议是一个简单的远程终端协议。(1分)用户使务,为什么还需要引入UDP协议? 用TELNET就可以在当地通过TCP连接注册到远程的另一个主答:主要原因有四: 2为了克服慢收敛问题,RIP中提出了哪些对策? 答:(1) 简单分割范围法(2) 带毒性逆转的分割范围法 17. UDP:用户数据报协议 机上,(3分)并能够把用户的击键传送到远程主机,也能够(1)IP协议实现的是点到点的通信,UDP实现的是端到端的(3) 抑制法(4) 触发更新法 把远程主机的输出信息返回到用户屏幕。(5分) 4、简述给定网络路径MTU发现的思想 通信; UDP协议是不安全协议,不需要握手和建连接及确认,效 3简述路由算法在计算度量值考虑的因素。 答:带宽、负载、延迟、跳数、代价 4、OSPF把一个自治系统划分为不同的区域后,将路由计算分为几类, 18. POP3:邮局协议 19. QoS:服务质量 答:MTU是最大数据传输单元的意思。(1分)要在本地发现率比TCP高 给定网络路径MTU需要首先在本地构建一个必定大于路径3、简述Ping工具实现的思想 分别是? MTU的超大数据包,根据返回的错误信息使用二分法的思想答:Ping工具主要用于检测网络的连通性。(1分)它的实现答:域内路由计算、域间路由计算、自治系统外部路由计算 构建大小为第一个数据包一半的数据包,如果能够通过,则构主要是使用了ICMP回送请求和回送应答报文逐个节点测试它建大小为前两者大小均值的数据包,如此等等,(4分)直到们与源结点的连通性,(4分)从而实现远端结点和目的结点缩略词: 数据包的大小刚好能够通过给定网络路径,这个数据包就是该的连通情况检测。(5分) 1、ARP:地址解析协议 路径上的MTU。(5分) 一、网络协议: 2.进行数据通信时,一般来说TCP协议的通信成本高于UDP1.协议是用来描述进程之间信息交换数据时的规则术语。在计2. ICMP:internet控制报文 协议,为什么? 算机网络中,两个相互通信的实体处在不同的地理位置,其上3.
OSPF:开放式最短路径优先 答:主要原因有四: 的两个进程相互通信,需要通过交换信息来协调它们的动作和 (1)TCP数据通信前需要建立连接,UDP不需要; 达到同步,而信息的交换必须按照预先共同约定好的过程进行。 4.
TCP:传输控制协议 (2)TCP数据通信需要对数据传送进行确认,UDP不需要; 2.网络协议是为计算机网络中进行数据交换而建立的规则、标(3)TCP数据通信需要通过窗口机制进行流量控制,UDP不准或约定的集合。 5.
MTU:最大传输单元 需要; 3.一个网络协议至少包括三要素:语法、语义、时序。 6.
AS:自治系统 (4)TCP数据通信需要QoS保障机制,UDP不需要。 移动IP工作机制: 三次握手 1,代理发现。移动IP使用ICMP路由器发现机制进行移动代 7.
CIDR:无类型域间路由选择 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,理发现;2,注册。当发现MH移动到外地网络后,则进行注册。; 8.
NAT:网络地址转换 并进入SYN_SEND状态,等待服务器确认 3;数据传送。又分为:单播数据传送,广播数据传送,组播 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),数据传送 9.
SMTP:简单邮件传输协议 同时自己也发送一个SYN包(syn=k),即SYN+ACK包 IP协议的特点 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发(1)提供了一种无连接的传递机制; 10. DHCP:动态主机配置 送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入(2)不保证分组传输的可靠性; 11. RIP:选路信息协议 ESTABLISHED状态,完成三次握手。 (3)提供了尽最大努力的投递机制。 不可以,3次(共发送三个包), A-&B , B-&A, A-&B, 第三次对1. 简述IP协议的主要功能? 12. TTL:生存时间 第二次的确认了,才算连接成功。如果改为两次,第二个包能提供一种无连接的传输机制,IP协议独立对待要重传的每个 13. HTTP:超文本传输协议 否发送到A,B是不知道的。对第二个包, A如果能成功收到,分组,在传输前不建立连接,从源主机到目的主机的分组可能A则知道建立连接成功了,如果超时,A可判断第二个包发送经过不同的传输路径。 14. IGMP:internet群组管理协议 失败,连接失败。对第二个包,B是不知道能否发送成功的(需不保证分组传输的可靠性,分组在传输过程中,肯能出现丢失、要地三个包来确认), 所以两次握手,B是不能确定连接状态重复、延迟和乱序,但IP协议不会讲这些现象报告给发送方,15. BGP:边界网关协议 的。 也不会试图去纠正传输中的错误。 16. DNS:域名系统 2.网络通信时,IP协议已经能够实现不可靠、无连接的通信服 提供了尽最大努力的投递机制,IP协议尽最大努力发送 20. WWW:万维网 1、RARP:反向地址解析协议 2.
NAPT:网络地址端口转换 3.
SPF:最短路径优先 4.
ASBR:自治系统边界路由器 5.
HTTP:超文本传输协议 6.
DNS:域名系统 7.
NFS:网络文件系统 8.
WWW:万维网 9.
IGMP:internet群组管理协议10. ICMP:internet控制报文 11. UDP:用户数据报协议 12. TCP:传输控制协议 13. IP:网际协议 14. ABR:区域边界路由器 15. RIP:选路信息协议 16. DHCP:动态主机配置 17. HTML:超文本标记语言 18. BGP:边界网关协议 19. BOOTP:自举协议 20. FTP:文件传输协议篇六:SNMP测试发送Trap代码 Net-snmp是一个开源代码,在http://net-snmp.sourceforge.net/download.html可以下载,我所使用的版本为5.4.1,但是帮助文档不够详尽,相关资料甚少,希望这篇文章对刚接触这方面的人有所帮助,我也是刚接触net-snmp,有很多不懂的地方,希望有达人指点。 首先要编译整个工程,生成静态库文件,否则后面的工作不能进行。 打开net-snmp-5.4.1\win32\win32.dsw,我使用的环境为VS2003,需要对所有的项目进行转换。 打开snmptrap项目,观察其静态库引用路径可以发现它的路径配置为../lib/debug,这也正是生成项目后产生的lib文件的路径。自己项目的库文件引用配置路径可以参考snmptrap项目。 刚下载的程序包是不包含库文件的,需要自己生成。先后生成libagent、libhelpers、libnetsnmptrapd、libsnmp、netsnmpmibs五个项目,相应会生成五个静态库文件,包括:netsnmp.lib、netsnmpagent.lib、netsnmphelpers.lib、netsnmpmibs.lib和netsnmptrapd.lib。没有这些静态库文件就不能生成整个解决方案,这也正是直接生成解决方案不能成功的原因。好了,现在可以重新生成整个解决方案了。如果这步成功了那么就可以开始自己的工作了。 自己的(转 载 于: 小 龙文 档 网:snmp协议考试)项目的配置属性可以参考项目snmptrap或者项目snmptest来配置。下面这段代码是一段简单的测试程序,可以正常发送trap包到目标主机162端口,可以在此基础上根据自己的实际需要修改。
显示代码打印 #include &net-snmp/net-snmp-config.h&
#include &net-snmp/net-snmp-includes.h&
config_require(util_funcs)
int __stdcall TrapSendTest()
netsnmp_session session,*
netsnmp_pdu *
char csysuptime[20];
int status = 0;
oid oid_sysuptime[] = { 1,3,6,1,2,1,1,3,0 };
char *cp1 = &192.168.1.83&, *cp2 = &public&; snmp_sess_init(&session);
session.version = SNMP_VERSION_2c;
session.peername = cp1;
session.remote_port = 162;
munity = (unsigned char*)cp2;
munity_len = strlen((char *)munity);
session.retries = 3;
session.timeout = 2000;
session.sessid = 0;
SOCK_STARTUP;
ss = snmp_add(&session,
netsnmp_transport_open_client(&snmptrap&,
session.peername),
if (ss == NULL)
snmp_sess_perror(&snmptable&, &session);SOCK_CLEANUP;
pdu = snmp_pdu_create(SNMP_MSG_TRAP2);
sysuptime = get_uptime();
sprintf(csysuptime, &%ld&, sysuptime);
status = snmp_add_var(pdu, oid_sysuptime, OID_LENGTH(oid_sysuptime), csysuptime);
if(status != 0)
snmp_sess_perror(&snmptrap add sysuptime error!&, &session); return -1;
status = snmp_send(ss, pdu);
if (status == 0)
snmp_sess_perror(&snmptrap send info error!&, &session);
snmp_free_pdu(pdu);
return -2;
snmp_close(ss);
snmp_shutdown(&snmptrap&); &t&,SOCK_CLEANUP;
fprintf(stderr,&send snmptrap over %d &, status);
工作中遇到的困难:
1、开始的时候整个工程编译不过去: 这八成就是环境配置有问题,如MD/MT问题、静态库引用问题等,因为我要写dll接口,还碰到了__cdecl,__stdcall调用问题(一般为LNK2001和LNK2009,无法解析符号___argc,___argv,__mbctype,如: error LNK2001: 无法解析的外部符号 ___argc),解决方案是配置属性&&常规&&MFC的使用选择“在共享的DLL中使用MFC”。 2、开始的时候不知道该使用什么api,帮助文档又不多,在网上看了些例子代码,使用了
显示代码打印 1 ss = snmp_open(&session);
2 snmp_synch_response(ss, pdu, &response);
以为函数snmp_synch_response自动根据ss及pdu的类型自动选择目标主机端口,原来不是如此。snmp_synch_response发送snmp数据包到目标主机161端口,而接受trap包的端口应该为162端口,后来参考snmptrap项目发现是我的判读失误了,应该使用
显示代码打印 1 ss = snmp_add(&session, netsnmp_transport_open_client(&snmptrap&, session.peername), NULL, NULL);
2 snmp_send(ss, pdu);
发送trap包。
3、内存泄漏 在测试中发现strdup()函数存在内存泄露,尽量不直接调用。 发包完毕后需要调用显示代码打印 1 snmp_close(ss); 2 snmp_shutdown(&snmptrap&);
SOCK_CLEANUP;
这三个函数释放资源。篇七:SNMP 配置SNMP命令 1
配置相关命令 SNMP配置包括以下相关命令: ?no snmp-server ?show snmp ?snmp-server chassis-id ?snmp-server community ?snmp-server contact ?snmp-server enable traps ?snmp-server host ?snmp-server location ?snmp-server packetsize ?snmp-server queue-length ?snmp-server system-shutdown ?snmp-server trap-source ?snmp-server trap-timeout ?snmp-server user ?snmp-server group ?snmp-server view ?snmp-server if-index persist 1.1
no snmp-server 要屏蔽设备SNMP代理功能,请执行全局配置命令no snmp-server。 no snmp-server 【缺省设置】 屏蔽SNMP代理功能 【命令模式】 全局配置模式 【使用指南】 该命令关闭设备支持的所有版本SNMP的代理服务。 【举例】 下面的示例屏蔽SNMP代理服务:Ruijie(config)# no snmp-server 1.2
snmp-server chassis-id 要指定SNMP的系统序列号,请执行全局配置命令snmp-server chassis-id。该命令的no形式还原为初始值。 snmp-server chassis-id text no snmp-server chassis-id 【参数说明】 text
: 系统序列号的文本,可以使数字或字符。 【缺省设置】 序列号缺省值是60FF60 【命令模式】 全局配置模式 【使用指南】 SNMP系统序列号一般使用机器的序列号,以便对设备进行识别。系统序列号可以通过show snmp命令查看。 【举例】 下面的示例指定SNMP的系统序列号为123456: Ruijie(config)# snmp-server chassis-id 123456 【相关命令】1.3
snmp-server community 要指定SNMP团体的访问字符,请执行全局配置命令snmp-server community。该命令的no形式取消指定SNMP团体的访问字符。 snmp-server community string [view view-name] [[ro | rw] [host ipaddr] [ number ] no snmp-server community string 【参数说明】 string : 团体字符串,相当于NMS和SNMP 代理之间的通信密码。view-name: 指定视图的名称,用于基于视图的管理。 ro
: 指定NMS对MIB的变量只能读,不能修改。 rw
: NMS对MIB的变量可读可写。 number
: 访问列表序列号(0-99),关联指定的访问列表,指定能访问MIB的NMS地址范围。 ipaddr
: 关联NMS地址,指定访问MIB的NMS地址。 【缺省设置】 所有团体缺省为只读 【命令模式】 全局配置模式 【使用指南】 该命令为启用设备SNMP代理功能的第一个重要命令,指定了团体的属性、允许访问MIB的NMS范围等等。 要关闭SNMP代理功能,执行no snmp-server命令即可。 【举例】 下面的示例使用访问列表限制对MIB的访问,只允许地址为192.168.12.1的NMS对MIB的访问: Ruijie(config)# access-list 2 permit 192.168.12.1 Ruijie(config)# access-list 2 deny any Ruijie(config)# snmp-server community public ro 2 【相关命令】1.4
snmp-server contact 要指定SNMP系统联系方式,请执行全局配置命令snmp-server contact。该命令的no形式删除指定的SNMP系统联系方式。 snmp-server contact text no snmp-server contact 【参数说明】 text :描述系统联系方式的字符串 【缺省设置】系统联系方式为空。 【命令模式】 全局配置模式 【举例】 下面的示例指定SNMP的系统联系方式为i-net800@.cn : Ruijie(config)# snmp-server contact i-net800@.cn 【相关命令】1.5
snmp-server enable traps 要启用SNMP主动给NMS发送Trap消息,用于报告一些紧急而重要的事件的发生,请执行全局配置命令snmp-server enable traps。该命令的no形式禁止SNMP向NMS主动发送Trap消息。 snmp-server enable traps [snmp ] no snmp-server enable traps 【参数说明】 snmp
: 启用SNMP事件的陷阱通知。 【缺省设置】 缺省下,禁止发送陷阱消息 【命令模式】 全局配置模式 【使用指南】 该命令必须与全局配置命令snmp-server一起使用,才能发送陷阱消息。 【举例】 下面的示例启用主动发送SNMP事件陷阱消息: Ruijie(config)# snmp-server enable traps snmp Ruijie(config)# snmp-server host 192.168.12.219 public snmp 【相关命令】
snmp-server host 【参数说明】 【缺省设置】 【命令模式】 【使用指南】 【举例】 要指定发送陷阱消息的SNMP主机(NMS),请执行全局配置命令snmp-server host。该命令的no形式取消指定SNMP主机。 snmp-server host {host-addr| ipv6 ipv6-addr} traps [vrf vrfname] [version {1 | 2c | 3 [auth | noauth | priv]] community-string [udp-port
port-num][notification-type] no snmp-server host host-addr host-addr
SNMP主机地址 ipv6-addr
SNMP主机地址(ipv6) vrfname:
设置vrf转发表名称 version :
选择snmp版本,V1、V2C、V3 auth | noauth | priv : 设置V3用户的安全级别。 community-string :
团体字符串或用户名(V3版本)。 port-num:
设置snmp主机端口 notification-type :
主动发送的陷阱类型,例如snmp。 缺省情况下,没有默认SNMP主机。 如果没有指定陷阱类型,则包括所有陷阱类型。 全局配置模式 该命令与全局配置命令snmp-server enable traps一起使用,主动给NMS发送陷阱消息。 可以配置多个不同的SNMP主机用于接收陷阱消息,一个主机可以使用不同陷阱类型组合,不同的端口,不同的vrf转发表,对于相同主机[相同端口、相同vrf配置],最后的一次配置会和前面的配置合并,即如要给相同主机发送不同陷阱的消息,可以分别配置不同陷阱,最终这些配置会合并到一起。相关热词搜索:

我要回帖

更多关于 net snmp trap 的文章

 

随机推荐