python打造消息服务器,利用Python写收集Inform和Trap消息的服务器

一年前吧,因为这一年来,这个博客都还没有来过,密码都忘记了,刚找回来。

有个交换机的自动化工作也已经开展起来,模块也分下去了。其他模块也就是使用Python开发即可,但是Rmon和SNMP模块就遇到了不小的问题。程序如何抓取交换机Trap或者Inform的消息会成为这两个模块自动化成败的关键。SNMPv1和SNMPv2c的Trap还好说,再不济也可以通过抓包的方式解决。SNMPv2c或者SNMPv3的infrom都需要服务器有回应报文。SNMPv3

Trap或者Infrom如果带认证和加密的话,你通过抓包根本无法判定到底是因为什么原因的inform或者Trap。那么一个好用的Trap服务器就显得尤为重要了,可能看到这里,大家有可能会说,去网上下载啊!

我只想说,如果下的到,也不错,但是即使有类似于MIB

Browser这种现成的工具在手,自动化也是无用的。因为它们一般是图形化操作的,自动化对于带GUI的软件操作本就是个软肋。所以基本不可行。那么自行研究与开发就势在必行了。以下就是我从3月5日开始的研究结果以及个中心酸与大家做个分享。

网上有一个老外写的名为pysnmp的库,这个库大家使用pip

install都可以轻松地安装。网上也有一个他们写的Trap服务器的例子。那么第一步自然是照着例子依葫芦画瓢咯。把他们的代码做了修改成一个类之后,一运行,喜出望外,SNMPv1和SNMPv2c的Trap消息都能够正常接收了。类似于下图这个样子

你可能感兴趣的:(python打造消息服务器)