Как обнаружить установление VPN-соединения? - PullRequest
0 голосов
/ 29 марта 2020

Я пишу клиентскую программу, которая подключается к серверу Cisco Broadsoft XSI. В настоящее время клиентская программа написана на Python и работает на машине Windows.

Одной из задач является также установление sh соединения с потоковым ответом - постоянного HTTP-соединения с кодированной передачей.

Я сделал это с помощью библиотеки запросов, и программа работает нормально.

Но когда пользователь устанавливает VPN-соединение, потоковый ответ больше не работает - моя программа не получает ответов больше.

Я знаю, что мне нужно установить sh новое постоянное соединение с сервером Cisco Broadsoft.

Проблема в том, что я не могу обнаружить установление нового VPN-соединения пользователем , У меня есть два «решения» для этого:

  1. Периодическая проверка, изменился ли IP-адрес компьютера пользователя (в основном опрос whatsmyip)
  2. Определение отсутствия ответа на постоянное соединение в течение 15 секунд. , Каждые 15 секунд должно быть «сердцебиение» ответа на это постоянное соединение. Если их нет, я должен предположить, что пользователь установил новое VPN-соединение.

Ни одно из вышеперечисленных «решений» не является идеальным, потому что всегда существует задержка между установлением нового VPN-соединения пользователем и обнаружением того, что в моей программе.

Мой вопрос: есть ли способ обнаружить установление нового VPN-соединения? И дополнительное объяснение - на этом компьютере доступно много разных VPN-подключений, я должен обнаружить установление соединения с любым из них.

...