【问题标题】:How can I get a list of my EC2 instances that have assigned Elastic IPs?如何获取已分配弹性 IP 的 EC2 实例的列表?
【发布时间】:2013-02-07 07:55:36
【问题描述】:

如何获取已使用 C# 分配静态公共弹性 IP 的 EC2 实例的列表?

【问题讨论】:

    标签: c# amazon-web-services ec2-api-tools


    【解决方案1】:

    基本上你会得到实例和公共 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)));
    

    【讨论】:

    • MisterDr - 谢谢你,这正是我想要的。
    猜你喜欢
    • 2020-11-17
    • 1970-01-01
    • 2016-02-23
    • 2021-09-03
    • 2019-07-11
    • 1970-01-01
    • 2018-05-09
    • 2020-06-27
    • 2018-09-14
    相关资源
    最近更新 更多