Назад | Перейти на главную страницу

Назначьте несколько эластичных IP-адресов экземпляру EC2

Когда я пытаюсь связать второй эластичный IP-адрес с небольшим экземпляром EC2, текущий назначенный эластичный IP-адрес отключается.

Мне нужно использовать VPC?

Классические экземпляры EC2 могут иметь только один связанный с ними эластичный IP-адрес. Чтобы получить несколько IP-адресов, вы должны использовать VPC и настроить несколько сетевых интерфейсов на своем экземпляре.

ПРИМЕЧАНИЕ: где-то между 2012 и 2014 годами AWS изменился так, что одному ENI можно назначить несколько EIP. В результате этот ответ и вопрос теряют актуальность.

Чтобы получить 2 эластичных IP-адреса, связанных с одним экземпляром ec2, вам необходимо предоставить другой маршрут для второго IP-адреса. Это включает в себя установку нового правила IP, которое определяет, какой маршрут следует использовать.

Например, есть экземпляр с двумя сетевыми интерфейсами (пусть с именем eth0 и eth1), каждый из которых имеет один внутренний IP-адрес (172.31.4.255 и 172.48.55.23), которые переводятся в связанные с ним эластичные IP-адреса.

Вам необходимо указать IP-адрес eth1 (172.48.55.23), чтобы выбрать другой маршрут:

 ip rule add from 172.48.55.23 table default

Затем свяжите его маршрут по умолчанию с этим правилом:

 ip route add default via 172.48.0.1 dev eth1 table default

И очистите кеш:

ip route flush cache

Вы можете найти "формальное" объяснение из этого статья