从实战角度浅析snmp

Snmp  Simple Network Management Protocol

Snmp最终是为五花八门的网管软件服务的,由于接触的网管软件较少,所以对snmp的理解至今还仅限于初级配置阶段。以下言论如有错误,请不吝斧正。

Snmp牵扯的成员有agent和NMS;agent是被管理端,也就是我们最常接触的路由器,交换机等网络设备; NMS(network management system)是管理端,也就是我们不常接触的五花八门的网管软件。

Snmp的信息资源叫MIB(management information base)。这里面定义的是设备某些属性的标识,有公有的有私有的;NMS要想获得agent的某些数据,必须要知道该设备的MIB。这个MIB在设备上可以显示出来,show snmp mib 可以在锐捷设备上大约查看下某些信息代码

实战之方式1

Snmp在数据交流主动性上可分为两个方式,

方式1:等待nms来采集agent的数据。agent开放udp 161端口

方式2:agent主动向snmp发送某些信息。agent向nms的udp 162发送消息

方式1中有这么几个属性:

Community:相当于密码,只有密码正确才允许获取我的信息

Priority:权限,是只读还是读写

Nms地址:只有指定的地址才能采集,不指定则表示允许所有

View: 以怎么样的视图来采集(没见过也不理解snmpv3中的概念)

需求:采集机地址 1.1.1.1  1.1.1.2;  团体字: WLAN;只读

锐捷设备配置:

Ruijie(config)#snmp-serve community WLAN ro host 1.1.1.1

Ruijie(config)#snmp-serve community WLAN ro host 1.1.1.2

如上配置看似很合理,其实不然;如果这样配置 后面的命令就覆盖了前面的命令,也就是到最后只允许1.1.1.2 来采集,正确配置如下:

Ruijie(config)#ip access-list standard 1

Ruijie(config-std-nacl)#permit 1.1.1.1 0.0.0.0

Ruijie(config-std-nacl)#permit 1.1.1.2 0.0.0.0

Ruijie(config)#snmp-server community WLAN ro 1

华为的配置更绝,干脆不允许写host,哪怕只允许一个地址,也得写acl;

[HW-9306]snmp-agent community read WLAN ?

acl       Set access control list for this community

mib-view  Set the MIB view which the community can access

所以在有多个采集机地址的时候,大部分工程师将会放行所有,不会去找麻烦写acl了。

实战之方式2

Trap功能的几个必须属性(此三个属性缺一不可):

1.      作用范围(默认好像只有端口up、down 不确定)

2.      Community

3.      目标地址(以及基于这个地址的作用范围)

在一些实时性要求比较高的网管软件(比如拓扑需要动态变化)中,就需要用到agent的trap功能,以便当拓扑发生变化的时候,nms能立刻获得消息并及时更新拓扑。

其实trap消息最主要的功能就是当自身的某个接口down了或者up了的时候,agent发一个trap消息告知nms;从命令上来看,snmp发消息的范围实际上很小,它仅仅向nms 报告一些紧急重要的消息。大可不必担心开启trap会占用太多的设备资源

Ruijie(config)#snmp-server enable traps ?

bgp               Enable BGP state change Traps or Informs

bridge            Enable SNMP STP Bridge MIB Traps or Informs

entity            Enable SNMP entity Traps or Informs

mac-notification  Enable MAC Notification Traps or Informs

nfpp              Enable NFPP Traps or Informs

ospf              Enable OSPF Traps or Informs

snmp              Enable authentication trap

urpf              Enable URPF Traps or Informs

vrrp              Enable VRRP Traps or Informs

web-auth          Enable WEB-AUTH Traps or Informs

使用trap 的误区:经常见到如下这样的配置

snmp-server enable traps

snmp-server community WLAN ro

如上配置的问题在于,trap功能开启但是缺少了一个必要属性-目的IP地址,其实也不难理解,仅仅开启了trap功能,却没有指定目的地址,让agent往什么地方发这个trap消息呢?所以注意 snmp-server enable traps 命令,必须配合snmp-server host …… 命令一起使用。

