免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3301 | 回复: 2
打印 上一主题 下一主题

snmp学习 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-13 13:52 |只看该作者 |倒序浏览
本人在学校公共机房,一台装有linux的pc机,想从该主机访问该子网的路由器的路由信息。(snmp)\r\n    \r\n       在Linux上运行一个简单程序,该程序调用MIB库的信息\r\n   弱问下 本机上上没装net snmp,能行吗?\r\n   该程序运行后,没反应,用tcpdump抓包,有包发送,这是什么情况\r\n\r\n《网上转载》\r\n # include 〈stdio.h〉\r\n# include 〈sys/types.h〉\r\n# include 〈sys/socket.h〉\r\n# include 〈netinet/in.h〉\r\n# include 〈netdb.h〉\r\n# define snmp_port 161  /* SNMP UDP 端口号*/\r\n# define destaddress  “192. 168. 1.16”  /* 访问目标机的IP 地址*/\r\nstruct sockaddr_in dest;\r\nstruct hostent *hp;\r\nint sockfd;\r\nregister int i, n;\r\nint fromlen;\r\nint packsize= 43;\r\nu_char\r\nsendpack [100 ]= {0x30, 0x37, 2, 1, 0, 4, 6, 0x70, 0x75, 0x62, 0x6c,\r\n0x69, 0x63,0xa0, 0x26, 2, 4,0, 0, 0, 0, 2, 1, 0, 2, 1, 0, 0x30, 0x1c,\r\n0x30,0x0c, 6, 8, 0x2b, 6, 1, 2, 1, 1, 1, 0, 5, 0};/* get_ request 报文编码*/\r\nu_char recvpack [150];  /* 收到get_ response 报文编码*/\r\nmain( )\r\n{\r\nif ((hp=gethostbyname(destaddress))== 0)\r\n{\r\n    printf (“unknown host”) ;\r\n    exit (1) ;\r\n}\r\ndest.sin_family= AF_INET;\r\ndest.sin_port= htons(snmp_port) ;\r\nmemcpy((char*)&dest.sin_addr, (char*)hp->h_addr, hp->h_length) ;\r\nif ((sockfd=socket(AF_INET, SOCK_ DGRAM , 17)) {\r\n    printf (“can`t create udp socket”) ;\r\n    exit (1) ;\r\n}\r\n/* 以上生成udp 套接字*/\r\ni= sendto (sockfd, sendpack, packsize, 0, (struct sockaddr* )&dest, sizeof (dest)) ;\r\nif(i{\r\n    printf (“sendto error”) ;\r\n    exit(1);\r\n}\r\nif (i!=packsize)\r\n{\r\n    printf(“wrote %d bytes, return= %d”, packsize, i) ;\r\n    exit (1)\r\n}\r\n/* 发送udp 报文*/\r\nputs (“receiving now ……”) ;\r\nfromlen= sizeof(dest) ;\r\nif ((n= recvfrom (sockfd, recvpack, sizeof ( recvpack) , 0, (struct sockaddr\r\n*)&dest,&fromlen) ) {\r\n    printf (“recv from error!”) ;\r\n    exit (1) ;\r\n}\r\n/* 接收udp 报文*/\r\nfor ( i= 0; iprintf (“%X”,recvpack) ;\r\nclose(sockfd) ;\r\n}

论坛徽章:
0
2 [报告]
发表于 2009-05-15 17:41 |只看该作者
那么多呢???????

论坛徽章:
0
3 [报告]
发表于 2009-05-15 21:47 |只看该作者
在linux上安装上了net snmp \r\n但是编译运行程序时,程序里的函数名却无法找到,\r\n请问下各位大虾,怎么回事\r\n 谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP