前端之家收集整理的这篇文章主要介绍了
snmp request time out?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
为什么人家的可以呢?看这里
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 Descriptor
void 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的资源
}
@H_
404_2@通过
这个网站找出snmp request time out 的原因,原来是community的原因,改成和交换机对应的communiry就行。如果是get ,应该是get的community.
@H_
404_2@