Технический форум

Технический форум (http://www.tehnari.ru/)
-   Операционная система Windows (http://www.tehnari.ru/f37/)
-   -   Проверка доступности ip-адреса (http://www.tehnari.ru/f37/t266230/)

Max 07.11.2019 22:38

Проверка доступности ip-адреса
 
Приветствую Вас, уважаемые коллеги и участники форума.
Необходимо сделать батник, который будет "мониторить" доступность ip-адреса и, в случае недоступности, высылать уведомление на электронную почту.
Интервал проверки, допустим, можно задать в планировщике.
Но вот с самим батником у меня пока трудности, ибо мне неведомо, в какую степь копать.
В общем, жду Вашей помощи.

mike_ 07.11.2019 23:22

Привет, я тебе на питоне напишу программу, постараюсь на завтра.
ІР адрес один и тот же, или разние надо?
Цитата:

Интервал проверки, допустим, можно задать в планировщике.
А какой интервал, лучше в программе сделать, чтоби она всегда запущена бьіла?
Только для виндовса надо?

Max 07.11.2019 23:46

Цитата:

Сообщение от mike_ (Сообщение 2669352)
ІР адрес один и тот же, или разние надо?

ip-адрес будет один, но он может измениться в ближайшее время (месяц, два, полгода).
Цитата:

Сообщение от mike_ (Сообщение 2669352)
А какой интервал, лучше в программе сделать, чтоби она всегда запущена бьіла?

Интервал проверки 1 минута (желательно), а так можно 3-5 мин (в зависимости от нагрузки на систему).
Цитата:

Сообщение от mike_ (Сообщение 2669352)
Только для виндовса надо?

Да, для Windows 7/10.

mike_ 08.11.2019 09:57

Вложений: 1
Привет. Впринципе готово, только позже еще протестирую.
Цитата:

Интервал проверки 1 минута (желательно), а так можно 3-5 мин (в зависимости от нагрузки на систему).
Ресурсов кушает до 10 Мб RAM, интервал задаешь в конфигу.

Почта, пароль от почтьі, сервер, - задаешь в конфигу. По смене конфига программу перезапускаешь)
Скомпилированая программа весит около 6 МБ, из-за ограничения форума не смог прикрепить, дай почту в личку)

П.С. почту тестировал только гугл, и надо біило изменить доступ для 'lesssecureapps' тут: https://myaccount.google.com/lesssecureapps

mike_ 08.11.2019 10:23

Хотя, держи лучше ссилку на гитхаб:
https://github.com/mykola-b/Ping4Max
Файл ping4max.py качать не надо, етот код в ехе-шке

Если что-то не будет работать - пиши, я позже протестирую и додам обработку исключений, если надо еще какой - то функционал - пиши)

Max 09.11.2019 23:52

Вложений: 1
В общем, решение подсказали на другом форуме.
Вот батник:
Код:

@echo off
set "mailsender=C:\Portable\mailsend\mailsend1.20b.exe"
set ip=10.0.3.234
 
ping -n 1 %ip%|find /i "TTL=">nul||(^
"%mailsender%" ^
-smtp smtp.gmail.com ^
-port 465 ^
-name "%USERNAME%" ^
-user from ^
-f from@gmail.com ^
-pass PASSWORD ^
-t to@gmail.com ^
-sub "Error backup to Sklad IP %ip%" ^
-M "The computer on the sklad %ip%" ^
-auth-plain +bc +cc -q -ssl)

Скачать mailsend: Вложение 446138
Создаем задание в планировщике и кидаем туда скрипт.
Интервал срабатывания задания каждый ставит на свой вкус. :)

Max 18.11.2019 10:20

В общем, батник работает, все нормально, но выявилась такая брешь (в принципе, предсказуемая): когда на сервере в филиале, где установлен батник, пропадает интернет, батник не может достучаться то требуемого ip (это логично), когда интернет появляется вновь, батник отсылает уведомление на электронку о том, что небыл доступен ip-адрес второго филиала, хотя при этом во втором филиале с инетом все было нормально.
Следовательно, батник пришлось доработать и окончательный вид у него такой:
Код:

@echo off
set "mailsender=C:\Portable\mailsend\mailsend1.20b.exe"
set ip=10.0.3.234
 
ping -n 1 ya.ru&& (call :ping)|| (call :mail)
pause& exit
 
:ping
 ping -n 1 %ip%
exit /b
 
:mail
"%mailsender%" ^
-smtp smtp.gmail.com ^
-port 465 ^
-name "%USERNAME%" ^
-user from ^
-f from@gmail.com ^
-pass PASSWORD ^
-t to@gmail.com ^
-sub "Error backup to Sklad IP %ip%" ^
-M "The computer on the sklad %ip%" ^
-auth-plain +bc +cc -q -ssl
exit /b



Часовой пояс GMT +4, время: 18:57.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.