如何获取Amazon EC2实例的辅助私有IP地址

我在启动实例期间自动分配辅助私有IPv4地址 。 要configurationUbuntu来识别这个辅助IP,我需要运行

ip addr add 10.0.1.15/24 dev eth0 

要访问主私有IP地址,我find了这个命令(在AWS Docs和figaros问题中有描述 ):

 curl http://169.254.169.254/latest/meta-data/local-ipv4 

但是我怎么能得到从IP地址启动时自动运行IP命令? 对于Amazon Linux系统,有ec2-net-utils包可以自动处理。

你可以用2个命令获得第二个地址。

获取您的networking接口的MAC地址

 MAC=`curl http://169.254.169.254/latest/meta-data/mac` 

获取此mac地址的所有IP地址

 curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/${MAC}/local-ipv4s 

由于antrost答案 (他curl请求返回所有IP地址),我能够写下面的bash脚本只返回二级私人IP和configurationUbuntu认识到它:

 #!/bin/bash MAC=`curl -s http://169.254.169.254/latest/meta-data/mac` ADDRESSES=`curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/${MAC}/local-ipv4s` arr=($ADDRESSES) if [ ${#arr[@]} -ge 2 ]; then ip addr add ${arr[1]}/24 dev eth0 fi