X Services

Introduction Copied

Geneos X Services plugin checks the network path to a specified target node, the availability of the node and if the node has processes that listen on the ports specified. It sends TCP packets to the target host on a number of ports and measures the time it takes to reply and if there is a process listening on those ports. If no reply is received after a defined time interval, the target node is assumed to be down or unreachable. The target host does not need to run any special software to provide the replies.

This plugin can only monitor ports from a remote machine. If the target machine is localhost, the test traffic will flow through the loopback interface and not through the requests Network card.

Views Copied

View Copied

The X Services plugin produces a single view as follows:

x-svcs0

Headline Legend

Name Description
targetNode The name of the host that the ping requests are sent to
targetAddress The IP address of the target host

Table Legend

Name Description
serviceName Shows the service name if configured, otherwise will show the port number.
servicePort Shows the service port number used.
turnaroundTime Time in ms that a packet takes to travel to the target host and back.
Status
REACHABLE if a reply is received within a timeout period (default 5 seconds), but has no process listening on the port.
LISTENING if the node has a process listening on that port.
Otherwise UNREACHABLE.

Plugin Configuration Copied

The following parameters can be configured for this plugin:

var-recvInterfaces Copied

Specifies a comma-separated list of network interface names to be used.

On UNIX machines, interface names can be found using the command “ifconfig -a”. Example names are “eth0” or “ce0”.

On Windows machines, interface names can be listed by running Netprobe using the “-ifconfig” command-line option. A Windows interface name will look similar to the following:

\Device\NPF_{BDFE3EAC-0275-440A-923C-C9C4CE3B37F2}

Mandatory: Yes

sendInterface Copied

The name of the network interface to be used to send packets (e.g. hme0). Usually the same as recvInterface parameter, but can be set to a different value in certain network configurations.

Mandatory: Yes

targetNode Copied

The name or IP address of the monitored remote node. This must not be the node that the NetProbe is running on.

Mandatory: Yes

services Copied

A list of services that the packets are sent to.

This can have just the number of the port the packets are sent to or the name of the service and the port number.

If the name of service is provided, it will be displayed in the view. Otherwise the port number will be shown.

Mandatory: Yes

services > service > var-name Copied

Name of service.

Mandatory: No

services > service > var-port Copied

Port number for the service.

Mandatory: Yes

var-sourceIP Copied

The Source IP address to be used in the outbound test packets.

Mandatory: No

Default: Defaults to the default IP address on the card.

var-timeout Copied

Timeout is the period within which we expect a reply to a packet that was sent out. If a reply is not received within this period then the packet is considered lost.

Packets are only fired on sample. This means that if a packet is considered lost, then the next packet fire would occur at the next sample. (i.e. packets will not be re-fired as soon as the timeout has been reached.)

Based on the ‘allowablePacketLoss’ setting, multiple such packets may be lost before the plugin reports that the particular target is unreachable.

See Example for timeout and allowablePacketLoss. Mandatory: No

Default: 5 seconds

var-allowablePacketLoss Copied

This is the maximum number of consecutive packets that can be lost without setting the status to ‘UNREACHABLE’.

For example, if the allowable packet loss is 3, then the plugin will ignore up to 3 consecutive packets being lost. If the fourth is lost, then it will report ‘UNREACHABLE’.

See Example for timeout and allowablePacketLoss.

Mandatory: No

Default: 3

Example for timeout and allowablePacketLoss Copied

Sample period: 4 seconds.

Timeout period: 2 seconds.

allowablePacketLoss: 3 (default)

0 sec [sample] Fire packet.
 1 sec
 2 sec Timeout has occurred. Packet is considered lost. (Total lost: 1)
 3 sec
 4 sec [sample] Re-fire packet.
 5 sec
 6 sec Timeout has occurred. Packet is considered lost. (Total lost: 2)
 7 sec
 8 sec [sample] Re-fire packet.
 9 sec
10 sec Timeout has occurred. Packet is considered lost. (Total lost: 3)
11 sec
12 sec [sample] Re-fire packet.
13 sec
14 sec Timeout has occurred. Packet is considered lost. (Total lost: 4)
15 sec
16 sec [sample] Re-fire packet. (report 'UNREACHABLE')

var-recvPort Copied

This value will override the default port used by the plugin to receive packets.

Mandatory: No

Default: 65535

behindFirewall Copied

This option when checked will consider RST+ACK reply from the target server as UNREACHABLE, otherwise any reply received from the target server is considered REACHABLE.

Mandatory: No

Default: false

checkTargetHostHasChangedIp Copied

Forces X Route to detect if the underlying IP address of a host name has +changed. This will restart the packet capture engine so X Route will +continue to check the correct host. In between restarts there is a +potential for losing packets.

Note

Restarting the packet capture engine will affect all X-Set plugins as they too might miss packets.

Mandatory: No

Default: False.

Permissions Copied

The plugin needs to open network devices, so you should run the Netprobe using root or administrator permission on Unix and Windows, respectively.

On Linux kernel versions 2.6.24 and higher, an alternative to running the Netprobe as root is by setting the CAP_NET_RAW and CAP_NET_ADMIN Linux capabilities on the Netprobe binary using the following command:

setcap cap_net_raw,cap_net_admin+eip <netprobe binary>

When running the Netprobe with set capabilities, the lib64/startup folder in the Netprobe directory should be in the ld.so trusted paths. Otherwise, the runtime libraries will not load properly. For guidance, see Run Netprobe under elevated privileges in Linux.

Third Party Libraries Copied

Windows: The Npcap packet capture library needs to be installed on the host. If Npcap is not installed using WinPcap API-compatible mode, then the Npcap installation directory must be added in the PATH environment variable or the DLL_PATH registry variable.

Unix: The shared library libpcap.so needs to be in the netprobe/lib64 directory. It is recommended to use libpcap.so version 1.0.0 or later.

Note: As the Netprobe needs to be run as root, the LD_LIBRARY_PATH is ignored for security reasons.

["Geneos"] ["Geneos > Netprobe"] ["User Guide", "Technical Reference"]

Was this topic helpful?