【问题标题】:How to get Public IP via AWS CLI while launching如何在启动时通过 AWS CLI 获取公共 IP
【发布时间】:2016-05-17 13:38:46
【问题描述】:

我的 AWS 命令​​是:

> aws ec2 run-instances --image-id ami-346b2354 --count 1 --instance-type c4.large --key-name my-cali-key --security-group-ids sg-a168c7c4

当我触发它时,它返回的 JSON 数据只有私有 IP 地址,而不是公共 IP 地址。

 ................ DATA  OMITTED................... 

                "Groups": [
                    {
                        "GroupName": "launch-wizard-1", 
                        "GroupId": "sg-a168c7c4"
                    }
                ], 
                "SubnetId": "subnet-cb2524ae", 
                "OwnerId": "012710546082", 
                "PrivateIpAddress": "172.31.17.252"
            }

 ..................... DATA OMITTED ....................

(Image) Browser look of the same instance with Public IP

但是,当我在浏览器中看到时,我立即注意到一个公共 IP 地址被自动关联。 如何获取已启动实例的公共 IP? 请不要混淆弹性 IP 及其与实例的关联。我知道要关联一个弹性 IP,但这里的需要是不同的。

【问题讨论】:

    标签: amazon-web-services amazon-ec2


    【解决方案1】:
    aws ec2 describe-instances \
      --query "Reservations[*].Instances[*].PublicIpAddress" \
      --output=text
    

    另一种方法是

    curl --silent http://ipecho.net/plain
    

    这将返回实例的公共 IP

    【讨论】:

    • 有什么技巧可以将文本数据转换成json? --output=json 以一种不是真正 json 的方式给我
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-14
    • 1970-01-01
    • 2021-01-19
    • 2017-01-24
    • 1970-01-01
    • 2019-10-06
    相关资源
    最近更新 更多