Парень, с которым я работаю, дал мне учетные данные EC2 для входа на консоль EC2. Я не тот, кто его создал. В некоторых экземплярах отображается общедоступное имя DNS, а у других - пустой публичный DNS. Я хочу иметь возможность подключаться к экземплярам, которые имеют пустой публичный DNS. Я не смог понять, почему они выглядят пустым.
Экземпляр EC2 не имеет общего DNS
Ответ 1
У меня была та же проблема, что и решена. Посмотрите пошаговые инструкции:
- Перейдите на console.aws.amazon.com
- Перейти к Услуги → VPC
- Откройте Ваши VPC
- выберите ваш VPC, подключенный к вашему EC2 и
- выберите Действия = > Изменить имена хостов DNS --- > Изменить имена хостов DNS: YES
Надеюсь, это поможет!
Приветствия
Ответ 2
Фактически есть параметр в VPC, называемый "DNS HostNames". Вы можете изменить VPC, в котором существует экземпляр EC2, и изменить его на "Да". Это должно сделать трюк.
Я столкнулся с этим вопросом вчера и попробовал вышеупомянутый ответ от Мэнни, который не работал. Однако настройка VPC работала для меня.
В конечном итоге я добавил EIP, и я использую его для подключения.
Ответ 3
Похоже, что экземпляр был запущен в VPC, и при этом флажок для Automatically assign a public IP address to your instances
не был проверен. Следовательно, экземпляр не имеет открытого IP-адреса
Вы можете назначить Elastic IP этому экземпляру и затем войти в систему с использованием этого IP-адреса.
Ответ 4
- Перейдите в AWS Console.
- Перейдите в раздел Службы и выберите VPC
- Нажмите vpc.
- выберите экземпляр и нажмите "Действие".
- Выберите "Изменить имя хоста DNS", нажмите "Да".
В конце вы получите свои публичные DNS.
Ответ 5
Это подсказка для решения проблемы, которая не работает:
Совет. Если ваш экземпляр не имеет открытого DNS-имени, откройте консоль VPC, выберите VPC и проверьте вкладку "Сводка". Если DNS-разрешение или имена хостов DNS нет, нажмите "Изменить" и измените значение на "Да".
Предполагая, что вы это сделали, и вы по-прежнему не получаете публичный IP-адрес, а затем переходите к подсети, находящейся на вопросе на экране администрирования VPC, и вы, вероятно, обнаружите, что для параметра "Автоматический присвоение общедоступного IP-адреса" не установлен "Да". Измените этот параметр, и я знаю, что вы не хотите здесь, создайте новый экземпляр в этой подсети. Насколько я могу судить, вы не можете изменить это на хосте, я попытался и попробовал, просто прекратить его.
Ответ 6
В моем случае я нашел ответ от slayedbylucifer и другие, которые указывают на то же самое, действительны.
Даже если установлено, что DNS hostname: yes
, на my-pvc публичный IP не назначается (только Privat IP).
Определенно, что Автоматически назначить общедоступный IP-адрес
Enable
.
Если он не выбран, то по умолчанию он устанавливается наUse subnet setting (Disable)
Ответ 7
Просто запустите другой экземпляр (а также удалите его, если он не используется) и убедитесь, что на этот раз вы проверяете "Автоматически назначать публичный IP-адрес вашему экземпляру". Если нет, то, как предложил slayedbylucifer; назначить Elastic IP (EIP) экземпляру и затем войти в систему с использованием этого IP-адреса. Будьте осторожны, хотя, если вы используете бесплатный AWS-уровень, EIP будет стоить вам денег - это целая "тема".
Ответ 8
Для меня проблема была в настройках подсети.
- Откройте https://console.aws.amazon.com/vpc
- Перейдите в подсети в левом меню
- Выберите свою подсеть
- Изменить автоматическое назначение настроек IP для включения
Ответ 9
Прежде всего, для этого могут быть две причины:
- Вы создали свой собственный VPC и забыли включить Public DNS.
Чтобы решить эту проблему:
i) Перейдите в консоль VPS VPC и выберите созданный VPC.
ii) Затем нажмите "Действия", а затем включите разрешение DNS.
OR
- В конфигурации EC2 вы не включили опцию public ip-assign.
Здесь вы не можете изменить настройку; поэтому создайте изображение ami, а затем заново создайте экземпляр из этого.
Ответ 10
Перейдите на консоль VPC, выберите VPC и нажмите меню ACTIONS, выберите "Редактировать имена хостов DNS" - выберите "Да". Это должно исправить это.
Ответ 11
Если экземпляр находится в VPC, убедитесь, что для параметра "Разрешение DNS" и "DNS-имена хостов" установлено значение "да". Вы можете сделать это в пользовательском интерфейсе консоли Aws. НТН!
Ответ 12
Для тех, кто использует CloudFormation, ключевыми свойствами являются EnableDnsSupport и EnableDnsHostnames, для которых должно быть установлено значение true
VPC: {
Type: 'AWS::EC2::VPC',
Properties: {
CidrBlock: '10.0.0.0/16',
EnableDnsSupport: true,
EnableDnsHostnames: true,
InstanceTenancy: 'default',
Tags: [
{
Key: 'env',
Value: 'dev'
}]
}
}
Ответ 13
Изменение параметра DNS Hostnames также может быть выполнено с помощью AWS CLI:
aws ec2 modify-vpc-attribute --vpc-id $vpc_id --enable-dns-hostnames '{"Value": true}'
(Где $vpc_id - это идентификатор VPC, к которому прикреплен ваш экземпляр.)
Как только VPC будет обновлен, экземпляр получит общедоступный DNS.