锐捷设备trap 的命令逻辑

snmp-server host 1.1.1.1 traps WLAN

snmp-server host 1.1.1.1 traps WLAN vrrp

snmp-server enable traps ospf

snmp-server enable traps bgp

如上四条命令解读:全局下trap作用范围是ospf和bgp;向1.1.1.1发送默认的bgp和ospf消息,另外再向1.1.1.1 发送全局没开启的vrrp消息。

snmp-server enable traps 表示开启了所有的范围,因为这条命令敲下,关于 ospf 和bgp的命令就被覆盖掉了。

Trap 最主要的功能是报告接口up、down的信息,但是我们在开启trap的命令后面却没有发现链路up、down的选项。其实这个信息是基于接口的

Ruijie(config-GigabitEthernet 0/1)#snmp trap ?

link-status       Allow SNMP LINKUP and LINKDOWN traps

mac-notification  MAC Address notification for the interface

留一个问题:

按如上四条命令配置的话:agent还会向1.1.1.1 发接口up、down消息吗?

毕竟我们全局下只开启了ospf和bgp; 针对1.1.1.1 也只添加了一个vrrp。


知识回顾

Snmp  Simple Network Management Protocol

Snmp最终是为五花八门的网管软件服务的,由于接触的网管软件较少,所以对snmp的理解至今还仅限于初级配置阶段。以下言论如有错误,请不吝斧正。

Snmp牵扯的成员有agent和NMS;agent是被管理端,也就是我们最常接触的路由器,交换机等网络设备; NMS(network management system)是管理端,也就是我们不常接触的五花八门的网管软件。

Snmp的信息资源叫MIB(management information base)。这里面定义的是设备某些属性的标识,有公有的有私有的;NMS要想获得agent的某些数据,必须要知道该设备的MIB。这个MIB在设备上可以显示出来,show snmp mib 可以在锐捷设备上大约查看下某些信息代码


实战之方式1

Snmp在数据交流主动性上可分为两个方式,

方式1:等待nms来采集agent的数据。agent开放udp 161端口

方式2:agent主动向snmp发送某些信息。agent向nms的udp 162发送消息

方式1中有这么几个属性:

Community:相当于密码,只有密码正确才允许获取我的信息

Priority:权限,是只读还是读写

Nms地址:只有指定的地址才能采集,不指定则表示允许所有

View: 以怎么样的视图来采集(没见过也不理解snmpv3中的概念)

需求:采集机地址 1.1.1.1  1.1.1.2;  团体字: WLAN;只读

锐捷设备配置

Ruijie(config)#snmp-serve community WLAN ro host 1.1.1.1

Ruijie(config)#snmp-serve community WLAN ro host 1.1.1.2

如上配置看似很合理,其实不然;如果这样配置 后面的命令就覆盖了前面的命令,也就是到最后只允许1.1.1.2 来采集,正确配置如下:

Ruijie(config)#ip access-list standard 1

Ruijie(config-std-nacl)#permit 1.1.1.1 0.0.0.0

Ruijie(config-std-nacl)#permit 1.1.1.2 0.0.0.0

Ruijie(config)#snmp-server community WLAN ro 1

华为的配置更绝,干脆不允许写host,哪怕只允许一个地址,也得写acl;

[HW-9306]snmp-agent community read WLAN ?

acl       Set access control list for this community

mib-view  Set the MIB view which the community can access

所以在有多个采集机地址的时候,大部分工程师将会放行所有,不会去找麻烦写acl了。


实战之方式2

Trap功能的几个必须属性(此三个属性缺一不可):

1.      作用范围(默认好像只有端口up、down 不确定)

2.      Community

3.      目标地址(以及基于这个地址的作用范围)

在一些实时性要求比较高的网管软件(比如拓扑需要动态变化)中,就需要用到agent的trap功能,以便当拓扑发生变化的时候,nms能立刻获得消息并及时更新拓扑。

