Я пытаюсь настроить Конфигурация "Вариант 3" для Google Cloud VPN, с двумя шлюзами Google Cloud VPN слева и StrongSWAN или OpenSWAN справа:
Если у вас есть два одноранговых VPN-шлюза и два VPN-шлюза Compute Engine, каждый VPN-шлюз Compute Engine может иметь туннель, указывающий на каждый общедоступный IP-адрес однорангового VPN-шлюза, что дает вам четыре туннеля с балансировкой нагрузки между VPN-шлюзом, что потенциально увеличивает пропускную способность в 4 раза.
Проблема в том, что, насколько я могу судить, выполнение этого в конфигурации активный / активный (оба туннеля обслуживают трафик) требует, чтобы оба одноранговых шлюза имели одинаковые rightsubnet
, что приводит к тому, что второй туннель прерывается с "маршрутом уже используется":
Sep 14 15:44:02 test-vpn ipsec: 002 added connection description "google1"
Sep 14 15:44:02 test-vpn ipsec: 002 added connection description "google2"
Sep 14 15:44:02 test-vpn ipsec: 003 "google2": cannot route -- route already in use for "google1"
Sep 14 15:44:02 test-vpn ipsec: 025 "google2": could not route
Есть ли способ поддержать эту конфигурацию с помощью StrongSWAN, OpenSWAN или другого программного пакета VPN? я вижу StrongSWAN имеет экспериментальный режим высокой доступности, но выглядит неудобно и несовместимо.
Как вы могли заметить в вариантах 1 и 2 статья об увеличении пропускной способности VPN, шлюз или сеть VPN Compute Engine автоматически балансирует нагрузку трафика на одноранговые VPN-шлюзы.
Для варианта 3 вам нужно будет создать кластер из ваших VPN-шлюзов, чтобы запустить балансировку нагрузки для ваших IPsec-шлюзов VPN.
Как вы упомянули, это можно сделать с помощью кластер распределения нагрузки функция StrongSwan или вы можете настроить балансировщик нагрузки (например, HAProxy) для распределения рабочих нагрузок из вашей удаленной сети между одноранговыми VPN-шлюзами.