Estou batendo minha cabeça contra a parede tentando descobrir o que há de errado com minha conectividade EC2 VPC. Eu tenho duas instâncias do EC2 na mesma sub-rede pública com um gateway de internet. Ambas as instâncias têm um endereço IP público (elástico). A instância A pode executar ping em B em seu endereço IP privado, mas não pode executar ping em seu endereço IP público.
Eu posso pingar B da minha casa muito bem.
A tabela de rotas de sub-rede é assim:
Destino | Alvo |
---|---|
172.16.0.0/20 | local |
0.0.0.0/0 | igw-xxxxx |
A instância A está executando o Windows e sua tabela de rotas route print
parece correta:
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 172.16.0.1 172.16.0.9 15
A instância B está executando o Linux e desativei seu firewall.
O grupo de segurança B tem uma regra de entrada que permite todo o tráfego do grupo de segurança A.
Se eu adicionar uma regra de entrada ao grupo de segurança B, permitindo todo o tráfego de QUALQUER LUGAR, ela funcionará. Mas quero permitir o tráfego apenas de um grupo de segurança.
Você precisa permitir o endereço IP elástico de A no grupo de segurança de B (ICMP), porque quando você pingar B com seu endereço IP público, o tráfego não é visto como sendo originado do endereço IP privado, mas do endereço IP público .
Aqui está o que acontece:
ping B
(IP/EIP público),0.0.0.0/0 (igw-xxxxx)
EIP
de A, e o IP de destino seráEIP
de B,Verifique a documentação da AWS: