Ping IP which is result of another DCI

Started by digit, September 26, 2018, 03:54:10 PM

Previous topic - Next topic

digit

I need to monitor a bunch of border router at our customer location.  When a router can not be reach, either we have an issue with the router itself or the ISP modem / router is down.

My idea is to ping both the router and the ISP modem/routeur which is the network gateway.

I have a DCI id 382 that get SNMP ipRouteNextHop (.1.3.6.1.2.1.4.21.1.7.0.0.0.0) from the border router.  Now I need a DCI to ping result of DCI 382.  If ISP ping and router does not, our managed router is down.  If both are down, we have an ISP issue.

How to do that ?
Any thoughts ?

Victor Kirhenshtein

Hi,

you can create script DCI with the following script:


// Read default gateway from DCI
gw = GetDCIValueByName($node, ".1.3.6.1.2.1.4.21.1.7.0.0.0.0");
if (gw == null)
return null;

// Find node which will be ping source
pingSourceNode = FindNodeObject($node, "netxms");
if (pingSourceNode == null)
return null;

// Return ping RTT from ping source node
return AgentReadParameter(pingSourceNode, "ICMP.Ping(" . gw . ")");


This script reads default gateway address from existing DCI and then use agent parameter ICMP.Ping to ping it from another node. Name of ping source node should be set in FindNodeObject function call.

Best regards,
Victor