snmp request time out?

来源:互联网 发布:网络红猫红小胖照片 编辑:程序博客网 时间:2024/05/16 14:42
为什么人家的可以呢?看这里snmp的深入学习三中程序运行正常,snmp get调用成功的,我的超时了。代码如下。
#include "snmp_pp.h"#include "iostream.h"#define SYSDESCR "1.3.6.1.2.1.1.1.0"    // Object ID for System Descriptorvoid main(){ Snmp::socket_startup(); //socket_startup()静态成员函数,初始化Winsocket的相关函数int status;    // return status          CTarget ctarget( (IpAddress) "192.168.1.74");    // SNMP++ v1 target    //使用一个Address对象构造一个Ctarget对象    Vb vb( SYSDESCR);    // SNMP++ Variable Binding    Pdu pdu;    // SNMP++ PDU     //-------[ Construct a SNMP++ SNMP Object ]---------------------------------------    Snmp snmp( status);    // Create a SNMP++ session 创建一个新的snmp对象,    //第一个参数表示创建状态,0表示成功    if ( status != SNMP_CLASS_SUCCESS) {    // check creation status      cout << snmp.error_msg( status);    // if fail, print error string      return; }    //-------[ Invoke a SNMP++ Get ]-------------------------------------------------------   //invoke的意思是requests help or protection(from a deity)  pdu += vb;    // add the variable binding  if ( (status = snmp.get( pdu, ctarget)) != SNMP_CLASS_SUCCESS)      cout << "获取没成功\n"<<snmp.error_msg( status);   else {      pdu.get_vb( vb,0);    // extract the variable binding      cout << "系统描述符 = "<< vb.get_printable_value();    }    // print out   Snmp::socket_cleanup(); //socket_cleanup()静态成员函数,释放被上面函数初始化的winsocket的资源}

通过这个网站找出snmp request time out 的原因,原来是community的原因,改成和交换机对应的communiry就行。如果是get ,应该是get的community.