我是SNMP的新手,谢谢你的支持.我有一个用于子代理的现有Perl脚本,在试图运行它时出现了以下问题:代理似乎连接到“默认”snmpd deamon,它被配置为主代理(snmpd.conf中存在行"master agentx“)。此时,脚本为我的MIB中的对象分配一些值。然而,当我在主代理上执行snmpwalk或snmpget时,我得到(对于v1查询) "End of MIB“。当我在系统OID上执行查询时,works....something必须中断。
MIB是正确注册的(我可以做一个snmptranslate),并使用“企业”OID,这里的公司,这是为注册自己的企业OID。
我一直在四处寻找问题所在,它相信我丢失了子代理的配置文件:在这个站点上,他们在子代理注册中添加了这个注释:
my $agent = new NetSNMP::agent(
# **makes the agent read a my_agent_name.conf file**
'Name' => "my_agent_name",
'AgentX' => 1
);
}我的设置(我不是自己写的,但应该是完全功能的)没有一个文件“myself _name.conf”。我确实有正确的snmpd.conf (对于主代理),子代理似乎是连接的(如果我从snmpd.conf中删除“主代理”行,代理报告连接失败)。
这个问题是缺少的子代理配置文件吗?如果是的话,我应该在那里放什么?我只是找不到更多关于这个主题的东西,而且我对SNMP的了解太有限了,无法用手册页来解决这个问题。
我正在使用Ubuntu/Xubuntu进行测试。
谢谢
发布于 2013-12-26 21:51:05
我的安装程序似乎出现了问题,典型的"Windows“解决方案解决了这个问题:重新启动。重新启动后,代理正确连接。我通过使用syslog文件“/var/log/syslog”进行了调试,该文件将无法显示AgentX通知。此外,您还可以在任何net应用程序的命令行上添加调试标志"-DALL“为您提供所有调试输出。
有一个类似于net的开源snmp是很棒的,但是man....it有一个陡峭的学习曲线。例子大多已过时或不完整。这个网站充斥着垃圾和不完整的文章。我很难找到一个简单的例子来说明如何构建一个简单的代理。如果你是新来的,碰巧碰到了这个帖子:试试"ifTable“例子吧,它对我帮助很大。
https://stackoverflow.com/questions/20151315
复制相似问题