Estoy confundido acerca de Internet Gateway en AWS, si dice que para que su VPC acceda a Internet necesita un IGW, entonces, cuando crea una instancia EC2 con un EIP, automáticamente tiene acceso a Internet.
Entonces tengo esta pregunta que no he podido responder:
¿Por qué entonces cuando creas una instancia EC2 (que se crea en la VPC predeterminada) en AWS y asignas una IP elástica automáticamente tienes acceso a Internet si en la documentación de AWS dice eso para que tu VPC tenga acceso a Internet? ¿Necesita una puerta de enlace a Internet?
Respuesta1
Una VPC requiere una puerta de enlace de Internet (IGW) para comunicarse con Internet. Una puerta de enlace privada virtual (punto final VPN) puede permitirle comunicarse con otras redes, como redes corporativas, a través de una VPN, lo que potencialmente podría brindarle una conexión a Internet. Los puntos finales de VPC y PrivateLink le brindan otra conectividad limitada, como conectividad privada a S3, que generalmente se realiza a través de Internet.
Puede asignar automáticamente una dirección IP pública sin tener una puerta de enlace a Internet. Si intenta asignar una IP elástica a su instancia cuando la VPC no tiene una puerta de enlace de Internet, no se lo permitirá; el mensaje de error es
La red vpc-05054501693f2f5fb no está conectada a ninguna puerta de enlace de Internet
Si intenta desconectar una puerta de enlace de Internet de una VPC que tiene una instancia con un EIP, recibirá este mensaje de error.
Acabo de probar todo esto para estar doblemente seguro. Solo tomó diez minutos crear una VPC y trastear un poco. Eso es lo mejor de la nube/AWS: generalmente es fácil resolver las cosas probándolas. Probablemente me costó $0,05.
Respuesta2
Para acceder a Internet directamente desde una instancia dentro de una VPC necesita:
- Una puerta de enlace de Internet (IGW) conectada a la VPC
- Una subred con una tabla de rutas que tiene una ruta predeterminada (0.0.0.0/0) a través de IGW (conocida como 'subred pública')
- Una IP pública o una IP elástica adjunta a la instancia (tenga en cuenta que no necesita una IP elástica para acceder a Internet; las instancias pueden tener IP dinámicas no elásticas)
- Un grupo de seguridad adjunto a la instancia que permite el tráfico saliente (lo que hace de forma predeterminada)
- ACL de red asociadas a la subred que permite el tráfico (lo que hace de forma predeterminada)
Estos cinco puntos son una buena lista de verificación que puede revisar si alguna vez tiene problemas con la conectividad directa a Internet a una instancia en una subred pública.
Tenga en cuenta que en su pregunta mencionó la implementación en la 'VPC predeterminada' (la VPC predeterminada ya tiene una puerta de enlace de Internet y subredes con una configuración de tabla de rutas adecuada), por lo que no habría necesitado configurar una.
También puede acceder a Internet indirectamente desde una 'subred privada', es decir, una subred que no tiene una ruta predeterminada a través de IGW. Hay muchas formas de hacer esto, pero una forma típica es implementar un servicio de puerta de enlace NAT en una subred pública separada (es decir, una subred con una tabla de rutas que tiene una ruta predeterminada a través de IGW) y luego definir una nueva tabla de rutas para su subred privada con una ruta predeterminada (0.0.0.0/0) a través de la puerta de enlace NAT. Esto permite el acceso saliente a Internet no directamente sino a través de la puerta de enlace NAT. Las instancias en la subred privada no tienen ninguna IP pública o elástica en ese momento.
Más detalles se pueden encontrar aquí:Pasarelas de Internet
Y aquí:Puertas de enlace NAT