NetXMS Support Forum

English Support => General Support => Topic started by: digit on September 26, 2018, 03:54:10 PM

Title: Ping IP which is result of another DCI
Post by: digit on September 26, 2018, 03:54:10 PM
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 ?
Title: Re: Ping IP which is result of another DCI
Post by: Victor Kirhenshtein on September 26, 2018, 05:01:17 PM
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