2017-04-11 78 views

回答

1

有兩種類型的公網IP地址:

  • 彈性IP地址(靜態)
  • 自動分配的IP地址(這可能會改變,如果一個實例停止&入門)

此外,許多不同的服務都分配了IP地址:

  • Amaz上EC2實例
  • 亞馬遜RDS實例
  • 亞馬遜Elasticache實例
  • 亞馬遜紅移實例
  • 亞馬遜EMR主節點
  • 彈性負載平衡器(的IP地址改變,並且不應該被高速緩存/存儲)
  • etc

您需要執行describe針對每個單獨服務的命令來檢索IP地址信息。 沒有可以跨所有服務檢索此信息的命令。

您可能可以使用AWS Config configuration snapshot - 它可能具有您尋求的大多數服務的信息。

實施例:擷取彈性IP地址

以獲得彈性IP地址的列表(其是分配給EC2實例的靜態地址)最簡單的方法是使用AWS Command-Line Interface (CLI),其具有describe-addresses命令:

aws ec2 describe-addresses --region ap-southeast-2 

要獲得實例ID和IP地址的列表:

$ aws ec2 describe-addresses --region ap-southeast-2 --query 'Addresses[*].[InstanceId,PublicIp]' --output text 

i-0c9c9394b3583afdc 54.222.207.37 
i-0ef605853622f705e 54.79.149.39 

該命令需要分別爲每個地區發佈。 (您可以創建一個腳本,循環瀏覽所有腳本。)

+0

特別是對於EC2實例,我想獲取所有彈性公共ips。使用任何AWS API都可行嗎?如果是的話,你可以分享我的任何文件來源嗎? –

+0

我已經添加了一個如何獲取彈性IP地址的示例。 –

+0

非常感謝你! :) –