[comment]: # attributes: notoc

[comment]: # ({a6162aaf-be4ab03d})
# 2 Простая проверка

[comment]: # ({/a6162aaf-be4ab03d})

[comment]: # ({d5cd9560-76023448})
#### Обзор

Простые проверки обычно используются для удалённых безагентных проверок сервисов.

Обратите внимание, что Zabbix агент не требуется для простых проверок. За обработку простых проверок (выполнение внешних подключений и т. д.) отвечает Zabbix сервер/прокси.

Примеры использования простых проверок:

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

::: noteclassic
Поля *Имя пользователя* и *Пароль* (ограничены 255 символами) в настройке элемента данных простой проверки используются для элементов мониторинга VMware; в остальных случаях игнорируются.
:::

[comment]: # ({/d5cd9560-76023448})

[comment]: # ({eeaded49-f59a5ccc})
#### Поддерживаемые проверки

Ключи элементов данных перечислены без необязательных параметров и дополнительной информации. Щёлкните по ключу элемента данных, чтобы увидеть полные сведения.

См. также [ключи элементов данных мониторинга VMware](/manual/vm_monitoring/vmware_keys).

|Ключ элемента данных|Описание|
|--|--------|
|[icmpping](#icmpping)|Доступность узла сети по ICMP ping.|
|[icmppingloss](#icmppingloss)|Процент потерянных пакетов.|
|[icmppingretry](#icmppingretry)|Доступность узла сети по ICMP ping с повторными попытками.|
|[icmppingsec](#icmppingsec)|Время отклика ICMP ping.|
|[net.tcp.service](#nettcpservice)|Проверяет, запущен ли сервис и принимает ли он TCP-соединения.|
|[net.tcp.service.perf](#nettcpserviceperf)|Проверяет производительность TCP-сервиса.|
|[net.udp.service](#netudpservice)|Проверяет, запущен ли сервис и отвечает ли он на UDP-запросы.|
|[net.udp.service.perf](#netudpserviceperf)|Проверяет производительность UDP-сервиса.|

[comment]: # ({/eeaded49-f59a5ccc})

[comment]: # ({99bf7f73-23d7246f})
#### Подробности ключа элемента данных

Параметры без угловых скобок являются обязательными. Параметры, отмеченные угловыми скобками **<** **>**, являются необязательными.

[comment]: # ({/99bf7f73-23d7246f})

[comment]: # ({52d234e4-7d8dff2e})
##### icmpping\[<цель>,<пакеты>,<интервал>,<размер>,<время ожидания>,<опции>\] {#icmpping}

<br>
Доступность хоста через пинг по ICMP.<br>
Возвращаемое значение: *0* — ошибка при пинге по ICMP; *1* — успешный пинг по ICMP.

Параметры:

-   **цель** — IP или DNS имя хоста;
-   **пакеты** — количество пакетов;
-   **интервал** — время между последовательными пакетами в миллисекундах;
-   **размер** — размер пакета в байтах;
-   **время ожидания** — время ожидания в миллисекундах;
-   **опции** — используется для разрешения перенаправления: если пусто (значение по умолчанию), перенаправленные ответы рассматриваются как целевой хост выключен; если установлено значение *allow_redirect*, перенаправленные ответы рассматриваются как целевой хост включён.

Смотрите также таблицу [значений по умолчанию](#значения-по-умолчанию).

Пример:

    icmpping[,4] #если по крайней мере один пакет из четырёх вернётся, элемент данных возвратит 1.

[comment]: # ({/52d234e4-7d8dff2e})

[comment]: # ({1976ee61-6cd0f1b1})
##### icmppingloss\[<цель>,<пакеты>,<интервал>,<размер>,<время ожидания>,<опции>\] {#icmppingloss}

<br>
Процентное отношение потерянных пакетов.<br>
Возвращаемое значение: *Число с плавающей точкой*.

Параметры:

-   **цель** — IP или DNS имя хоста;
-   **пакеты** — количество пакетов;
-   **интервал** — время между последовательными пакетами в миллисекундах;
-   **размер** — размер пакета в байтах;
-   **время ожидания** — время ожидания в миллисекундах;
-   **опции** — используется для разрешения перенаправления: если пусто (значение по умолчанию), перенаправленные ответы рассматриваются как целевой хост выключен; если установлено значение *allow_redirect*, перенаправленные ответы рассматриваются как целевой хост включён.

Смотрите также таблицу [значений по умолчанию](#значения-по-умолчанию).

[comment]: # ({/1976ee61-6cd0f1b1})

[comment]: # ({1f834525-a7b509ca})
##### icmppingretry\[<target>,<retries>,<backoff>,<size>,<timeout>,<options>\] {#icmppingretry}

<br>
Доступность узла сети по ICMP ping с повторными попытками. Если первый пакет успешно доставлен, проверка останавливается; если пакет не проходит, попытки повторяются до достижения максимального числа попыток, заданного в параметре `retries`. Этот элемент данных полезен для уменьшения количества пакетов, передаваемых по сети.<br>
Возвращаемое значение: *0* — ICMP ping неуспешен; *1* — ICMP ping успешен.

Параметры:

-   **target** — IP-адрес или DNS-имя узла сети;
-   **retries** — количество повторных попыток ping целевого узла, не включая первую попытку (0 или больше; по умолчанию 1);
-   **backoff** — множитель, на который увеличивается время ожидания при каждом последующем запросе (диапазон 1.0-5.0; по умолчанию 1.0);
-   **size** — размер пакета в байтах;
-   **timeout** — тайм-аут в миллисекундах;
-   **options** — используется для разрешения перенаправления: если пусто (значение по умолчанию), ответы с перенаправлением обрабатываются так, как будто целевой узел сети недоступен; если установлено значение *allow_redirect*, ответы с перенаправлением обрабатываются так, как будто целевой узел сети доступен.

См. также таблицу [значений по умолчанию](#default-values).

[comment]: # ({/1f834525-a7b509ca})

[comment]: # ({5c6701a7-b5636838})
##### icmppingsec\[<цель>,<пакеты>,<интервал>,<размер>,<время ожидания>,<режим>,<опции>\] {#icmppingsec}

<br>
Время ответа на пинг по ICMP (в секундах).<br>
Возвращаемое значение: *Число с плавающей точкой*.

Параметры:

-   **цель** — IP или DNS имя хоста;
-   **пакеты** — количество пакетов;
-   **интервал** — время между последовательными пакетами в миллисекундах;
-   **размер** — размер пакета в байтах;
-   **время ожидания** — время ожидания в миллисекундах;
-   **режим** — один из min, max или avg (по умолчанию);
-   **опции** — используется для разрешения перенаправления: если пусто (значение по умолчанию), перенаправленные ответы рассматриваются как целевой хост выключен; если установлено значение *allow_redirect*, перенаправленные ответы рассматриваются как целевой хост включён.

Комментарии:

-   Потерянные пакеты либо пакеты с превышенным временем ожидания при вычислениях не учитываются;
-   Если хост недоступен (превышено время ожидания), элемент данных вернёт 0;
-   Если возвращаемое значение меньше 0.0001 секунд, то оно будет выставлено в 0.0001 секунд;
-   Смотрите также таблицу [значений по умолчанию](#значения-по-умолчанию).

[comment]: # ({/5c6701a7-b5636838})

[comment]: # ({878d3b27-b0a71170})
##### net.tcp.service[service,<ip>,<port>] {#nettcpservice}

<br>
Проверяет, запущен ли сервис и принимает ли он TCP-соединения.<br>
Возвращаемое значение: *0* — сервис недоступен; *1* — сервис запущен.

Параметры:

-   **service** — возможные значения: *ssh*, *ldap*, *smtp*, *ftp*, *http*, *pop*, *nntp*, *imap*, *tcp*, *https*, *telnet* (см. [подробности](/manual/appendix/items/service_check_details));
-   **ip** — IP-адрес или DNS-имя (по умолчанию используется IP/DNS узла сети);
-   **port** — номер порта (по умолчанию используется стандартный номер порта сервиса).

Комментарии:

-   Обратите внимание, что для сервиса *tcp* указание порта обязательно;
-   Эти проверки могут приводить к появлению дополнительных сообщений в системных лог-файлах демонов (обычно регистрируются SMTP- и SSH-сеансы);
-   Проверка зашифрованных протоколов (например, IMAP на порту 993 или POP на порту 995) в настоящее время не поддерживается. В качестве обходного решения используйте `net.tcp.service[tcp,<ip>,port]` для подобных проверок.

Пример:

    net.tcp.service[ftp,,45] #Этот элемент данных можно использовать для проверки доступности FTP-сервера на TCP-порту 45.

::: noteimportant
Если SELinux работает в режиме enforced, пользовательские простые TCP/UDP-проверки могут блокироваться политикой. Чтобы проверить и разрешить новое исходящее соединение, просмотрите отказы аудита: с помощью ``grep denied /var/log/audit/audit.log``
:::

[comment]: # ({/878d3b27-b0a71170})

[comment]: # ({39da67f1-946385b4})
##### net.tcp.service.perf[сервис,<ip>,<порт>] {#nettcpserviceperf}

<br>
Проверка производительности TCP сервиса.<br>
Возвращаемое значение: *Число с плавающей точкой*: *0.000000* — сервис недоступен; *секунды* — количество секунд, потребовавшихся для подключения к сервису.

Параметры:

-   **сервис** — возможные значения: *ssh*, *ldap*, *smtp*, *ftp*, *http*, *pop*, *nntp*, *imap*, *tcp*, *https*, *telnet* (смотрите [подробности](/manual/appendix/items/service_check_details));
-   **ip** — IP или DNS имя (по умолчанию используется IP/DNS узла сети);
-   **порт** — номер порта (по умолчанию используется стандартный для сервиса номер порта).

Комментарии:

-   Обратите внимание, для сервиса *tcp* обязательно нужно указывать порт;
-   Проверка шифрованных протоколов (таких как IMAP на 993 порту или POP на 995 порту) в настоящее время не поддерживается. Как обходной вариант решения, пожалуйста, используйте `net.tcp.service[tcp,<ip>,порт]` для подобных проверок.

Пример:

    net.tcp.service.perf[ssh] #Этот элемент данных можно использовать для проверки скорости начального ответа от SSH сервера.

[comment]: # ({/39da67f1-946385b4})

[comment]: # ({5cba2094-2859223a})
##### net.udp.service[сервис,<ip>,<порт>] {#netudpservice}

<br>
Проверка, запущен ли сервис и отвечает ли на UDP запросы.<br>
Возвращаемое значение: *0* — сервис недоступен; *1* — сервис работает.

Параметры:

-   **сервис** — возможные значения: *ntp* (смотрите [подробности](/manual/appendix/items/service_check_details));
-   **ip** — IP адрес или DNS имя (по умолчанию используется IP/DNS узла сети);
-   **порт** — номер порта (по умолчанию используется стандартный для сервиса номер порта).

Пример:

    net.udp.service[ntp,,45] #Этот элемент данных можно использовать для тестирования доступности NTP сервиса на 45 порту UDP.

[comment]: # ({/5cba2094-2859223a})

[comment]: # ({bae0ccf0-9cf5922c})
##### net.udp.service.perf[сервис,<ip>,<порт>] {#netudpserviceperf}

<br>
Проверка производительности UDP сервиса.<br>
Возвращаемое значение: *Число с плавающей точкой*: *0.000000* — сервис недоступен; *секунды* — количество секунд, потребовавшихся на ожидание ответа от сервиса.

Параметры:

-   **сервис** — возможные значения: *ntp* (смотрите [подробности](/manual/appendix/items/service_check_details));
-   **ip** — IP адрес или DNS имя (по умолчанию используется IP/DNS узла сети);
-   **порт** — номер порта (по умолчанию используется стандартный для сервиса номер порта).

Пример:

    net.udp.service.perf[ntp] #Этот элемент данных можно использовать для тестирования времени ответа от NTP сервиса.

[comment]: # ({/bae0ccf0-9cf5922c})

[comment]: # ({621c13d4-85612a2b})
::: noteimportant
Для поддержки SourceIP в простых проверках LDAP (например в `net.tcp.service[ldap]`) требуется OpenLDAP версии 2.6.1 или новее.
:::

[comment]: # ({/621c13d4-85612a2b})

[comment]: # ({a509dbd8-92a6c4ae})
#### Обработка тайм-аута

Гибкие тайм-ауты элементов данных, хотя и поддерживаются для простых проверок, не применяются к `icmpping*` и элементам данных VMware. См. [Поддержка гибких тайм-аутов](/manual/config/items/item#flexible-timeout-support).

[comment]: # ({/a509dbd8-92a6c4ae})

[comment]: # ({25a7290c-b08a4508})
#### ICMP-пинги

Zabbix использует внешнюю утилиту **[fping](https://fping.org/)** для обработки ICMP-пингов (**icmpping**, **icmppingloss**, **icmppingretry**, **icmppingsec**).

[comment]: # ({/25a7290c-b08a4508})

[comment]: # ({d8eb34a5-e3dd9826})
##### Установка

fping не входит в состав Zabbix и должен быть установлен отдельно:

- На различных Unix-подобных платформах пакет fping доступен в стандартных репозиториях, но не предустановлен. В этом случае для установки fping можно использовать менеджер пакетов.

- Zabbix предоставляет [пакеты fping](https://repo.zabbix.com/third-party/2024-10/) для RHEL и производных от него дистрибутивов. Обратите внимание, что эти пакеты предоставляются без официальной поддержки.

- fping также можно скомпилировать [из исходного кода](https://github.com/schweikert/fping/blob/develop/README.md#installation).

[comment]: # ({/d8eb34a5-e3dd9826})

[comment]: # ({1f866e68-9ced6345})
##### Конфигурация

Укажите расположение fping в параметре *[FpingLocation](/manual/appendix/config/zabbix_server#fpinglocation)* файла конфигурации сервера/прокси Zabbix 
(или параметре *[Fping6Location](/manual/appendix/config/zabbix_server#fping6location)* для использования IPv6-адресов).

fping должен быть исполняемым для пользователя, от имени которого запущен сервер/прокси Zabbix, и этот пользователь должен иметь достаточные права.

См. также: [Известные проблемы](/manual/installation/known_issues#simple-checks) по обработке простых проверок с версиями fping ниже 3.10.

[comment]: # ({/1f866e68-9ced6345})

[comment]: # ({feb0af93-3c21487d})
##### Значения по умолчанию

Значения по умолчанию, ограничения и описание значений для параметров ICMP-проверки:

|Параметр|Единица|Описание|Флаг Fping|Значения по умолчанию задаются|<|Допустимые ограничения<br>в Zabbix|<|
|--|--|--------|-|--|--|--|--|
| | | | |**fping**|**Zabbix**|**мин**|**макс**|
|packets|число|Количество пакетов запроса, отправляемых целевому узлу|-C| |3|1|10000|
|interval|миллисекунды|Время ожидания между последовательными пакетами для отдельного целевого узла|-p|1000| |20|без ограничений|
|size|байты|Размер пакета в байтах<br>56 байт на x86, 68 байт на x86_64|-b|56 или 68| |24|65507|
|timeout|миллисекунды|**fping v3.x** — тайм-аут ожидания после отправки последнего пакета, зависит от флага *-C*<br> **fping v4.x** — индивидуальный тайм-аут для каждого пакета|-t|**fping v3.x** — 500<br>**fping v4.x** и новее — наследуется от флага *-p*, но не более 2000| |50|без ограничений|
|retries|число|Количество попыток проверки доступности целевого узла ping-запросом, не включая первую попытку|-r|3|1|0|без ограничений|
|backoff factor|число|Число, на которое умножается время ожидания при каждом последующем запросе|-B|1.5|1.0|1.0|5.0|

Значения по умолчанию могут немного отличаться в зависимости от платформы и версии.

Кроме того, Zabbix использует параметры fping *-i interval ms* (не путать с параметром элемента данных *interval*, упомянутым в таблице выше,
который соответствует параметру fping *-p*) и *-S source IP address* (или *-I* в более старых версиях fping).
Эти параметры автоматически определяются путём запуска проверок с различными комбинациями параметров.
Zabbix пытается определить минимальное значение в миллисекундах, которое fping позволяет использовать с *-i*, перебирая 3 значения: 0, 1 и 10.
Затем первое успешно сработавшее значение используется для последующих ICMP-проверок.
Этот процесс выполняется каждым процессом [ICMP pinger](/manual/concepts/server#server-process-types-and-threads) отдельно.

Автоматически определённые параметры fping сбрасываются каждый час и определяются заново при следующей попытке выполнить ICMP-проверку.
Установите [DebugLevel](/manual/appendix/config/zabbix_server#debuglevel)>=4, чтобы просматривать подробности этого процесса в файле журнала сервера или прокси.

Zabbix записывает IP-адреса, которые должны быть проверены любым из ключей *icmpping\**, во временный файл, который затем передаётся fping.
Если элементы данных имеют разные параметры ключа, в один файл записываются только те, у которых параметры ключа совпадают.
Все IP-адреса, записанные в один файл, будут проверяться fping параллельно,
поэтому процесс ICMP pinger в Zabbix будет затрачивать фиксированное количество времени независимо от числа IP-адресов в файле.

[comment]: # ({/feb0af93-3c21487d})
