Ручная маршрутизация в экземпляре EC2

Ручная маршрутизация в экземпляре EC2

У меня есть VPC с двумя экземплярами EC2:

  1. API
    • Частный IP 10.0.103.200(частная подсеть)
  2. VPN-маршрутизатор
    • Частный IP 10.0.103.100(частная подсеть)
    • Частный IP 10.0.4.100(публичная подсеть) и публичный IP
    • Внутренне установленный IP10.69.69.1

Публичный IP VPN используется внешними устройствами для подключения с помощью IPSEC/L2TP. Клиенты, подключающиеся таким образом, получают адреса из 10.69.69.0/24пространства, которое управляется только внутри самой машины VPN. Машина VPN имеет адрес10.69.69.1

Конечно, таблица маршрутизации AWS не знает об этом 10.69.69.1, однако, поскольку API может видеть и взаимодействовать с VPN, я должен иметь возможность просто сделать:

ip route add 10.69.69.0/24 via 10.0.103.100

К сожалению, это не работает и 10.69.69.1по-прежнему недоступно из API. Я проверил, что VPN вообще не получает трафик в этом случае.

Делает ли AWS что-то, что не позволяет мне этого достичь?

Конечной целью является обеспечение 10.69.69.0/24доступа ко всему через API, но первым шагом является получение доступа к собственному адресу VPN в этом пространстве.

Я знаю, что у AWS тоже есть свои собственные VPN-сервисы, но они слишком дороги для моего варианта использования. Мне нужно подключить кучу коробок (маршрутизатор LTE, Raspbery Pi и IP-камеру). AWS IoT кажется крутым, но, к сожалению, он, вероятно, не решит мою задачу. Кроме того, я хотел бы избежать необходимости подключаться из API к VPN с помощью IPSEC/L2TP, но в настоящее время это, похоже, единственный вариант, который я знаю.

решение1

Скорее всего, вы сталкиваетесь с проверкой source/dest, которую экземпляры EC2 выполняют по умолчанию: они блокируют любой трафик, который не предназначен для их интерфейсов напрямую. Это та же проблема, с которой вы сталкиваетесь при создании экземпляра NAT.

Это можно отключить.в консолив сетевых настройках вашего экземпляра.

Связанный контент