Blog de Amazon Web Services (AWS)
Administración de direcciones IP en escenarios multi-región con Amazon VPC IP Address Manager (IPAM)
Por Efraín Castilla, Arquitecto de Soluciones AWS México y
Oscar Ramírez, Arquitecto de Soluciones AWS México
AWS lanzó Amazon VPC IP Address Manager (IPAM), en diciembre del 2021, una nueva característica que facilita la planificación, el seguimiento y el monitoreo de las direcciones IP para las cargas de trabajo de AWS. Gracias a sus flujos de trabajo automatizados permite que los equipos y las organizaciones encargadas de la administración de tan importante “activo” como lo es el diseño, segmentación y asignación de recursos de red lo puedan hacer de forma mas óptima. IPAM puede ser utilizado para administrar direcciones públicas y privadas, al igual que con direcciones IP elásticas (EIP), de igual manera soporta el esquema de traer sus propias IP (BYOIP) tanto para redes privadas IPv4, redes públicas IPv4 o redes públicas usando Global unicast addresses (GUAs) en IPV6.
Hoy día muchos clientes utilizan hojas de calculo, soluciones creadas internamente o incluso un conjunto de scripts para identificar y desarrollar la planeación y asignación de recursos de red, y en especial el direccionamiento IP. Esta forma tradicional de gestionar, representa potenciales impactos para la organización, algunos de los cuales se describen a continuación:
Impactos para la organización
- La cantidad de esfuerzo y tiempo necesarios para mantener el registro de direcciones IP actualizado puede ser una tarea compleja, de alta demanda de tiempo, y potencialmente propensa a errores.
- Superposición o conflicto de direcciones IP o segmentos de red completos que pueden incluso permanecer como “no detectado” hasta que los conflictos en términos de los recursos hacen evidente la doble asignación.
- Retrasos en la incorporación de nuevas aplicaciones o en el crecimiento de las existentes debido a estos conflictos a nivel de recursos de red
- La necesidad de mantener este registro de forma manual o semi-manual aleja a personas clave de la organización de tareas mas estratégicas o de proyectos de alto impacto para el negocio.
Principales características y beneficios
- Organizar el espacio de direcciones IP en dominios de enrutamiento y seguridad.
- Monitorear el espacio de direcciones IP en uso, así como los recursos que utilizan el espacio en función de las reglas empresariales.
- Ver el historial de asignaciones de direcciones IP en su organización (hasta un máximo de tres años).
- Asignar los CIDR a las VPC de forma automática mediante reglas de negocio específicas
- Solucionar problemas de conectividad de red.
- Habilitar el uso compartido de sus direcciones entre regiones y cuentas para traer sus propias direcciones IP (BYOIP).
En los escenarios donde hay múltiples regiones involucradas o cuentas, se hace mas necesario un manejo óptimo de los recursos, las direcciones IP, VPCs, subredes. IPAM permite mantener una única fuente veraz para la información relacionada con cualquier dirección IP y facilita la administración y auditoría de este recurso dentro de las cuentas de AWS y regiones.
Como funciona
Cuando crea un IPAM, debe elegir en qué región crearlo. Automáticamente IPAM crea dos alcances. Los alcances junto con los grupos y las asignaciones son componentes clave de IPAM.
Alcance (scope) es el contenedor de más alto nivel dentro de IPAM. Cada IPAM contiene dos alcances predeterminados (público y privado). Cada alcance representa el espacio de IPs para una sola red. Los alcances les permiten reutilizar las direcciones IP en distintas redes desconectadas entre sí, sin que se produzca superposiciones o conflictos de direcciones IP.
Grupo (group) es una colección de rangos de IP (CIDR). Los grupos de IPAM le permiten organizar sus direcciones IP de acuerdo con sus necesidades de enrutamiento y seguridad. Puede tener varios grupos dentro de un grupo de nivel superior. Dentro de los grupos de IPAM, asigna CIDR a los recursos de AWS.
Asignación (allocation) es una asignación de CIDR de un grupo de IPAM a otro recurso o grupo de IPAM. Cuando crea una VPC y elige un grupo de IPAM para el CIDR de la VPC, el CIDR se asigna desde el CIDR aprovisionado al grupo de IPAM.
Costos asociados a esta publicación
El uso de los recursos creados como parte de esta publicación incurre en costos asociados.
El costo de IPAM considera una tarifa por hora por cada dirección IP activa que administre mediante el Administrador de direcciones IP (IPAM). Una dirección IP activa se define como una dirección IP asignada a un recurso dentro de una VPC. Para conocer mas detalle, consulte los precios de Amazon VPC IPAM.
Escenario
A través de esta publicación, revisaremos los principales aspectos involucrados en la creación, configuración, monitoreo y seguimiento histórico de los recursos creados en Amazon VPC IP Address Manager (IPAM) con el propósito de establecer una única fuente de la verdad en la asignación de recursos ligados a un direccionamiento IPv4 en AWS.
El escenario que ejecutaremos a continuación es un escenario greenfield que comprende dos regiones: us-east-1 y us-west-1, ambas con un alcance privado y habilitando grupos por ambiente de trabajo. Para efectos de esta publicación solo se describe el ambiente de “PRODUCCION”.
Si usted quiere implementar IPAM en un ambiente brownfield es probable que se le presente un error de superposición y falle al aprovisionar el rango CIDR. Si esto le sucede diríjase a Recursos y marque los bloques CIDR como ignorados, posteriormente aprovisione los rangos de CIDR que desee en los grupos de IPAM respectivos. Finalmente regrese a Recursos y desmarque los CIDR asociados como ignorados. Después de un par de minutos, estos recursos deberían completarse automáticamente en los grupos de CIDR que definió, mostrando la utilización y la asignación automáticamente.
- IPAM operando en la regiones us-east-1 y us-west-1 de AWS
- Alcance privado
- Grupo de IPAM de nivel superior
- Grupo regional de IPAM en la us-east-1 de AWS
- Grupo de ambiente PRODUCCION
- Asignación de una VPC en la región us-east-1 de AWS
- Grupo de ambiente PRODUCCION
- Grupo regional de IPAM en la us-east-1 de AWS
- Grupo de IPAM de nivel superior
- Alcance privado
Con el objetivo de poder utilizar las características y beneficios ofrecidos por IPAM dentro de su organización, es necesario considerar los pasos a continuación mencionados:
1. Creación de un IPAM
Ir a la consola de Amazon VPC IPAM
Seleccionar la opción “Crear IPAM”
Permitir que IPAM replique la información relacionada con los bloques de direcciones IP a las cuentas asociadas bajo AWS Organizations.
Debe tomar en cuenta que para la gestión de direcciones IP centralizada bajo una estructura de AWS Organizations y poder compartir los grupos IPAM entre los miembros, debe seleccionar la opción de permitir a VPC IPAM replicar los datos de los miembros a la cuenta delegada de administración.
Una vez autorizada la replicación de datos, se debe definir las regiones de operación en las que IPAM realizará el descubrimiento de recursos a gestionar (bloques de direcciones IP).
Al crear un IPAM, se crean automáticamente dos alcances predeterminados (uno público y otro privado) y no se pueden eliminar.
2. Configuración de grupos
Los grupos de IPAM permiten establecer los Classless Inter-Domain Routing (CIDR) de direcciones IP y establecen los limites de asignación de direcciones IP para el grupo actual y los inferiores que se creen más adelante.
Ejemplo de una jerarquía de grupos:
top-level/global pools
|______ operating regional pools
|______ environment type/business requirement pool
Configurar un grupo superior
El siguiente paso una vez creado el IPAM es crear un grupo superior, que permitirá el gobierno de uno o más bloques de direcciones IP (CIDR) de manera global.
Cree el grupo superior nombrándolo de una manera que le permita su fácil identificación. Al ser el grupo superior, no existe ninguna jerarquía a preceder.
Una vez definido el grupo superior, se debe definir la jerarquía inmediata del mismo.
Definir él o los bloques de direcciones (CIDR) que serán aprovisionados en el grupo actual.
Una vez creado el grupo, podrá observar el alcance del grupo en la sección de detalle.
Configurar un grupo regional “us-east-1”
Para definir el alcance del direccionamiento IP a gestionar dentro de una región, debe crear un grupo regional que preceda del grupo superior creado en los pasos anteriormente descritos.
Cree el grupo regional e identifíquelo con un nombre que permita su fácil identificación a través del uso de los campos “etiqueta de nombre” y “descripción”.
Defina la jerarquía del grupo a preceder, esta publicación asume la administración de bloques de direcciones de manera global por medio del grupo superior dentro de la misma cuenta AWS.
Indique el bloque de direcciones IPv4 (CIDR) a aprovisionar dentro del grupo regional y configure los ajustes de reglas de asignación de manera automática. IPAM ofrece la opción para añadir un CIDR especifico incluyendo el inicio del segmento y el prefijo, pero también podemos simplemente seleccionar el tamaño de la asignación y automáticamente IPAM asignara el inicio del segmento basado en las características del grupo que le precede y los grupos del mismo nivel que han sido creados previamente para evitar la superposición de direcciones IP.
Una vez creado el grupo, podrá observar en detalle su configuración.
Configurar un grupo dedicado “PRODUCCIÓN”
Al contar con un grupo de gestión regional, podrá definir los grupos dedicados asociados al grupo regional. Con fines ilustrativos esta publicación considera un grupo dedicado al ambiente de producción.
Cree el grupo de producción (us-east-1-prod-level-pool), al igual que para los grupos anteriores nombre el grupo con un nombre de fácil identificación.
Defina la jerarquía seleccionando el grupo al que precederá este grupo dedicado, en nuestro caso el grupo regional asignado a la región de AWS us-east-1 (us-east-1-level-pool).
Al igual que para los grupos anteriores defina el bloque CIDR a aprovisionar.
Al termino del aprovisionamiento del grupo podrá observar el detalle de configuración. Cabe mencionar que en la pestaña de detalles es posible visualizar la utilización del grupo actual y su contribución al grupo superior inmediato.
Puede visualizar la lista de grupos configurados y cómo fueron organizados jerárquicamente. Diríjase dentro de la consola de Amazon VPC IP Address Management (IPAM) a la sección de “Grupos”.
Repetir la secuencia de pasos descritas anteriormente para crear el grupo regional/superior en la región us-west-1.
3. Asignación de direcciones IP a través del modelo de auto-servicio
En esta sección se creará una VPC haciendo uso de la asignación de bloques de direcciones IPv4 de IPAM. Para ello seleccione el servicio VPC, valide que se encuentra en la región us-east-1 y haga clic en Crear VPC.
Seleccione la asignación del bloque CIDR por medio de IPAM definiendo el grupo de producción (us-east-1-prod-level-pool) y la máscara de red (en nuestro caso asignaremos la máscara /16), eso significa que utilizará toda la asignación disponible en el grupo.
Para evitar que los usuarios puedan crear una VPC ingresando de forma manual un CIDR fuera del rango de los grupos IPAM y por lo tanto convertirse en un recurso “No manejado”, se puede agregar una política de IAM como se muestra a continuación, en la que solo se permitir la creación de la VPC si y solo si se ha sido seleccionado el grupo IPAM a partir de la cual se creará el recurso.
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Deny",
"Action": ["ec2:CreateVpc", "ec2:AssociateVpcCidrBlock"],
"Resource": "arn:aws:ec2:*:*:vpc/*",
"Condition": {
"Null": {
"ec2:Ipv4IpamPoolId": "true"
}
}
}]
}
Mantener el resto de la configuración con los valores por defecto y seleccionar “Crear VPC”.
Regrese al servicio IPAM y seleccione del menú principal la opción Recursos. Observe que la VPC recién creada se encuentra en estado de cumplimiento. Si usted dentro de su organización y configuración actual, cuenta con mas VPC configuradas podrá observar su estado de cumplimiento de las mismas, y el estado de superposición de direccionamiento IP (sin superposición, superposición o ignorado).
4. Monitoreo de cumplimiento basado en eventos de asignación y uso de direcciones IP
Con el fin de evitar la superposición de direcciones reservadas de la infraestructura en su centro de datos, puede asignar manualmente un CIDR a un grupo para reservar direcciones IP.
Diríjase a grupos dentro de la consola IPAM, seleccione el grupo en el que desea reservar direcciones para su infraestructura de su centro de datos, haga clic en “Acciones” y posteriormente en “Asignar CIDR”. Usted puede seleccionar entre definir exactamente el bloque CIDR o por la longitud de la máscara de red.
Una vez asignado usted podrá observar el bloque CIDR asociado en la pestaña de “Asociaciones”.
Para cada grupo definido dentro de IPAM usted puede monitorear el uso desde la opción de detalle del grupo, obteniendo de primera mano la utilización del pool con el número de direcciones IP aprovisionadas, el numero de los bloques CIDR gestionados por IPAM que se encuentran en estado de cumplimiento y el porcentaje de utilización del grupo.
IPAM almacena de forma automática las métricas relacionadas con el uso de direcciones IP de IPAM (como el espacio de direcciones IP disponible en los grupos de IPAM y la cantidad de CIDR de recursos que cumplen con las reglas de asignación). Las métricas producidas por IPAM pueden ser consultadas a través del servicio Amazon Cloudwatch y pueden ser utilizadas para crear alarmas personalizadas, por ejemplo, cuando el grupo de direcciones IP este próximo a agotarse.
6. Limpieza
Proceder con la eliminación de la VPC creada en la región us-east-1 como parte del paso 3 y una vez concluida, eliminar IPAM en modo cascada.
Conclusión
En esta publicación se creó un IPAM con un alcance multi-región, definimos una jerarquía de grupos con grupos superiores o regionales y grupos basados en su propósito “PRODUCCION”. Además, se creó una VPC para demostrar la utilización y asignación de bloques de direccionamiento IP (CIDR) a través de IPAM.
IPAM permite definir y asignar los bloques de direcciones IPv4 e IPv6 de forma eficiente, evitando la superposición dentro de una cuenta u organización, al usar IPAM se reduce la necesidad de depender de controles externos o manuales.
Para obtener más información sobre IPAM, puede consultar la documentación de IPAM o leer el blog del anuncio.
Referencias
https://docs.thinkwithwp.com/vpc/latest/ipam/scp-ipam.html
https://docs.thinkwithwp.com/vpc/latest/ipam/manually-allocate-ipam.html
Acerca de los autores
Efraín Castilla es Arquitecto de Soluciones en AWS México.
Oscar Ramírez es Arquitecto de Soluciones en AWS México.
Revisores
Gerardo Vázquez es Arquitecto de Soluciones en AWS Canada.
Armando Barrales es Arquitecto de Soluciones en AWS México.