其实trap消息最主要的功能就是当自身的某个接口down了或者up了的时候,agent发一个trap消息告知nms;从命令上来看,snmp发消息的范围实际上很小,它仅仅向nms 报告一些紧急重要的消息。大可不必担心开启trap会占用太多的设备资源

Ruijie(config)#snmp-server enable traps ?

bgp               Enable BGP state change Traps or Informs

bridge            Enable SNMP STP Bridge MIB Traps or Informs

entity            Enable SNMP entity Traps or Informs

mac-notification  Enable MAC Notification Traps or Informs

nfpp              Enable NFPP Traps or Informs

ospf              Enable OSPF Traps or Informs

snmp              Enable authentication trap

urpf              Enable URPF Traps or Informs

vrrp              Enable VRRP Traps or Informs

web-auth          Enable WEB-AUTH Traps or Informs

使用trap 的误区:经常见到如下这样的配置

snmp-server enable traps

snmp-server community WLAN ro

如上配置的问题在于,trap功能开启但是缺少了一个必要属性-目的IP地址,其实也不难理解,仅仅开启了trap功能,却没有指定目的地址,让agent往什么地方发这个trap消息呢?所以注意 snmp-server enable traps 命令,必须配合snmp-server host …… 命令一起使用。 

锐捷设备trap 的命令逻辑

snmp-server host 1.1.1.1 traps WLAN

snmp-server host 1.1.1.1 traps WLAN vrrp

snmp-server enable traps ospf

snmp-server enable traps bgp

如上四条命令解读:全局下trap作用范围是ospf和bgp;向1.1.1.1发送默认的bgp和ospf消息,另外再向1.1.1.1 发送全局没开启的vrrp消息。

snmp-server enable traps 表示开启了所有的范围,因为这条命令敲下,关于 ospf 和bgp的命令就被覆盖掉了。

Trap 最主要的功能是报告接口up、down的信息,但是我们在开启trap的命令后面却没有发现链路up、down的选项。其实这个信息是基于接口的

Ruijie(config-GigabitEthernet 0/1)#snmp trap ?

link-status       Allow SNMP LINKUP and LINKDOWN traps

mac-notification  MAC Address notification for the interface

留一个问题:

按如上四条命令配置的话:agent还会向1.1.1.1 发接口up、down消息吗?

毕竟我们全局下只开启了ospf和bgp; 针对1.1.1.1 也只添加了一个vrrp。

时间: 2024-08-10 17:06:16

从实战角度浅析snmp的相关文章

基于微博数据应用的HBase实战开发_HBase视频教程

基于微博数据应用的HBase实战开发 课程观看地址:http://www.xuetuwuyou.com/course/150 课程出自学途无忧网:http://www.xuetuwuyou.com 一.课程用到的软件 1.centos6.7 2.apache-tomcat-7.0.47 3.solr-5.5 4.zookeeper 3.4.6 5.eclipse-jee-neon-R-win32-x86_64  6.jdk1.7_49 7.HBase1.2.2 8.Ganglia3.7.2 9.

基于ArduinoLeonardo板子的BadUSB攻击实战

0X00 前言 在Freebuf上许多同学已经对HID攻击谈了自己的看法,如维克斯同学的<利用Arduino快速制作Teensy BadUSB>无论从科普还是实践都给我们详尽的描述了BadUSB制作的相关过程,lpcdma同学的<使用arduino进行渗透测试>则通过SET与Arduino的结合进行渗透,mrzcpo同学的 <HID高级攻击姿势:利用PowerShell脚本进行文件窃取>则介绍了获取文件的详细步骤,我在学习领悟之后想到了一些改进方案,比如绕过360主动防

Solr5.5视频教程|基于微博数据检测的Solr5.5实战开发

