EC2インスタンス内からEC2インスタンスのプライベートIPを返す

EC2インスタンス内からEC2インスタンスのプライベートIPを返す

Amazon Linux EC2 インスタンスのプライベート IP アドレスをそのインスタンス内のコマンドラインから返すには、どのような具体的な構文を使用できますか?

これまでに、私は次のことを思いつきました:

# Get private IP from inside the instance by filtering inside the following:
instanceid=$(curl http://169.254.169.254/latest/meta-data/instance-id)
echo $instanceid
aws ec2 describe-instances --instance-id $instanceid --region us-west-2

ただし、これらのコマンドを EC2 インスタンス内で自分で入力すると、上記の 3 行によって膨大な出力が生成され、手動でフィルタリングするのが困難になります。

インスタンスのプライベート IP のみを返し、他の情報は返さない 1 行または 2 行のコードを提案してもらえますか?

答え1

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

インスタンスのプライベート IPv4 アドレス。複数のネットワーク インターフェイスが存在する場合、これは eth0 デバイス (デバイス番号が 0 のデバイス) を指します。

https://docs.aws.amazon.com/AWSEC2/latest/ユーザーガイド/ec2-instance-metadata.html

あるいは:

$ ec2metadata --local-ipv4

関連情報