Мне нужно проверить соединение vpn, когда онлайн / вверх с командным файлом.

На самом деле я использую этот код:

PING -n 5 www.google.com|FIND /I "TTL">NUL

IF NOT "%ERRORLEVEL%"=="1" (
Echo "Vpn Connection Is Up"
)
IF "%ERRORLEVEL%"=="1" (
Echo "Vpn Connection Is Down"
)

Иногда пинг не отвечает или выдает общий отказ.

Я хотел бы знать, что есть лучшая альтернатива пакетного кода, чем команда ping.

Я попробовал этот альтернативный код, но не распознал vpn, когда онлайн / вверх, потому что адаптер всегда установлен на моем компьютере.

Первый альтернативный код:

ipconfig|find /i "VPN" && GOTO startAPP || GOTO connectVPN

Второй альтернативный код:

ipconfig|find /i "VPN"

if %errorlevle%==1 goto:connectVPN

echo Starting APP !
exit/b

:connectVPN
echo connecting to VPN

Третий альтернативный код:

:start
cls
rasdial | find /I "%vpnname%" > nul
if errorlevel 1 goto vpndown
if errorlevel 0 goto vpnup

Можете ли вы порекомендовать альтернативную команду ping для интеграции в мой пакетный код, пожалуйста?

Код альтернатив не распознает, когда vpn-соединение подключено, он распознает, установлен ли на моем компьютере адаптер, но мне нужно знать, когда vpn подключен / готов (готов к работе в Интернете).

1 ответ1

0

Вы можете посмотреть этот файл: /etc/openvpn/openvpn-status.log

Я также попытался бы посмотреть на вывод ifconfig и проверить, существует ли адаптер и работает ли он или нет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .