2013-02-06 2 views

답변

2

기본적으로 인스턴스와 공개 IP가 제공되며 인스턴스에 공용 IP 주소가 포함되어 있는지 비교합니다. 여기

당신을 위해 그렇게 할 것입니다 코드입니다 :

   AmazonEC2 ec2 = AWSClientFactory.CreateAmazonEC2Client(); 

       //Create instance request 
       DescribeInstancesRequest request = new DescribeInstancesRequest(); 
       DescribeInstancesResponse response = ec2.DescribeInstances(request); 

       //Create ip address request enumeration 
       DescribeAddressesRequest daRequest = new DescribeAddressesRequest(); 
       DescribeAddressesResponse daResponse = ec2.DescribeAddresses(daRequest); 
       var publicIps = from ips in daResponse.DescribeAddressesResult.Address select ips.PublicIp; 

       //List of the instances which has public IP 
       List<RunningInstance> publicIpInstances = new List<RunningInstance>(); 

       //Iterate over instances and check if they have public IP 
       foreach (Reservation ri in response.DescribeInstancesResult.Reservation)      
        publicIpInstances.AddRange(ri.RunningInstance.Where(inst => publicIps.Contains(inst.IpAddress))); 
+0

MisterDr를 - 이것이 내가 찾던 정확히 무엇을 주셔서 감사합니다. – Eskimo