У меня есть экземпляр Ubuntu 12.04 m1.medium с двумя ENI. У меня есть настройка VPC с частной и общедоступной подсетями.
Частный: 10.50.1.0/24
Общедоступный: 10.50.101.0/24
Я инициировал экземпляр в частной подсети. Я настроил экземпляр NAT и маршрутизировал все серверы в частной подсети для доступа в Интернет. Таблицы маршрутов в частной подсети указывают на экземпляр NAT, а таблица маршрутов в общедоступной подсети указывает на интернет-шлюз.
Я пытаюсь добавить общедоступный интерфейс на машину, чтобы я мог разместить его за ELB. Когда я добавил второй ENI и настроил статический IP-адрес в / etc / network / interfaces и перезапустил сетевые службы, я больше не мог получить доступ из публичной подсети в частную подсеть.
Работает
Частный> частный
Частный> общедоступный
Не работает
Public> private
Из Public> Private я запустил TCPDUMp на частной машине и вижу входящий запрос. Я предполагаю, что он пытается маршрутизировать через новый общедоступный интерфейс вместо частного. Вот мой маршрут:
default 10.50.1.1 0.0.0.0 UG 100 0 0 eth0
10.50.1.0 * 255.255.255.0 U 0 0 0 eth0
10.50.101.0 * 255.255.255.0 U 0 0 0 eth1
Мои знания в области сетевых технологий ограничены, и я считаю, что мне нужно добавить несколько маршрутов, но я не уверен, какая команда / синтаксис должны быть.
Вы можете попробовать отключить проверку источника / назначения для сетевого интерфейса. Более того, вам не нужно создавать маршрутизацию на экземплярах, маршрутизации на уровне маршрута VPC должно быть достаточно.