Перейти к содержанию

Архитектура

Архитектура

Управление WireGuard Bridge полностью реализовано с помощью Python, которое делится на 5 фаз:

  1. Фаза 1: Настройка инфраструктуры (IP forwarding, поиск конфигурации OpenVPN)
  2. Фаза 2: Установка и настройка клиента OpenVPN
  3. Фаза 3: Генерация конфигурации WireGuard
  4. Фаза 4: Запуск сервера WireGuard
  5. Фаза 5: Мониторинг процессов

Как это работает

Фаза 1:

  • Включение IP forwarding
  • Поиск конфига OpenVPN

Фаза 2:

  • Запуск OpenVPN-клиента
  • Ожидание поднятия туннеля (интерфейс tun поднят)

Фаза 3:

  • Генерация или переиспользование ключей сервера WireGuard
  • Генерация или переиспользование ключей клиентов WireGuard
  • Генерация или переиспользование конфигурации сервера WireGuard

Фаза 4:

  • Запуск сервера WireGuard
  • Ожидание запуска сервера WireGuard
  • Готово к использованию

Фаза 5(пассивная):

  • Мониторинг процессов OpenVPN и WireGuard и перезапуск в случае сбоя
  • Управление перезапуском при добавлении новых клиентов в рантайме