【发布时间】:2015-10-04 19:33:27
【问题描述】:
我正在编写下面的代码来获取新创建实例的公共 dns,但是我得到了 null
DescribeInstancesResult describeInstancesRequest = amazonEC2Client.describeInstances(new DescribeInstancesRequest());
List<Reservation> reservations = describeInstancesRequest.getReservations();
for (Reservation reservation : reservations) {
for (Instance instance1 : reservation.getInstances()) {
dns = instance1.getPublicDnsName();
if(!(dns.equals("")))
{
break;
}
}
}
System.out.println("value:" + dns);
【问题讨论】:
-
实例是在没有公网IP的VPC中创建的吗?
-
是的,但是在创建实例 u= 之后,已经为其分配了一个公共 dns
-
这是否意味着您在创建实例后为其分配弹性 IP?
-
我已经使用 RunInstancesRequest() 创建了实例
-
实例是否有公共 DNS?如果实例是在 VPC 中创建的,并且创建时没有分配公共 IP,则 null 的值是正确的。在经典中创建的实例始终获得公共 IP,但在 VPC 中创建的实例可能不会。
标签: amazon-web-services amazon-ec2 aws-java-sdk