加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

SNMP介绍及工作过程

(2011-04-08 17:47:13)
标签:

杂谈

分类: snmp
  SNMP(Simple Network Management Protocol)实在是一个非常重要的协议,在被监控设备上把的各种参数(包括设置参数、状态参数)写入到MIB库中,我们通过各种网管软件就能读到这 些参数(比如:端口流量、CPU使用率等),甚至修改这些参数(比如:端口速率、双工模式、端口MTU等)。平时你telnet到设备通过敲命令修改设备 配置,通过网管软件就能在图形界面一样可以实现。在网管软件和被监控设备之间(准确的说代理程序)就是通过SNMP协议来交互的。让我们来看看SNMP的 一些详细内容吧。

   一、SNMP组成部分
   SNMP网络管理由下面几个部分组成:
   1、网络管理站或管理进程(Manager)
      就是管理工作站啦,网管软件就安装在此,常见的网络软件如:Cisco Works、HP OpenView、Solarwinds、Microsoft SMS、MRTG、Whatsup等。在SNMP组成部分中相当于Client的角色。

   2、被管理设备
      可网管的路由器、交换机、服务器、打印机等等。

   3、代理程序(Agent)
      集成在被管理的设备当中,运行被管理设备的SNMP服务端程序,是Server的角色,Cisco IOS的SNMP配置命令就是以snmp-server开头的。

   4、MIB(Management Information Base)
      被监控设备上的各种参数(包括设置参数、状态参数)都写到MIB库中,MIB包含所有代理进程的可被查询和修改参数。目前版本为MIB-Ⅱ。讲的MIB就必须要介绍一下对象表示符(OID)这个非常重要的概念。
      OID: 是一个以点(".")分割的整数序列,这些整数构成一个树型结构,类似于DNS或Linux文件系统。OID从树的顶部开始,顶部没有标识,以root表示。OID不是随便分配的,它是由权威机构进行管理和分配的。(见OID结构图)

 
 
SNMP几个组成部分之间的关系,下图可以很清晰得体现出来(SNMP组成部分图示)
 
二、SNMP交互过程
    SNMP管理进程和代理进程之间交互的报文分为5种:
    1) get-request操作
    从管理进程向代理进程(udp 161)请求一个或多个数值。linux下的snmpget命令就是完成这个操作。
    2) get-next-request 操作
    向代理进程(udp 161)请求一个或多个参数的下一个参数值。snmpwalk命令就是完成这个操作。
    3) get-response操作
    对管理进程提交的request进行响应,返回一个或多个参数值,从代理进程的UDP 161端口发出。
    4) set-request操作
   设置代理进程的的一个或多参数值,这个可是十分危险的操作。代理进程开放的端口是udp 161,snmpset执行这个操作。
    5) trap操作
    这个就有点特殊了,开放端口的是管理进程udp 162,代理进程主动发送该报文,通知管理进程有某些事情发生。trap是“陷阱”的意思,取这个名字还是非常形象的,一个掉到陷阱中的人,在那一霎那都 会本能发出“救命”的呼声,希望有人听到。同样的道理,被监控设备遇到突发情况宕机,最后一刻发出以个trap,通知管理进程出事了,得赶快采取行动。
    再通过“snmp报文交互图”来看看交互的过程。
 
三、SNMP的三个版本
   目前SNMP的发展主要包括三个版本:SNMPv1、SNMPv2以及最新的SNMPv3。总体来看,SNMPv1和v2版本对用户权力的惟一限制是访问 口令,而没有用户和权限分级的概念,只要提供相应的口令(即community),就可以对设备进行read或read/write操作,安全性相对来的 薄弱。
   SNMPv1使用明文发送,安全性最差。
   SNMPv2相对snmpv1,同样适用明文发送,定义了了一个新的分组类型get-bulk-request,它高效率地从代理进程读取大块数据。
   snmpv3实现提高安全性能的预期目标,尤其是在身份验证(如用户初始接入时的身份验证、信息完整性的分析、重复操作的预防)、加密、授权和访问控制、适当的远程安全配置和管理能力等方面。SNMPv3是在SNMPv2基础之上增加、完善了安全和管理机制。
    可以参考如下抓包截图:
    SNMP V1截图(明文,community:snmpv2):
 
 
SNMPV3截图(加密):
 
 
参考:《TCP/IP详解卷一》

0

阅读 收藏 喜欢 打印举报/Report
前一篇:snmp
后一篇:数组对象
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有