EC2 t2.микро экземпляр не имеет общедоступной DNS
EC2 t2.микро-экземпляр не имеет публичного DNS
Я подключил к локальной сети экземпляр Amazon Web Service (AWS) EC2, t2.микро, который должен быть запущен в VPC. У VPC есть автоматическое назначение публичного IP-адреса, установленного в Yes. Разрешение DNS: да DNS-имена хостов: да Но на панели мониторинга EC2 экземпляр по-прежнему имеет пустой публичный DNS и публичный IP. Я несколько раз пытался перезапустить экземпляр, но ему по-прежнему не был назначен публичный IP-адрес. 5 эластичных IP-адресов, которые поставляются с нашим аккаунтом AWS, уже были использованный. Это позволяет получить публичный IP, назначенный t2.микро-экземпляр без использования эластичного IP?
Я прочитал сообщение: экземпляр EC2 не имеет публичного DNS , но у меня нет очков репутации, чтобы добавить комментарий, поэтому я публикую это как новый вопрос.
5 ответов:
Основываясь на предоставленной Вами информации, я не могу быть на 100% уверен, что мой ответ будет правильным, но вот мысль.
Самая распространенная причина отсутствия публичного IP-адреса для вашего экземпляра EC2 заключается в том, что вы запускаете экземпляр EC2 в частной подсети . Частная подсеть означает, что любые экземпляры EC2, расположенные в этой подсети, не могут быть напрямую адресованы из общедоступного Интернета. Другими словами, по определению экземпляры EC2 в частной подсети не могут иметь общедоступный IP-адрес. Это объясняет, почему проверка "публичного IP-адреса" не имеет никакого эффекта и почему вы не можете назначить эластичный IP-адрес.Нельзя просто переместить экземпляр из одной подсети в другую. Если вам нужно это сделать, вы можете создать AMI вашего экземпляра (щелкните правой кнопкой мыши на экземпляре EC2 и выберите
create image
), а затем запустить новый экземпляр из этого AMI в другой подсети.Чтобы определить, является ли ваша подсеть частной, посмотрите на таблицу маршрутов и посмотрите, есть ли у вас маршрутинтернет-шлюза . Перейти к VPC > подсети > выберите подсеть > таблица маршрутов вкладка. Найдите запись, которая имеет что-то вроде
igw-***
. Если вы видите это, это общедоступная подсеть. Если вы видите что-то вродеeni-*** / i-***
, это частная подсеть.
Щелкните правой кнопкой мыши на строке VPC на странице консоли управления VPC и выберите "Изменить имя хоста DNS". Установите его в положение "да". Необходимо разрешить все экземпляры с одним и тем же VPC.
При создании нового экземпляра в разделе "Шаг 3: Настройка сведений об экземпляре" необходимо включить функцию "Автоматическое назначение общедоступного IP-адреса".
Вот оно! :- )
Также проверьте: VPC - > подсети - > действия подсети - > изменить автоматическое назначение публичного IP
Столкнемся с той же проблемой сегодня. Мой экземпляр EC2 не имеет публичного DNS, поэтому я не могу подключиться через ssh.
Я попробовал и добился успеха с помощью следующих шагов:
Перейдите к VPC > интернет-шлюзы: убедитесь, что интернет-шлюз создан и подключен к VPC EC2
Goto VPC > таблицы маршрутов, выберите маршрут VPC, перейдите на вкладку маршруты: добавьте новое правило с помощью
++ назначение: 0.0.0.0/0
++ цель: выберите созданный интернет Шлюз
- Goto VPC > подсеть > таблица маршрутов вкладка: нажмите кнопку Изменить, перейдите к таблице маршрутов с пунктом назначения 0.0.0.0/0 выше
Готово.
У меня была та же проблема. Причиной моей проблемы оказалось то, что я использовал таблицу маршрутов, которая не была связана с подсетью.
Введите описание изображения здесь
После того, как я изменил подсеть, моим экземплярам были назначены общедоступные IP-адреса.