Tutorial: Transferir un CIDR IPv4 de BYOIP a IPAM
Siga estos pasos para transferir un CIDR IPv4 existente a IPAM. Si ya tiene un CIDR IPv4 con AWS, puede mover el CIDR a IPAM desde un grupo IPv4 público. No se puede trasladar un CIDR IPv6 a IPAM.
En este tutorial, se asume que ya trajo correctamente un rango de direcciones IP a AWS mediante el proceso descrito en Traiga sus propias direcciones IP (BYOIP) en Amazon EC2 y ahora quiere transferir ese rango de direcciones IP a IPAM. Si va a traer una nueva dirección IP a AWS por primera vez, siga los pasos de Tutorial: incorpore sus direcciones IP a IPAM.
Si transfiere un grupo IPv4 público a IPAM, las asignaciones existentes no se verán afectadas. Una vez que transfiera un grupo IPv4 público a IPAM, según el tipo de recurso, podrá supervisar las asignaciones existentes. Para obtener más información, consulte Monitorear el uso de CIDR por recurso.
nota
-
En este tutorial, se presupone que ya ha completado los pasos en Creación de un IPAM.
-
Cada paso de este tutorial debe realizarlo una de dos cuentas AWS:
-
La cuenta de administrador de IPAM. En este tutorial, esta cuenta se llamará cuenta de IPAM.
-
La cuenta de su organización propietaria del CIDR de BYOIP. En este tutorial, esta cuenta se llamará cuenta de propietario CIDR de BYOIP.
-
Contenido
- Paso 1: Crear perfiles con nombre y roles de IAM de la AWS CLI
- Paso 2: Obtenga el ID de alcance público del IPAM
- Paso 3: Cree un grupo de IPAM
- Paso 4: Comparta el grupo de IPAM mediante AWS RAM
- Paso 5: Transfiera un CIDR IPV4 de BYOIP existente a IPAM
- Paso 6: Vea el CIDR en IPAM
- Paso 7: Efectúe una limpieza
Paso 1: Crear perfiles con nombre y roles de IAM de la AWS CLI
Para completar este tutorial como un usuario de AWS único, puede utilizar perfiles con nombre de AWS CLI para cambiar de un rol de IAM a otro. Los perfiles con nombre son conjuntos de configuraciones y credenciales a los que se hace referencia cuando se utiliza la opción --profile
con la AWS CLI. Para obtener más información sobre cómo crear roles de IAM y perfiles con nombre para cuentas de AWS, consulte Uso de un rol de IAM en la AWS CLI en la Guía del usuario de AWS Identity and Access Management.
Cree un rol y un perfil con nombre para cada una de las tres cuentas de AWS que utilizará en este tutorial:
Un perfil llamado
ipam-account
para la cuenta AWS que es el administrador de IPAM.Un perfil llamado
byoip-owner-account
para la cuenta AWS de su organización propietaria del CIDR de BYOIP.
Después de crear los roles de IAM y los perfiles con nombre, regrese a esta página y vaya al paso siguiente. En el resto de este tutorial, observará que los comandos AWS CLI de ejemplo utilizan la opción --profile
con uno de los perfiles con nombre para indicar qué cuenta debe ejecutar el comando.
Paso 2: Obtenga el ID de alcance público del IPAM
Siga los pasos descritos en esta sección para obtener el ID de alcance público del IPAM. La cuenta de ipam-account
debe realizar este paso.
Ejecute el siguiente comando para obtener su ID de alcance público.
aws ec2 describe-ipams --region
us-east-1
--profileipam-account
En la salida, verá su ID de alcance público. Tenga en cuenta los valores para PublicDefaultScopeId
. Lo necesitará en el siguiente paso.
{
"Ipams": [
{
"OwnerId": "123456789012",
"IpamId": "ipam-090e48e75758de279",
"IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279",
"PublicDefaultScopeId": "ipam-scope-0087d83896280b594",
"PrivateDefaultScopeId": "ipam-scope-08b70b04fbd524f8d",
"ScopeCount": 2,
"Description": "my-ipam",
"OperatingRegions": [
{
"RegionName": "us-east-1"
},
{
"RegionName": "us-west-2"
}
],
"Tags": []
}
]
}
Paso 3: Cree un grupo de IPAM
Siga los pasos de esta sección para crear un grupo de IPAM. La cuenta de ipam-account
debe realizar este paso. El grupo de IPAM que cree debe ser un grupo de nivel superior con la opción --locale
que coincide con la región BYOIP CIDR AWS. Solo puede transferir un BYOIP a un grupo de IPAM de nivel superior.
importante
Al crear el grupo, debe incluir --aws-service ec2
. El servicio que seleccione determina el servicio AWS donde el CIDR puede ser anunciado. Actualmente, la única opción es ec2
, lo que significa que los CIDR asignados desde este grupo podrán ser anunciados por el servicio Amazon EC2 (para direcciones IP elásticas) y el servicio Amazon VPC (para CIDR asociados a VPC).
Para crear un grupo de direcciones IPv4 para el CIDR de BYOIP transferido mediante la AWS CLI
-
Ejecute el siguiente comando para crear un grupo de IPAM. Utilice el ID de alcance público de IPAM que se recuperó en el paso anterior.
aws ec2 create-ipam-pool --region
us-east-1
--profileipam-account
--ipam-scope-idipam-scope-0087d83896280b594
--description"top-level-pool"
--localeus-west-2
--aws-service ec2 --address-familyipv4
En la salida, verá
create-in-progress
, lo que indica que la creación del grupo se encuentra en curso.{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-west-2", "PoolDepth": 1, "State": "create-in-progress", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [], "AwsService": "ec2" } }
-
Ejecute el siguiente comando hasta que vea el estado
create-complete
en la salida.aws ec2 describe-ipam-pools --region
us-east-1
--profileipam-account
La siguiente salida de ejemplo muestra el estado del grupo. Necesitará el ID de propietario en el siguiente paso.
{ "IpamPools": [ { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-west-2", "PoolDepth": 1, "State": "create-complete", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [], "AwsService": "ec2" } ] }
Paso 4: Comparta el grupo de IPAM mediante AWS RAM
Siga los pasos de esta sección para compartir un grupo de IPAM utilizando AWS RAM para que otra cuenta de AWS pueda transferir un CIDR IPV4 de BYOIP existente al grupo de IPAM y usarlo. La cuenta de ipam-account
debe realizar este paso.
Para compartir un grupo de direcciones IPv4 mediante AWS CLI
Ver los permisos de AWS RAM disponibles para los grupos de IPAM. Necesita ambos ARN para completar los pasos de esta sección.
aws ram list-permissions --region
us-east-1
--profileipam-account
--resource-type ec2:IpamPool{ "permissions": [ { "arn": "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionsIpamPool", "version": "1", "defaultVersion": true, "name": "AWSRAMDefaultPermissionsIpamPool", "resourceType": "ec2:IpamPool", "status": "ATTACHABLE", "creationTime": "2022-06-30T13:04:29.335000-07:00", "lastUpdatedTime": "2022-06-30T13:04:29.335000-07:00", "isResourceTypeDefault": true }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionIpamPoolByoipCidrImport", "version": "1", "defaultVersion": true, "name": "AWSRAMPermissionIpamPoolByoipCidrImport", "resourceType": "ec2:IpamPool", "status": "ATTACHABLE", "creationTime": "2022-06-30T13:03:55.032000-07:00", "lastUpdatedTime": "2022-06-30T13:03:55.032000-07:00", "isResourceTypeDefault": false } ] }
Cree un recurso compartido para permitir que la cuenta de
byoip-owner-account
importe los CIDR de BYOIP a IPAM. El valor para--resource-arns
es el ARN del grupo de IPAM que creó en la sección anterior. El valor para--principals
es el ID de la cuenta propietaria del CIDR de BYOIP. El valor para--permission-arns
es el ARN del permisoAWSRAMPermissionIpamPoolByoipCidrImport
.aws ram create-resource-share --region
us-east-1
--profileipam-account
--namePoolShare2
--resource-arnsarn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035
--principals111122223333
--permission-arns arn:aws:ram::aws:permission/AWSRAMPermissionIpamPoolByoipCidrImport{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/7993758c-a4ea-43ad-be12-b3abaffe361a", "name": "PoolShare2", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:32:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:32:25.536000-07:00" } }
(Opcional) Si desea permitir que la cuenta de
byoip-owner-account
asigne CIDR de direcciones IP desde el grupo de IPAM a grupos IPv4 públicos una vez finalizada la transferencia, copie el ARN deAWSRAMDefaultPermissionsIpamPool
y cree un segundo recurso compartido. El valor para--resource-arns
es el ARN del grupo de IPAM que creó en la sección anterior. El valor para--principals
es el ID de la cuenta propietaria del CIDR de BYOIP. El valor para--permission-arns
es el ARN del permisoAWSRAMDefaultPermissionsIpamPool
.aws ram create-resource-share --region
us-east-1
--profileipam-account
--namePoolShare1
--resource-arnsarn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035
--principals111122223333
--permission-arns arn:aws:ram::aws:permission/AWSRAMDefaultPermissionsIpamPool{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f", "name": "PoolShare1", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:31:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:31:25.536000-07:00" } }
Como resultado de la creación del recurso compartido en RAM, la cuenta byoip-owner-account ahora puede mover CIDR a IPAM.
Paso 5: Transfiera un CIDR IPV4 de BYOIP existente a IPAM
Siga los pasos para transferir un CIDR IPv4 de BYOIP existente a IPAM. La cuenta de byoip-owner-account
debe realizar este paso.
importante
Una vez que hayas llevado un rango de direcciones IPv4 a AWS, podrás usar todas las direcciones IP del rango, incluidas la primera dirección (la dirección de red) y la última dirección (la dirección de transmisión).
Para transferir el CIDR de BYOIP a IPAM, el propietario del CIDR de BYOIP debe contar con estos permisos en su política de IAM:
-
ec2:MoveByoipCidrToIpam
-
ec2:ImportByoipCidrToIpam
nota
Puede utilizar la AWS Management Console o la AWS CLI para este paso.
Paso 6: Vea el CIDR en IPAM
Siga los pasos de esta sección para ver el CIDR en IPAM. La cuenta de ipam-account
debe realizar este paso.
Para ver el CIDR de BYOIP transferido en el grupo de IPAM mediante la AWS CLI
-
Ejecute el siguiente comando para ver la asignación administrada en IPAM. Asegúrese de que el valor
--region
es la región de AWS del CIDR de BYOIP.aws ec2 get-ipam-pool-allocations --region
us-west-2
--profileipam-account
--ipam-pool-idipam-pool-0d8f3646b61ca5987
La salida muestra la asignación en IPAM.
{ "IpamPoolAllocations": [ { "Cidr": "130.137.249.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc46", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b3", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "111122223333" } ] }
Paso 7: Efectúe una limpieza
Siga los pasos de esta sección para eliminar los recursos que ha creado en este tutorial. La cuenta de ipam-account
debe realizar este paso.
Para eliminar los recursos que se han creado en este tutorial mediante la AWS CLI
Para eliminar el recurso compartido del grupo de IPAM, ejecute el siguiente comando para obtener el primer ARN de recurso compartido:
aws ram get-resource-shares --region
us-east-1
--profileipam-account
--namePoolShare1
--resource-owner SELF{ "resourceShares": [ { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f", "name": "PoolShare1", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:31:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:31:25.536000-07:00", "featureSet": "STANDARD" } ] }
Copie el ARN del recurso compartido y utilícelo para eliminar el recurso compartido del grupo de IPAM.
aws ram delete-resource-share --region
us-east-1
--profileipam-account
--resource-share-arnarn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f
{ "returnValue": true }
-
Si ha creado un recurso compartido adicional en Paso 4: Comparta el grupo de IPAM mediante AWS RAM, repita los dos pasos anteriores para obtener el ARN del segundo recurso compartido de
PoolShare2
y elimínelo. -
Ejecute el siguiente comando para obtener el ID de asignación del CIDR de BYOIP. Asegúrese de que el valor
--region
coincida con la región de AWS del CIDR de BYOIP.aws ec2 get-ipam-pool-allocations --region
us-west-2
--profileipam-account
--ipam-pool-idipam-pool-0d8f3646b61ca5987
La salida muestra la asignación en IPAM.
{ "IpamPoolAllocations": [ { "Cidr": "130.137.249.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc46", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b3", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "111122223333" } ] }
-
Lance la última dirección IP del CIDR del grupo IPv4 público. Ingrese la dirección IP con una máscara de red de /32. Debe volver a ejecutar este comando para cada dirección IP del intervalo CIDR. Si su CIDR es
/24
, tendrá que ejecutar este comando para anular el aprovisionamiento de cada una de las 256 direcciones IP del CIDR/24
. Cuando ejecute el comando en esta sección, el valor de--region
debe coincidir con la región de su IPAM.La cuenta de
byoip-owner-account
debe realizar este paso.aws ec2 deprovision-public-ipv4-pool-cidr --region
us-east-1
--profilebyoip-owner-account
--pool-idipv4pool-ec2-0019eed22a684e0b3
--cidr130.137.249.255/32
En la salida aparecerá el CIDR con aprovisionamiento anulado.
{ "PoolId": "ipv4pool-ec2-0019eed22a684e0b3", "DeprovisionedAddresses": [ "130.137.249.255" ] }
-
Vuelva a ver sus CIDR de BYOIP y asegúrese de que no haya más direcciones aprovisionadas. Al ejecutar el comando en esta sección, el valor de
--region
debe coincidir con la región de su IPAM.La cuenta de
byoip-owner-account
debe realizar este paso.aws ec2 describe-public-ipv4-pools --region
us-east-1
--profilebyoip-owner-account
En la salida aparecerá el recuento de direcciones IP en el grupo IPv4 público.
{ "PublicIpv4Pools": [ { "PoolId": "ipv4pool-ec2-0019eed22a684e0b3", "Description": "", "PoolAddressRanges": [], "TotalAddressCount": 0, "TotalAvailableAddressCount": 0, "NetworkBorderGroup": "us-east-1", "Tags": [] } ] }
-
Ejecute el siguiente comando para eliminar el grupo de nivel superior.
aws ec2 delete-ipam-pool --region
us-east-1
--profileipam-account
--ipam-pool-idipam-pool-0a03d430ca3f5c035
En la salida, puede ver el estado de eliminación.
{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-east-1", "PoolDepth": 2, "State": "delete-in-progress", "Description": "top-level-pool", "AutoImport": false, "Advertisable": true, "AddressFamily": "ipv4", "AwsService": "ec2" } }