Solr5.5视频教程之基于微博数据检测的Solr5.5实战开发 课程不错,直接分享下载网盘地址----https://pan.baidu.com/s/1jKkWSV8 密码: y5x6 备用地址(腾讯微云):http://url.cn/5HAAdG6 密码:dg64Im 在海量数据的情况下,传统的关系型数据库已经力不从心,快速检索已经成为了应用系统所必备的功能之一.本课程从实战角度出发,让学员能从实战中学习到: 搜索引擎的原理及架构. 掌握在大数据环境下经典检索算法. 掌握如何使用solr实现

HBase视频教程

基于微博数据应用的HBase实战开发 课程观看地址:http://www.xuetuwuyou.com/course/150 课程出自学途无忧网:http://www.xuetuwuyou.com 一.课程用到的软件 1.centos6.7 2.apache-tomcat-7.0.47 3.solr-5.5 4.zookeeper 3.4.6 5.eclipse-jee-neon-R-win32-x86_64  6.jdk1.7_49 7.HBase1.2.2 8.Ganglia3.7.2 9.

[书籍分享]0-006.微信从业人员推荐阅读的100本经典图书

本文从当前图书市场上筛选出微信及移动互联网从业人员最爱读的100本图书,并对每本书的特色做了简要点评,供有需要购买的读者进行参考. 微信思维 作      者 谢晓萍 出 版 社 羊城晚报出版社 出版时间 2014-11-01 版      次 1 页      数 329 印刷时间 2014-11-01 开      本 16开 纸      张 轻型纸 印      数 1 I S B N 9787554301418 专家点评:微信官方出版的第一本商业笔记,汇集了15家合作企业通过微信进行探

C#实现异步消息队列

拿到新书<.net框架设计>,到手之后迅速读了好多,虽然这本书不像很多教程一样从头到尾系统的讲明一些知识,但是从项目实战角度告诉我们如何使用我们的知识,从这本书中提炼了一篇,正好符合我前几篇的“数据驱动框架”设计的问题: 消息队列 消息队列(英语:Message queue)是一种进程间通信或同一进程的不同线程间的通信方式,软件的贮列用来处理一系列的输入,通常是来自使用者.消息队列提供了异步的通信协议,每一个贮列中的纪录包含详细说明的资料,包含发生的时间,输入装置的种类,以及特定的输入参数,也

Jmeter性能测试视频教程

Jmeter性能测试实战视频教程 课程观看地址:http://www.xuetuwuyou.com/course/39 课程出自学途无忧网:http://www.xuetuwuyou.com 本课程从实战角度,由浅入深讲解Jmeter性能测试,学习本课程需要具备拥有一定性能测试基础知识. 课时1:认识jmeter 课时2:jmeter常用功能介绍 课时3:jmeter两种脚本录制方法 课时4:自动化测试badboy实战 课时5:jmeter性能测试小小的实战 课时6:jmeter元件作用域与执行

Archive for the ‘Erlang’ Category 《Erlang编程指南》读后感

http://timyang.net/category/erlang/ 在云时代,我们需要有更好的能利用多核功能及分布式能力的编程语言,Erlang在这方面具有天生的优势,因此我们始终对它保持强烈关注. 按:此为客座文章,投稿人为新浪微博基础研发工程师赵鹏城(http://weibo.com/iamzpc),以下为原文.在对一个分布式KV存储系统的研究过程中,我有幸遇到了Erlang语言.因此,我研究工作的第一目标就是快速入门Erlang语言并在实际研究过程中进一步深入理解Erlang的精髓.在

《推荐系统》学习笔记 -- 基本概念

实战推荐(开发维护电子商务网站的推荐系统)几个月之后,感觉到达一个瓶颈. 从实战角度来讲,对于一个中型的电子商务网站(比如千万PV),独立构建一个推荐系统,完成基础的推荐功能,比如:ViewView(看过还看过).ViewWant(看过还加车).WantWant(加车还加车).CollectCollect(收藏还收藏)之类的基于协同过滤的推荐:Similar(猜您喜欢)之类的基于内容的推荐,从数据的收集.抽取.计算.分析,已经没有问题. 但是对推荐的理论性认识,推荐策略及其适用场景,推荐算法,推