Icinga / Nagios在本地networking上ping不同的机器

我有3台机器,所有远程IP地址,所有这些地址都使用远程和本地IP地址运行nsclient ++:

46.*.*.1/192.168.1.1 46.*.*.2/192.168.1.2 46.*.*.3/192.168.1.3 

我想让nagios / icinga远程ping其他本地机器,看看VLAN是否工作正常。

有没有办法告诉nagios / icinga使用机器192.168.1.1和ping 192.168.1.2和192.168.1.3? check_ping只能ping从icinga服务器的host_name中定义的机器。 Icinga是完全不同的IP范围92.*.*.*

有没有办法做到这一点看到VLAN工作正常?

在使用nsclient ++时,我假定这些是Windows主机,而其他远程执行选项(例如push_check )不可用。 但是,nsclient ++具有内置的自己的远程执行。 详细信息请参见: http ://www.nsclient.org/nscp/wiki/CheckExternalScripts,例如,在nsclient ++configuration中,包括

 [External Scripts] ping_remote=.\scripts\ping.bat $ARG1$ 

以及nsclient ++文件夹下的简单batch filescripts \ ping.bat:

 ping %1 

如果主机可达,则代码0(Nagios“OK”)退出,如果不是,则代码1(Nagios“Warning”)。 你可以build立一个更复杂的批处理脚本来做一些更清晰的输出。

Nagios的NRPE检查可以触发这个脚本。 定义一个命令如下:

 define command { command_name check_ping_remote command_line check_nrpe -H $HOSTADDRESS$ -p 5666 -c ping_remote -a $ARG1$ } 

然后从主机configuration中为其中一台主机启动:

 define service{ host_name your_host_name service_description Ping VPN check_command check_ping_remote!192.168.1.2 use generic-service }