# 5 Simple checks

#### Overview

Simple checks are normally used for remote agent-less checks of
services.

Note that Zabbix agent is not needed for simple checks. Zabbix
server/proxy is responsible for the processing of simple checks (making
external connections, etc).

Examples of using simple checks:

    net.tcp.service[ftp,,155]
    net.tcp.service[http]
    net.tcp.service.perf[http,,8080] 

::: noteclassic
*User name* and *Password* fields in simple check item
configuration are used for VMware monitoring items; ignored
otherwise.
:::

#### Supported simple checks

List of supported simple checks:

See also:

-   [VMware monitoring item
    keys](/manual/config/items/itemtypes/simple_checks/vmware_keys)

|Key|<|<|<|<|
|---|-|-|-|-|
|<|**Description**|**Return value**|**Parameters**|**Comments**|
|icmpping\[<target>,<packets>,<interval>,<size>,<timeout>\]|<|<|<|<|
|<|Host accessibility by ICMP ping.|0 - ICMP ping fails<br>1 - ICMP ping successful|**target** - host IP or DNS name<br>**packets** - number of packets<br>**interval** - time between successive packets in milliseconds<br>**size** - packet size in bytes<br>**timeout** - timeout in milliseconds|Example:<br>=> icmpping\[,4\] → if at least one packet of the four is returned, the item will return 1.<br><br>See also: table of [default values](simple_checks#icmp_pings).|
|icmppingloss\[<target>,<packets>,<interval>,<size>,<timeout>\]|<|<|<|<|
|<|Percentage of lost packets.|Float.|**target** - host IP or DNS name<br>**packets** - number of packets<br>**interval** - time between successive packets in milliseconds<br>**size** - packet size in bytes<br>**timeout** - timeout in milliseconds|See also: table of [default values](simple_checks#icmp_pings).|
|icmppingsec\[<target>,<packets>,<interval>,<size>,<timeout>,<mode>\]|<|<|<|<|
|<|ICMP ping response time (in seconds).|Float.|**target** - host IP or DNS name<br>**packets** - number of packets<br>**interval** - time between successive packets in milliseconds<br>**size** - packet size in bytes<br>**timeout** - timeout in milliseconds<br>**mode** - one of min, max, avg (default)|If host is not available (timeout reached), the item will return 0.<br><br>See also: table of [default values](simple_checks#icmp_pings).|
|net.tcp.service\[service,<ip>,<port>\]|<|<|<|<|
|<|Check if service is running and accepting TCP connections.|0 - service is down<br>1 - service is running|**service** - one of ssh, ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (see [details](/manual/appendix/items/service_check_details))<br>**ip** - IP address or DNS name (by default, host IP/DNS is used)<br>**port** - port number (by default standard service port number is used).|Example:<br>=> net.tcp.service\[ftp,,45\] → can be used to test the availability of FTP server on TCP port 45.<br><br>Note that with **tcp** service indicating the port is mandatory.<br>Note that these checks may result in additional messages in system daemon logfiles (SMTP and SSH sessions being logged usually).<br>Checking of encrypted protocols (like IMAP on port 993 or POP on port 995) is currently not supported. As a workaround, please use net.tcp.service\[tcp,<ip>,port\] for checks like these.<br>Services **https** and **telnet** supported since Zabbix 2.0.<br>Service **ntp** only works since Zabbix 2.0.15, 2.2.10 and 2.4.6, despite being available in earlier versions.|
|net.tcp.service.perf\[service,<ip>,<port>\]|<|<|<|<|
|<|Service performance check.|0 - service is down<br>sec - number of seconds spent while connecting to the service|**service** - one of ssh, ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (see [details](/manual/appendix/items/service_check_details))<br>**ip** - IP address or DNS name (by default, host IP/DNS is used)<br>**port** - port number (by default standard service port number is used).|Example:<br>=> net.tcp.service.perf\[ssh\] → can be used to test the speed of initial response from SSH server.<br><br>Note that with **tcp** service indicating the port is mandatory.<br>Checking of encrypted protocols (like IMAP on port 993 or POP on port 995) is currently not supported. As a workaround, please use net.tcp.service.perf\[tcp,<ip>,port\] for checks like these.<br>Services **https** and **telnet** supported since Zabbix 2.0.<br>Service **ntp** only works since Zabbix 2.0.15, 2.2.10 and 2.4.6, despite being available in earlier versions.<br>Called tcp\_perf before Zabbix 2.0.|

##### Timeout processing

Zabbix will not process a simple check longer than the Timeout seconds
defined in the Zabbix server/proxy configuration file.

#### ICMP pings

Zabbix uses external utility **fping** for processing of ICMP pings.

The utility is not part of Zabbix distribution and has to be
additionally installed. If the utility is missing, has wrong permissions
or its location does not match the location set in the Zabbix
server/proxy configuration file ('FpingLocation' parameter), ICMP pings
(**icmpping**, **icmppingloss**, **icmppingsec**) will not be processed.

See also: [known
issues](/manual/installation/known_issues#simple_checks)

**fping** must be executable by the user Zabbix daemons run as and
setuid root. Run these commands as user **root** in order to set up
correct permissions:

    shell> chown root:zabbix /usr/sbin/fping
    shell> chmod 4710 /usr/sbin/fping

After performing the two commands above check ownership of the **fping**
executable. In some cases the ownership can be reset by executing the
chmod command.

Also check, if user zabbix belongs to group zabbix by running:

    shell> groups zabbix

and if it's not add by issuing:

    shell> usermod -a -G zabbix zabbix

Defaults, limits and description of values for ICMP check parameters:

|Parameter|Unit|Description|Fping's flag|Defaults set by|<|Allowed limits<br>by Zabbix|<|
|---------|----|-----------|------------|---------------|-|---------------------------|-|

::: notewarning
Warning: fping defaults can differ depending on
platform and version - if in doubt, check fping
documentation.
:::

Zabbix writes IP addresses to be checked by any of three *icmpping\** keys to a temporary file, which is then passed to **fping**. If items have different key parameters, only ones with identical key parameters are written to a single file.<br>
All IP addresses written to the single file will be checked by fping in
parallel, so Zabbix icmp pinger process will spend fixed amount of time
disregarding the number of IP addresses in the file.
