Há sim. De dentro da instância, você pode executar:
curl http://169.254.169.254/latest/meta-data/public-ipv4
Para obter o nome do host DNS público, você pode alterá-lo para:
curl http://169.254.169.254/latest/meta-data/public-hostname
Você também pode obter o IP privado da instância:
curl http://169.254.169.254/latest/meta-data/local-ipv4
Como observação lateral, você pode verificar novamente em um site que não seja da AWS na Internet, como http://ip4.me
#!/bin/bash
pubip=$( curl http://ip4.me 2>/dev/null | sed -e 's#<[^>]*>##g' | grep '^[0-9]' )
echo $pubip
Isso funcionará, geralmente, para verificar o "IP público" de qualquer sistema NAT, ou para encontrar o seu IP de proxy público, etc.
E aqui está um bom link para ler sobre os tipos de informações que você pode obter na API da Amazon:
http://www.ducea.com/2009/06/01/howto-update-dns-hostnames-automatically-for-your- instâncias-amazon-ec2 /
PUBLIC_HOSTNAME="$(curl http://169.254.169.254/latest/meta-data/public-hostname 2>/dev/null)"
:) Você, senhor, é metal.Eu defino esta função dentro do meu .bashrc para recuperar o IP público e o DNS:
fonte
Você pode instalar e configurar o AWS CLI (
aws configure
) e usar o seguinte comando:fonte