Us ping: различия между версиями
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) Нет описания правки |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
'''ВНИМАНИЕ: Данный модуль является устаревшим и более не продаётся. Рекомендуется перейти на модуль [[usm_checker]]''' | |||
'''US_PING''' - это модуль для выявления абонентов/устройств в сети. Модуль пингует все IP-адреса из базы данных САП "UserSide" и обновляет дату активности откликнувшихся устройств/абонентов в системе. | '''US_PING''' - это модуль для выявления абонентов/устройств в сети. Модуль пингует все IP-адреса из базы данных САП "UserSide" и обновляет дату активности откликнувшихся устройств/абонентов в системе. | ||
Строка 19: | Строка 20: | ||
FindBin | FindBin | ||
'''Информацию по установке модуля''' и общую информацию для всех модулей см. на странице: [[Модули]] | |||
Настройка модуля осуществляется в файле '''us_config.tmp''' | Настройка модуля осуществляется в файле '''us_config.tmp''' | ||
Строка 31: | Строка 32: | ||
$zupass - пароль для доступа к базе UserSide | $zupass - пароль для доступа к базе UserSide | ||
$zucp - кодировка базы UserSide | $zucp - кодировка базы UserSide | ||
$zusqlport - порт подключения к базе данных ''(по-умолчанию 3306)'' | |||
$ps_logpath - путь к логам модуля | $ps_logpath - путь к логам модуля | ||
$zsilence - не выводить уведомления о работе модуля в консоль | $zsilence - не выводить уведомления о работе модуля в консоль | ||
$ps_binpath - путь к ARP | $ps_binpath - путь к ARP | ||
$ps_pingtype - тип пинга (по-умолчанию "tcp". Можно указать "icmp" или "udp") | $ps_pingtype - тип пинга (по-умолчанию "tcp". Можно указать "icmp" или "udp") | ||
$ps_onlydevice - флаг - пинговать только устройства ''(1/0)'' | $ps_onlydevice - флаг - пинговать только устройства ''(1/0)'' | ||
$ps_threadcount - к-во потоков для пинга ''(по-умолчанию | $ps_threadcount - к-во потоков для пинга ''(по-умолчанию 25)'' | ||
$zping_alt - альтернативный пинг ''(с помощью командной строки сервера)'' | $zping_alt - альтернативный пинг ''(с помощью командной строки сервера)'' | ||
$zping_alt_str - параметры для альтернативного пинга в командной строке | $zping_alt_str - параметры для альтернативного пинга в командной строке | ||
$zchangemac - если модуль находит для IP-адреса MAC адрес, который неизвестен САП "UserSide" ''(в базе другой MAC-адрес)'', то старый MAC затирается новым | $zchangemac - если модуль находит для IP-адреса MAC адрес, который неизвестен САП "UserSide" ''(в базе другой MAC-адрес)'', то старый MAC затирается новым | ||
$zdiapazon_start - начальный IP-адрес для пинга ''(например: 192.168.0.1)'' | |||
$zdiapazon_finish - конечный IP-адрес для пинга ''(например: 192.168.255.255)'' | |||
$zcity_list - перечень населенных пунктов ''(tbl_adr_city.CODE)'' IP-адреса которых опрашивать ''(через запятую)''. 0 - объекты без адреса | |||
== Рекомендации == | |||
Лучше всего себя зарекомендовала следующая схема: | |||
* Создайте два отдельных каталога и положите туда два модуля us_ping со своими файлами конфигурации us_config.tmp. Также создайте два отдельных каталога для их логов | |||
Модуль №1 - в файле конфигурации укажите параметры | |||
$ps_onlydevice = 1; | |||
$ps_threadcount = 25; | |||
Пропишите в системный cron запуск этого модуля с частотой запуска - ежеминутно | |||
Модуль №2 - в файле конфигурации укажите параметры | |||
$ps_onlydevice = 0; | |||
$ps_threadcount = 50; | |||
Пропишите в системный cron запуск этого модуля с частотой запуска - раз в 10 минут | |||
* Таким образом первый модуль будет опрашивать ежеминутно только оборудование, которого во-первых немного ''(меньше чем абонентов)'', а во-вторых практически всё оборудование постоянно активно, в отличии от абонентов. Следовательно практически постоянно будет мониторится активность оборудования, а абоненты будут опрашиваться раз в 10 минут, что менее критично. | |||
== Замечания == | |||
* Если ping опрашивает не все действительно рабочие устройства, то рекомендуется попробовать менять значение параметра $ps_pingtype ''(см. выше)'' | |||
* Также в зависимости от загрузки сервера и сетевой подсистемы возможны ситуации, когда операционная система "захлёбывается" от быстрого опроса множества устройств. Особенно, когда большое количество опрашиваемых устройств недоступно и не отвечает. В этой ситуации рекомендуется уменьшить значение параметра $ps_threadcount |
Текущая версия от 13:53, 6 апреля 2019
ВНИМАНИЕ: Данный модуль является устаревшим и более не продаётся. Рекомендуется перейти на модуль usm_checker
US_PING - это модуль для выявления абонентов/устройств в сети. Модуль пингует все IP-адреса из базы данных САП "UserSide" и обновляет дату активности откликнувшихся устройств/абонентов в системе.
Одновременно с этим - после выполнения пингов - идёт анализ arp-таблицы и обновляется активность у тех адресов, которые найдены в arp-таблице, но не откликнулись на пинг. Такие ситуации возможны когда у абонента включен firewall/брандмауэр.
Язык модуля: Perl
Текущая версия: см. на странице: Модули
Статус модуля: Платный
Необходимые модули Perl:
DBI Time::Local threads Thread::Queue Net::Ping Socket FindBin
Информацию по установке модуля и общую информацию для всех модулей см. на странице: Модули
Настройка модуля осуществляется в файле us_config.tmp
Параметры
$zuserver - адрес сервера с UserSide $zusqlport - номер порта MySQL с базой данных UserSide $zubase - имя базы данных UserSide $zuuser - имя пользователя для доступа к базе UserSide $zupass - пароль для доступа к базе UserSide $zucp - кодировка базы UserSide $zusqlport - порт подключения к базе данных (по-умолчанию 3306) $ps_logpath - путь к логам модуля $zsilence - не выводить уведомления о работе модуля в консоль
$ps_binpath - путь к ARP $ps_pingtype - тип пинга (по-умолчанию "tcp". Можно указать "icmp" или "udp") $ps_onlydevice - флаг - пинговать только устройства (1/0) $ps_threadcount - к-во потоков для пинга (по-умолчанию 25) $zping_alt - альтернативный пинг (с помощью командной строки сервера) $zping_alt_str - параметры для альтернативного пинга в командной строке $zchangemac - если модуль находит для IP-адреса MAC адрес, который неизвестен САП "UserSide" (в базе другой MAC-адрес), то старый MAC затирается новым $zdiapazon_start - начальный IP-адрес для пинга (например: 192.168.0.1) $zdiapazon_finish - конечный IP-адрес для пинга (например: 192.168.255.255) $zcity_list - перечень населенных пунктов (tbl_adr_city.CODE) IP-адреса которых опрашивать (через запятую). 0 - объекты без адреса
Рекомендации
Лучше всего себя зарекомендовала следующая схема:
- Создайте два отдельных каталога и положите туда два модуля us_ping со своими файлами конфигурации us_config.tmp. Также создайте два отдельных каталога для их логов
Модуль №1 - в файле конфигурации укажите параметры $ps_onlydevice = 1; $ps_threadcount = 25; Пропишите в системный cron запуск этого модуля с частотой запуска - ежеминутно
Модуль №2 - в файле конфигурации укажите параметры $ps_onlydevice = 0; $ps_threadcount = 50; Пропишите в системный cron запуск этого модуля с частотой запуска - раз в 10 минут
- Таким образом первый модуль будет опрашивать ежеминутно только оборудование, которого во-первых немного (меньше чем абонентов), а во-вторых практически всё оборудование постоянно активно, в отличии от абонентов. Следовательно практически постоянно будет мониторится активность оборудования, а абоненты будут опрашиваться раз в 10 минут, что менее критично.
Замечания
- Если ping опрашивает не все действительно рабочие устройства, то рекомендуется попробовать менять значение параметра $ps_pingtype (см. выше)
- Также в зависимости от загрузки сервера и сетевой подсистемы возможны ситуации, когда операционная система "захлёбывается" от быстрого опроса множества устройств. Особенно, когда большое количество опрашиваемых устройств недоступно и не отвечает. В этой ситуации рекомендуется уменьшить значение параметра $ps_threadcount