【发布时间】:2016-12-07 13:01:11
【问题描述】:
我是 Linux 和 Nagios 插件的新手,但我需要设置警报,以防路由器接口何时丢失其 IP(因此当它被视为 0.0.0.0 时)。我对其他人的脚本进行了一些研究,并编写了以下名为 check_ip.pl 的脚本:
$snmpIfIP = '.1.3.6.1.4.1.23695.2.1.3.1.1.3.0.0';
$noip = "0.0.0.0";
if ($snmpIfIP != $noip) {
echo "Interface has an IP";
exit 0 } else { echo "No IP on Interface"; exit 2 }
在 Nagios 中,我将其分配给 check_command:$USER1$/check_ip.pl
分配了一个模板来使用这个检查命令,并从这个模板创建了一个服务。 Nagios 服务器和路由器之间的 SNMP 正在工作 - 但是我得到“(126 的返回代码超出范围 - 插件可能无法执行)” - 所以我对插件代码做错了!
我知道以下是正确的:
- OID拉取接口的IP是正确的(测试过这个)
- 路由器上的 IP 是 0.0.0.0,所以它与预期的参数匹配
谁能提供建议/插件文件需要如何编写?
非常感谢。
【问题讨论】:
-
ls -l /path/to/ProblemPlugin那么你可能需要chmod +x /path/to/ProblemPlugin。祝你好运。
标签: linux interface ip snmp nagios