About SNMP

转载 2004年10月20日 19:51:00
#include #include int main() { WSADATA data; SOCKET s; sockaddr_in addr; sockaddr_in to; sockaddr_in from; int fromlen = sizeof(from); unsigned char buf[1025]; int ret ; HANDLE hSocketEvent; WSANETWORKEVENTS NetWorkEvents; WSAStartup(MAKEWORD(2,2),&data); s = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); if (s == -1) return 0; addr.sin_family = AF_INET; addr.sin_port = htons(2227); addr.sin_addr.S_un.S_addr = inet_addr("192.168.0.92"); to.sin_family = AF_INET; to.sin_port = htons(161); to.sin_addr.S_un.S_addr = inet_addr("192.168.0.92"); ret = bind(s,(sockaddr*)&addr,sizeof(addr)); if (ret == -1) return 0; buf[0] = 48; buf[1] = 38; //version buf[2] = 0x02; buf[3] = 1; buf[4] = 0; //community name buf[5] = 0x4; //len of community name buf[6] = 6; //community name buf[7] = 'p'; buf[8] = 'u'; buf[9] = 'b'; buf[10] = 'l'; buf[11] = 'i'; buf[12] = 'c'; //GET Request buf[13] = 160; buf[14] = 25; //Id WORD nRand = rand(); memcpy(&buf[15],&rand,2); buf[15] = 0x02; buf[16] = 0x01; buf[17] = 0; //error buf[18] = 0x02; buf[19] = 0x01; buf[20] = 0x00; //index buf[21] = 0x02; buf[22] = 0x01; buf[23] = 0x00; //varbind list buf[24] = 0x30; buf[25] = 14; //var bind buf[26] = 48; buf[27] = 12; //Object ID buf[28] = 6; buf[29] = 8; buf[30] = 43; buf[31] = 0x06; buf[32] = 0x01; buf[33] = 0x02; buf[34] = 0x01; buf[35] = 0x01; buf[36] = 0x04; buf[37] = 0x00; buf[38] = 0x05; buf[39] = 0x00; hSocketEvent = CreateEvent(NULL,TRUE,FALSE,NULL); WSAEventSelect(s,hSocketEvent,FD_READ | FD_CLOSE); int flag = 1; while (1) { printf("Waiting .../n"); ret = sendto(s,(char*)buf,40,0,(sockaddr*)&to,sizeof(to)); DWORD WaitRet = WSAWaitForMultipleEvents(1,&hSocketEvent,FALSE,WSA_INFINITE,TRUE); switch (WaitRet) { case WAIT_OBJECT_0: WSAEnumNetworkEvents(s,hSocketEvent,&NetWorkEvents); if (NetWorkEvents.lNetworkEvents & FD_READ) { if(NetWorkEvents.iErrorCode[FD_READ_BIT]!=0) { continue; } else { memset(buf,0,1025); memset(&from,0,sizeof(from)); ret = recvfrom(s,(char*)buf,1024,0,(sockaddr*)&from,&fromlen); printf("buf = %s , len = %d/n",buf,ret); DWORD dwError = WSAGetLastError(); } } break; default: break; } } WSACleanup(); }

About SNMP

转帖相关资料:出自 编程爱好者论坛 SNMP(Simple Network Management Protocol)是简单网络管理协议,主要用来管理网络设备,正因为“简单”,所以其发展很快,到...
  • uuty
  • uuty
  • 2004年10月20日 19:48
  • 1268

SNMP++ 03-SNMP中字符串类型的BER编码与解码

阅读完本文你可以学到: (1)SNMP 中字符串型类型(包括基本类型 OCTER STRING 及其引申类型,如 IpAddress 等)的 BER 编码与解码。 一、理论知识 1、Tag OCTE...
  • wohenfanjian
  • wohenfanjian
  • 2016年05月26日 21:08
  • 1079

SNMP从入门到开发:基础篇 1

SNMP协议入门 1、引言 基于TCP/IP的网络管理包含3个组成部分: 1) 一个管理信息库MIB(Management Information Base)。管理信息库包含所有代理进程的所有可被查询...
  • woxiaozhi
  • woxiaozhi
  • 2015年08月20日 14:01
  • 1698

SNMP协议入门

SNMP协议入门 1、引言 基于TCP/IP的网络管理包含3个组成部分: 1) 一个管理信息库MIB(Management Information Base)。管理信息库包含所有代理进程的所有可...
  • jia18703423204
  • jia18703423204
  • 2015年06月05日 09:46
  • 4634

网络协议篇之SNMP协议(三)—— 不同版本(SNMPv1、v2c、v3)报文区别

转自:http://blog.csdn.net/shmily_cml0603/article/details/13287899  http://blog.csdn.net/shmily_cml0603...
  • zqixiao_09
  • zqixiao_09
  • 2017年08月12日 20:27
  • 3132

三分钟看懂Snmp协议分析

Snmp协议分析   关键点 :BER编码 1.协议字段   2.PDU类型对应编号表 PDU类型 名称 0 get-request 1 get-next-req...
  • CauseAndAffect
  • CauseAndAffect
  • 2015年07月15日 18:41
  • 1093

Linux系统下Snmp的配置及SNMP介绍

1、确保本机已经安装了snmp服务    [root@idc ~]# rpm -qa |grep snmp    net-snmp-libs-5.1.2-11.EL4.7    net-snmp...
  • beatle_1983
  • beatle_1983
  • 2014年03月27日 23:04
  • 29729

SNMP 原理及配置简述

随着机器数量的增长,管理员不能像过去那样,一台台机器进行监控、解决问题,而需要借助各方工具进行统一监控和管理。利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改...
  • prochsh
  • prochsh
  • 2016年01月13日 16:18
  • 7933

Snmp学习总结(三)——Win7安装和配置SNMP

一、安装SNMP   Win7操作系统默认情况下是不安装SNMP服务的,今天讲解一下在Win7操作系统下安装SNMP,具体安装步骤如下:      WIN7操作系统下安装SNMP的步骤如下: ...
  • jiangeeq
  • jiangeeq
  • 2017年04月12日 16:11
  • 1448

系统监控之SNMP协议理解

使用Mycat分布式数据库中间件时需要对各个性能指标进行监控,官方已经提供了一个监控软件,于是讨论起来监控是怎么具体可能有哪些实现,虽然知道已经有很多的监控软件可以使用,比如zabbix,但是今天听同...
  • lmy86263
  • lmy86263
  • 2016年10月24日 22:53
  • 3797
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:About SNMP
举报原因:
原因补充:

(最多只允许输入30个字)