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

Определите, какой сетевой интерфейс EC2 отвечает как общедоступный IP-адрес

У нас есть существующий экземпляр EC2 Server 2008 в VPC с эластичным IP-адресом, связанным с сетевым интерфейсом eth0. Мы добавили в экземпляр дополнительный сетевой интерфейс eth1, и этот интерфейс также имеет эластичный IP-адрес, который мы привязываем к другому веб-сайту.

Перед внесением этого изменения экземпляр распознавался извне сети Amazon по эластичному IP-адресу, прикрепленному к сетевому интерфейсу eth0. После перезагрузки сервера сервер теперь распознается вне сети как эластичный IP-адрес, прикрепленный к сетевому интерфейсу eth1.

Когда я говорю «Распознано», я имею в виду, что внешние ресурсы теперь видят экземпляр как эластичный IP-адрес, прикрепленный к вторичному сетевому интерфейсу. С помощью http://whatismyipaddress.com/ с сервера отображается эластичный IP-адрес, подключенный к сетевому интерфейсу eth1 вместо сетевого интерфейса eth0. Поскольку этот сервер подключается к другим внешним службам, у которых есть ограничения на то, какие IP-адреса могут устанавливать соединения, теперь он блокируется. Это также почтовый сервер, и я предпочитаю оставаться на IP-адресе с хорошей репутацией.

Как я могу сделать так, чтобы сервер выглядел снаружи как эластичный IP-адрес, связанный с сетевым интерфейсом eth0, вместо эластичного IP-адреса, связанного с eth1?

Чтобы решить эту проблему, я сделал следующее.

Я отсоединил оба эластичных IP-адреса, которые были подключены к моему экземпляру, отметив, к какому сетевому интерфейсу каждый был подключен. Затем я связал эластичные IP-адреса с противоположными сетевыми интерфейсами экземпляра. Затем мне пришлось обновить привязку для веб-сайтов в IIS, но мой сервер вернулся к отображению исходного эластичного IP-адреса для внешних служб.