Проверка соединения с сервером через bat-файл
Иногда нужен такой файл или программка которая сама бы тестировала соединение с серверами.
Для своего пользования я сделал такой его конечно можно модернизировать и улучшить.
Чтобы в окне отображались русские буквы воспользуйтесь кодировщиком.
Принцип работы такой команда ping посылает 2 пакета на сервер.
Если оба пакета прошли то сервер подключен.
Если один пакет прошел другой нет то сервер подключен.
Появляется надпись conect
Если оба пакета не прошли то сервер отключен
Появляется надпись disconect
сервера тестируются последовательно.
Так будет выгладить запущенный пакетный файл.
код
@echo off
color 1a
TITLE proverka serverov
:proverka
:: сервер 1
echo server 1
ping -n 2 192.168.1.1 | find "TTL=" > nul
if %ERRORLEVEL% EQU 0 echo conect
if %ERRORLEVEL% EQU 1 echo disconect
:: сервер 2
echo server 2
ping -n 2 192.168.1.121 | find "TTL=" > nul
if %ERRORLEVEL% EQU 0 echo conect
if %ERRORLEVEL% EQU 1 echo disconect
:: сервер 3
echo server 3
ping -n 2 192.168.1.243 | find "TTL=" > nul
if %ERRORLEVEL% EQU 0 echo conect
if %ERRORLEVEL% EQU 1 echo disconect
:: Конец проверки
TIMEOUT /T 5
cls
goto proverka
Скрипт проверки соединения сейчас разберем по пунктам
@echo off -не выводить команды на экран
color 1a - цвет фона и букв
TITLE proverka serverov - Заголовок окна
:proverka -функция
::Сервер 1 Комментарии чтоб не забыть что проверяем
echo server1 - Имя сервера, который проверяем
ping - Команда пинг которая проверяет соединение
-n 2 - Количество пакетов для проверки.
можно ставить и больше но тогда тест будет проходить дольше.
192.168.1.1 -IP адрес сервера
| find "TTL=" > nul -Если хоть один пакет принят то все в норме
if %ERRORLEVEL% EQU 0 echo conect - подключен
if %ERRORLEVEL% EQU 1 echo disconect - Не подключен если оба пакета не прошли
TIMEOUT /T 5 - Ожидание 5 секунд
cls -Очищаем фон чтоб не копился мусор.
goto proverka - Возвращаемся к функции и проверяем снова
цикл длиться до бесконечности