Skip to main content

EC2 na prática: IP Privado, IP Público e Elastic IP

Manual passo a passo para entender e gerenciar os endereços IP de uma instância EC2, incluindo a pegadinha mais famosa da AWS: o IP público que muda sozinho.

Pré-requisito: uma instância EC2 em estado running (ver manual 01).


Parte 1: Os três tipos de endereço​

Toda instância pode ter até três "identidades" de rede:

EndereçoO que éMuda quando?Equivalente on-prem
IP privadoEndereço interno da VPC/subnetNunca (vive e morre com a instância)O IP da VLAN interna
IP públicoEndereço de internet, emprestado de um pool da AWSA cada stop/startIP do NAT/borda
Elastic IPIP público fixo e reservado para a contaNunca (até você liberar)IP público fixo contratado

💡 A instância não conhece o próprio IP público: rode ip a dentro dela e só o IP privado aparece. O público é um NAT 1:1 feito pela AWS na borda da VPC, semelhante ao NAT do firewall do datacenter.

1.1 Conferir os endereços na console​

  1. Console EC2 → Instances → selecione a sua instância.
  2. Na aba Details, localize:
    • Private IPv4 addresses: ex.: 172.31.5.10
    • Public IPv4 address: ex.: 54.170.22.10
  3. Dentro da instância (SSH), confirme que só o privado existe no SO:
ip a          # apenas o IP privado (172.31.x.x)

Parte 2: A pegadinha: o IP público muda no stop/start​

2.1 Demonstração​

  1. Anote o Public IPv4 address atual da sua instância.
  2. Instance state → Stop instance → aguarde stopped.
    • Observe: o campo Public IPv4 fica vazio, o endereço voltou para o pool da AWS.
  3. Instance state → Start instance → aguarde running.
  4. Confira o Public IPv4: é outro endereço.

⚠️ Consequências práticas: DNS apontando para o IP antigo quebra, o comando SSH salvo no histórico para de funcionar, integração de terceiros que liberou o IP no firewall deles quebra. Reboot não muda o IP, apenas o ciclo stop → start.

💡 O IP privado permaneceu o mesmo durante todo o processo, ele é da instância até o terminate.


Parte 3: Elastic IP: o endereço fixo​

Quando o endereço público precisa ser estável (DNS, whitelist de parceiros, serviços expostos), usa-se um Elastic IP (EIP): um IP público reservado para a sua conta, que você associa a quem quiser.

3.1 Alocar um Elastic IP​

  1. Console EC2 → menu lateral Network & Security → Elastic IPs.
  2. Allocate Elastic IP address → mantenha o padrão → Allocate.
  3. O endereço aparece na lista, ainda sem associação.

3.2 Associar à instância​

  1. Selecione o EIP → Actions → Associate Elastic IP address.
  2. Resource type: Instance → escolha a sua instância.
  3. Associate.
  4. Volte à instância: o Public IPv4 address agora é o EIP (o IP público antigo foi devolvido ao pool).

3.3 Provar que ele é fixo​

Repita o teste da Parte 2: Stop → Start → o IP público continua o mesmo. 🎉

3.4 Desassociar e liberar​

  1. Elastic IPs → selecione → Actions → Disassociate (a instância recebe um IP dinâmico novo, se configurada para isso).
  2. Para devolver de vez: Actions → Release Elastic IP address.

💰 Modelo de cobrança que pega todo mundo: o Elastic IP é cobrado por hora enquanto existir na conta (associado ou não). O maior desperdício clássico é EIP alocado e esquecido sem uso. Regra do lab: liberou a instância, libere o EIP.

⚠️ Ao liberar (Release) um EIP, recuperá-lo depois nem sempre é possível, o endereço volta ao pool público da AWS.


Parte 4: Quando usar cada um​

CenárioEndereço indicado
Comunicação entre instâncias da mesma VPCIP privado (nunca saia pela internet à toa)
Máquina de teste/lab temporáriaIP público dinâmico (grátis enquanto a instância roda)
Servidor com DNS apontado ou IP em whitelist de terceirosElastic IP
Produção séria com balanceamentoNenhum dos três diretamente, usa-se Load Balancer com DNS próprio (capítulo futuro)

Resumo dos conceitos deste manual​

ConceitoLembrete-chave
IP privadoFixo, interno, vive com a instância
IP público dinâmicoEmprestado; muda a cada stop/start; some no stopped
Elastic IPFixo, reservado à conta; cobrado enquanto existir
Reboot vs Stop/StartReboot preserva o IP público; stop/start troca