Elastic IP y Gateway NAT en AWS: Tráfico saliente desde una única IP

Hola a tod@s,

En este post quiero hablaros de cómo poder usar una única IP en una subnet de una VPC de AWS en 4 pasos!

Esto lo conseguimos creando un Gateways NAT al que le asociaremos una ip elástica y asociando la Gateway NAT a una subred pública.

¿Para qué nos sirve esto?

Utilizar una única IP en una subnet puede ser muy útil para conectar varias instancias de EC2 y funciones Lambda con una única IP.
Esto puede simplificar la gestión de direcciones IP y facilitar el acceso a servicios externos que requieren una IP específica.

Empezaremos con un esquema visual para verlo al detalle:

Como vemos en la imagen tenemos que tener una NAT, 2 subredes- y una ip elástica:

  • Ip elástica: Para tener una ip «fija» a la salida de internet.
  • NAT: Asociada a la subnet pública y ip elástica.
  • Subred pública: Con las rutas directas a internet.
  • Subred privada: Con las rutas directas a la NAT.

Con esto únicamente nos queda asociar a la subnet privada los servicios que queramos que usen la ip elástica.

Y ahora veámoslo paso a paso:

Paso 1: Crear una VPC y Subnets

  1. Acceder a la consola de VPC:
    • Inicia sesión en la consola y navega a la sección de VPC.
  2. Crear una VPC:
    • Haz clic en «Crear VPC» (Create VPC).
    • Configura la VPC con el rango de direcciones CIDR que necesites.
  3. Crear una Subnets:
    • En la sección de subnets, haz clic en «Crear Subnet» (Create Subnet).
    • Primera subnet que será la pública:
      • Asigna la subnet a la VPC que acabas de crear.
      • Configura el rango de direcciones CIDR para la subnet.
    • Segunda subnet que será la privada:
      • Asigna la subnet a la VPC que acabas de crear.
      • Configura el rango de direcciones CIDR para la subnet.

Paso 2: Crear una Elastic IP, una NAT Gateway, una puerta de enlace y configurar tabla de rutas

  1. Crear una Elastic IP:
    • Navega a la sección de Elastic IPs en la consola de EC2.
    • Haz clic en «Asignar nueva dirección IP elástica» (Allocate new Elastic IP).
  2. Crear una NAT Gateway:
    • Navega a la sección de NAT Gateways en la consola de VPC.
    • Haz clic en «Crear NAT Gateway» (Create NAT Gateway):
      • Selecciona la subnet pública a la hora de crearla para que la NAT tenga salida de internet.
      • Asocia la Elastic IP que acabas de crear a la NAT Gateway.
  3. Crear o configurar puerta de enlace:
    • Si no tienes una puerta de enlace, crea una y en la sección de «Internet Gateways» la asignaremos a la VPC.
  4. Actualizar o crear Tabla de Rutas:
    • Ve a la sección de tablas de rutas en la consola de VPC.
    • Selecciona la tabla de rutas asociada o crea una nueva.
    • Subnet pública:
      • La que ya tiene salida a “internet” es la que va directa sin pasar por la NAT.
      • Añade una nueva ruta con el destino 0.0.0.0/0 y como objetivo a la puerta de enlace que acabas de crear.
    • Subnet privada:
      • La que usaremos para que todo lo conectado aquí salga por la NAT.
      • Añade una nueva ruta con el destino 0.0.0.0/0 y como objetivo la NAT Gateway que acabas de crear.

Paso 3: Configurar Servicios Instancias EC2 y Funciones Lambda

  1. Instancias EC2:
    • Lanza instancias EC2 en la subnet configurada.
    • Desactivar: Asignar automáticamente la IP pública (en Acciones / Redes / Administrar direcciones IP).
  2. Funciones Lambda:
    • Configura las funciones Lambda para usar la misma VPC y subnet.
    • Asegúrate de que las funciones Lambda tengan permisos para acceder a los recursos necesarios dentro de la VPC.

Paso 4: Verificar Conectividad

  1. Prueba de Conectividad:
    • Desde las instancias EC2 y funciones Lambda, intenta conectarte a servicios externos.
    • Verifica que el tráfico saliente por ejemplo conectados via ssh desde la terminal con el comando: curl ipinfo.io/ip

Beneficios de Usar una Única IP:

  • Simplificación de la Gestión de IPs: Facilita la gestión de direcciones IP en tu infraestructura.
  • Acceso a Servicios Externos: Algunos servicios externos pueden requerir que las solicitudes provengan de una IP específica.
  • Seguridad: Facilita la configuración de reglas de seguridad basadas en IP.


Y hasta aquí con el post de hoy. Espero que os sirva de ayuda.

Para mantener la web y seguir compartiendo conocimiento, considera invitarme a un café. ¡Siempre es una alegría recibir ese apoyo!
Un saludo!

😉

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *