Que sintaxe específica pode ser usada para retornar o endereço IP privado de uma instância do Amazon Linux EC2 na linha de comando dessa instância?
Até agora, descobri o seguinte:
# 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
No entanto, como você pode ver se você mesmo digitar esses comandos dentro de uma instância do EC2, as 3 linhas acima resultam em uma saída massiva, o que seria uma bagunça para filtrar manualmente.
Alguém pode sugerir uma ou duas linhas de código para retornar simplesmente o ip privado da instância e NENHUMA outra informação?
Responder1
$ curl http://169.254.169.254/latest/meta-data/local-ipv4
O endereço IPv4 privado da instância. Nos casos em que múltiplas interfaces de rede estão presentes, isto se refere ao dispositivo eth0 (o dispositivo para o qual o número do dispositivo é 0).
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
Alternativamente:
$ ec2metadata --local-ipv4