2016-05-17 69 views
2

我的AWS命令是:如何通過AWS CLI獲取公網IP同時發動

> 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?請不要混淆elastic-IP及其與實例的關聯。我知道聯繫彈性IP,但這裏的需求是不同的。

回答

4
aws ec2 describe-instances \ 
    --query "Reservations[*].Instances[*].PublicIpAddress" \ 
    --output=text 

另一種方式是

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

這將返回實例

+0

任何計謀文本數據轉換成JSON的公網IP? --output = json給我的方式不是真正的json – visweshn92