Linux Nagios-接口IP检查脚本
我是Linux和Nagios插件的新手,但我需要设置路由器接口丢失IP时的警报(因此当它被视为0.0.0.0时)。我对其他人的脚本做了一些研究,并编写了以下名为check_ip.pl的脚本:Linux Nagios-接口IP检查脚本,linux,interface,ip,snmp,nagios,Linux,Interface,Ip,Snmp,Nagios,我是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
$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_命令:$USER1$/check_ip.pl
已分配模板以使用此检查命令,并从此模板创建了服务。Nagios服务器和路由器之间的SNMP正在工作-但是我得到了“(返回代码126超出范围-插件可能不可执行)”-所以我对插件代码做了一些错误
我知道以下是正确的:
- 拉取接口IP的OID正确(本测试)
- 路由器上的IP为0.0.0.0,因此它与预期参数匹配
非常感谢。您的插件是否实际位于
$USER1$
目录中$USER1$
在大多数情况下是/usr/local/nagios/libexec
您需要确保插件不仅是可执行的:
chmod+x/usr/local/nagios/libexec/check_ip.pl
但它也是Nagios用户可执行(并拥有)的:
chown nagios:nagios/usr/local/nagios/libexec/check_ip.pl
如果您已经测试了脚本,并且手动运行时它工作正常,那么这应该可以解决您的问题
但是,您发布的代码不是完整的插件。我所看到的不会回报你所寻找的。关于代码,您是否特别需要帮助
另外,请确保您查看了
ls-l/path/to/ProblemPlugin
然后您可能需要chmod+x/path/to/ProblemPlugin
。祝你好运