我刚开始学习SNMP编程.参考网上的一些介绍,用WinSNMP写了一个简单的查询系统信息的程序.但为什么只有IP 为本机IP 时才能得到正确信息.而IP 为局域网中其它机器时就得不到信息.要访问的那台机器是XP 的,安装了SNMP组件服务,用net start snmp启动了服务.我自己的机器是2000的,也安装了SNMP组件服务?
请高手指点下,还需要如何配置?
还需要在监控的机器上写代理程序吗 ?
我参考的程序思想文章为:
http://www.pcdog.com/edu/vc/2006/10/f149484.html
原文出处记不得了.
后来我又用SNMP++做了试验,仍然有同样的问题,跟踪调试说发送超时,似乎发不过去一样,但我要监控的机器确实在局域网中并且确实是连通的.这是为什么呢?

解决方案 »

  1.   

    别人机器上根本就没安装SNMP服务
    你和谁通讯
      

  2.   

    partime(partime):我亲手装的,难道没装对.怎么检查是否装对了?
      

  3.   

    按照snmp api发包没?肯定是封包没封好吧。还有接包处理也都要自己处理下的。
      

  4.   

    smilehsh():你是说的SnmpSendMsg()吧,发了.接收的包也处理了.现在的问题是给自己发可以,给其它机器(安装了SNMP)发就发不出去.除了安装SNMP 还需要什么设置吗?
      

  5.   

    自己顶一下.
    希望实际做过SNMP的指点一下.
      

  6.   

    发现了一点问题:
    在XP 的机器(同一个局域网的其它)上同样的程序可以访问到我自己的机器(2000系统),但我自己的机器只能访问到自己的机器,却不能获取那台装XP的机器.两个机器都 装了SNMP 服务,这是为什么?  2000系统上装SNMP服务和XP安装SNMP服务的界面不太一样,我都是按照默认的装的.
    请各位帮忙分析一下.
    另外还有一个问题:在XP的机器上通过SNMP访问本地的系统信息,得到的操作系统的信息竟然是2000,为什么?得到的IP,计算机名还都正确.奇怪.
      

  7.   

    如果别人的机器不开snmp服务,你就得不到
      

  8.   

    后来也不知道为什么就可以了。送分了。
    但还有一个问题要求证:snmp  get 到的操作系统信息:XP也是2000,只是build version不同。大家的是这样吗?
      

  9.   

    也在学习中,如果可以发一个邮件来,非常感谢!
    [email protected]