NetXMS Support Forum

Please login or register.

Login with username, password and session length

Author Topic: Ping IP which is result of another DCI  (Read 476 times)

digit

  • Newbie
  • *
  • Posts: 1
    • View Profile
Ping IP which is result of another DCI
« 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 ?
Logged

Victor Kirhenshtein

  • Lead Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 6655
    • View Profile
Re: Ping IP which is result of another DCI
« Reply #1 on: September 26, 2018, 05:01:17 pm »

Hi,

you can create script DCI with the following script:

Code: [Select]
// 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

Logged