LINUX.ORG.RU

проверить, что VPN тунель рабочий

 


0

1

привет!

на девайсе (клиенте) устанавливаю OpenVPN для того, чтоб через VPN сервер иметь возможность подключаться к девайсам разбросанным по миру, для апдейтов.

настройка VPN происходит автоматически, скриптом установщиком ПО.

суть вопроса в том, что мне нужно добавить функцию проверки работоспособности VPN на этапе установки софта.

то есть скрипт все настроил, но должен еще и проверить что VPN работает.

VPN настроен так, чтоб трафик через него не уходил, то есть, после запуска VPN клиента я вижу появление tun0. достаточно ли этого чтоб утверждать что VPN рабоает?

спасибо.

★★★

возможно, я сейчас говорю глупость, но нельзя в скрипт просто ping добавить? или curl ifconfig.me, к примеру?

d09
()

На сервере смотри openvpn-status.log

Ну и вообще, документация есть https://openvpn.net/community-resources/controlling-a-running-openvpn-process/

Ссылка не очень удачная, ещё хуки можно задать на подключение/отключение.

А если надо проверять на клиенте, то пинговать «внутренний» ресурс.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 2)

то есть, после запуска VPN клиента я вижу появление tun0. достаточно ли этого чтоб утверждать что VPN рабоает?

Если ещё проверку маршрута добавить, то вполне.

vvn_black ★★★★★
()
Ответ на: комментарий от vvn_black

по поводу ссылки - там есть management interface. как я понял, я могу активировать его и при попощи telnet запросить, как минимум, статус…

А если надо проверять на клиенте, то пинговать «внутренний» ресурс.

в смысле, пинговать tun0? думаете, это гарантировано говорит о том что тунель исправен?

niXman ★★★
() автор топика
Ответ на: комментарий от niXman

проверяй тогда доступность внутренних ресурсов. Можешь пингануть другой конец туннеля.

anonymous
()
Ответ на: комментарий от niXman

Есть достаточно простой способ проверить, что пакет уйдет в впн.

ip ro get <ip>

где <ip> адрес ресурса доступный только через впн.

Если в выводе указан tun, значит пакет уйдет в впн.

vel ★★★★★
()
Ответ на: комментарий от niXman

А для реальной проверки работоспособности можно воспользоваться магией so_bindtodevice которую использует «ping -I tun0 <ip>»

в этом случае пакет уйдет через tun0

vel ★★★★★
()
Ответ на: комментарий от in_dance

«ping -I dev ip» позволяет передать пакет именно через указанное устройство фактически игнорируя некоторые данные из правил и таблиц маршрутизации

без этого например не обойтись при посылке броадкастов, но иногда можно применять и для др. целей.

vel ★★★★★
()
Ответ на: комментарий от vel

в моем случае это почему-то не работает…

пробую так:

ping -I tun0 google.com
PING google.com (172.217.20.14) from 10.8.0.41 tun0: 56(84) bytes of data.
^C
--- google.com ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6048ms

идеи?

niXman ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.