一个和我一起工作的人给了我登录到他的EC2控制台的EC2凭证。不是我设的局。一些实例显示公共dns名称,而其他实例则显示空白的公共dns。我希望能够连接到具有空白公共DNS的实例。我一直无法弄清楚为什么这些显示为空白。


当前回答

对于那些正在使用Terraform的人。

如果需要启用DNS主机名,请在VPC中使用如下一行:

resource "aws_vpc" "app_vpc" 
{
   enable_dns_hostnames = true # Add this line

   cidr_block = var.vpc_cidr
   tags = { Name = "mostafa_vpc" }
}

其他回答

我也遇到过同样的问题,但我解决了。一起来看看这些步骤吧:

访问console.aws.amazon.com 业务-> VPC 打开vpc 选择EC2连接的VPC select Actions =>编辑DNS主机名 ——>修改DNS主机名为YES

在验证VPC和子网设置后,我的EC2实例仍然没有公共DNS。经过一天的寻找,我终于找到了解决办法。

我必须创建一个新的弹性IP地址,然后将其关联到我的实例。

从EC2仪表板:

从侧边栏转到弹性ip。

单击“分配新地址”,然后单击“分配”。

回到EC2仪表盘。进入“网络接口”。

选择没有公共DNS的EC2实例。然后操作-关联地址。

在“Address”字段中选择新创建的弹性IP地址。

“关联到私有IP地址”字段,选择没有公共DNS的私有IP地址。

单击关联地址。

您的EC2实例现在应该有一个公共DNS。

进入VPC 选择VPC 单击“操作”,选择“编辑DNS主机名” “DNS主机名”勾选“启用” 单击保存更改

对于那些正在使用Terraform的人。

如果需要启用DNS主机名,请在VPC中使用如下一行:

resource "aws_vpc" "app_vpc" 
{
   enable_dns_hostnames = true # Add this line

   cidr_block = var.vpc_cidr
   tags = { Name = "mostafa_vpc" }
}

您不必为实例分配公共ip地址。 可以使用NAT实例,也可以使用NAT网关。

https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-comparison.html