Tutorial: configurar la RPKI delegada para prefijos BYOIP
En este tutorial se explican todas las capacidades de protección de rutas BGP de principio a fin. Se puede detener después de cualquier paso y usar lo que ha configurado hasta ese momento. Los pasos 1 y 2 no requieren interacción con el RIR. Los pasos 3 y posteriores requieren una configuración única con su RIR. Para obtener información sobre los conceptos de protección de rutas BGP, los requisitos de nivel y los RIR compatibles, consulte Supervise la protección de rutas BGP.
Requisitos previos
Un IPAM creado en el nivel avanzado.
Uno o más prefijos BYOIP aprovisionados a los grupos de IPAM.
Acceso a su cuenta del Registro Regional de Internet (ARIN, RIPE, APNIC o LACNIC).
Paso 1: Visualización de sus rutas BGP
Una vez que haya aprovisionado los prefijos BYOIP a IPAM, se deben consultar todas las rutas anunciadas en el panel centralizado.
Paso 2: Revisión de los resultados de la protección de las rutas
Para los clientes de nivel avanzado, IPAM evalúa las rutas comparándolas con los datos de la ROA publicados y muestra los resultados con get-ipam-route-protection-findings.
nota
get-ipam-route-protection-findings requiere el nivel avanzado. Los clientes del nivel gratuito reciben un error UnsupportedOperation.
Enumere todos los resultados.
aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8Filtre las ROA no válidas o faltantes.
aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8 \ --filters "Name=rpki-status,Values=invalid,unknown"Filtre por estado en una región específica.
aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8 \ --filters "Name=rpki-status,Values=invalid" "Name=resource-region,Values=us-west-2"
A continuación, se muestra un ejemplo del resultado.
{ "IpamId": "ipam-0a1b2c3d4e5f6g7h8", "RouteProtectionFindings": [ { "ResourceOwnerId": "123456789012", "ResourceRegion": "us-west-2", "IpamPoolId": "ipam-pool-0da89c821626f1e4b", "Cidr": "203.0.113.0/24", "State": "advertised", "AdvertisementType": "regional", "NetworkBorderGroup": "us-west-2", "PoolId": "ipv4pool-ec2-0a1b2c3d4e5f6g7h8", "Asn": "64512", "RpkiStatus": "valid", "RpkiStrength": "strict", "Roas": [ { "Asn": "64512", "Prefix": "203.0.113.0/24", "MaxLength": 24, "Match": true, "Expiration": "2027-06-15T00:00:00Z" } ], "RouteOverlaps": [ { "Prefix": "203.0.113.128/25", "Asn": "64513", "DetectedAt": "2026-03-10T15:45:00+00:00" } ], "SampleTime": "2026-03-10T15:30:00+00:00", "RoaSampleTime": "2026-03-10T16:00:00+00:00" } ] }
Los nombres de filtro válidos son cidr, account-id, resource-region, byoip-cidr-state, advertisement-type, network-border-group, ipam-pool-id, rpki-status y asn. Estos nombres de filtro de estilo EC2 no siempre coinciden con los campos devueltos. Por ejemplo, se filtra por account-id pero la respuesta devuelve ResourceOwnerId, y se filtra por byoip-cidr-state pero el campo es State. La intensidad de la ROA no se puede filtrar.
Paso 3: Configurar la RPKI delegada
La RPKI delegada le permite autorizar a AWS para administrar las ROA en su nombre.
-
Cree la Asociación de Registros de Internet.
aws ec2 create-ipam-internet-registry-association --region us-east-1 \ --ipam-id ipam-0de83dba6694560a9 \ --rir ARIN --org-handle my-arin-orgA continuación, se muestra un ejemplo del resultado.
{ "IpamInternetRegistryAssociation": { "IpamInternetRegistryAssociationId": "ipam-internet-registry-assoc-036486dfa6af58ee0", "State": "create-in-progress" } }Ejecute el siguiente comando hasta que el estado llegue a
pending-enable.aws ec2 describe-ipam-internet-registry-associations --region us-east-1 \ --ipam-internet-registry-association-ids ipam-internet-registry-assoc-036486dfa6af58ee0Una vez que el estado sea
pending-enable, el ChildRequestXml estará listo para enviarlo a su RIR. IPAM organiza las ROA en función de los datos públicos de la VRP (carga útil de la ROA validada). Están pendientes y se activarán una vez que se active la Asociación de Registros de Internet. -
Revise las ROA organizadas por etapas.
aws ec2 get-ipam-route-origin-authorizations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A continuación, se muestra un ejemplo del resultado.
{ "Roas": [ { "prefix": "18.96.0.0/14", "asn": "77221", "maxLength": "24", "state": "pending-activate" } ] } -
Habilite la Asociación de Registros de Internet.
Lleve el archivo ChildRequestXML a su portal RIR y envíe la solicitud de delegación. El RIR devuelve un XML de respuesta principal. Extraiga los siguientes campos de esa respuesta: rpkiVersion, serviceUri, childHandle, parentHandle y parentBpkiTa. A continuación, llame el siguiente comando.
aws ec2 enable-ipam-internet-registry-association --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0 \ --rpki-version "..." \ --service-uri "..." \ --child-handle "..." \ --parent-handle "..." \ --parent-bpki-ta "..."A continuación, se muestra un ejemplo del resultado.
{ "IpamInternetRegistryAssociation": { "IpamInternetRegistryAssociationId": "ipam-internet-registry-assoc-036486dfa6af58ee0", "State": "enable-in-progress" } }Ejecute el siguiente comando hasta que el estado llegue a
enable-complete.aws ec2 describe-ipam-internet-registry-associations --region us-east-1 \ --ipam-internet-registry-association-ids ipam-internet-registry-assoc-036486dfa6af58ee0Una vez que el estado sea
enable-complete, las ROA organizadas en etapas pasan acreate-complete. AWS ahora administra el ciclo de vida de la ROA de todos los CIDR en el marco de esta asociación. -
Ver los CIDR asociados.
aws ec2 get-ipam-internet-registry-association-cidrs --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A continuación, se muestra un ejemplo del resultado.
{ "IpamInternetRegistryAssociationCidrs": [ { "Cidr": "18.96.0.0/14", "LastObservedAt": "2026-07-30T18:00:00.000Z" } ] } -
Ver los ASN asociados.
aws ec2 get-ipam-internet-registry-association-asns --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A continuación, se muestra un ejemplo del resultado.
{ "IpamInternetRegistryAssociationAsns": [ { "Asn": "77221", "LastObservedAt": "2026-07-30T18:00:00.000Z" } ] }
Paso 4: Aprovisionar BYOIP con la creación automática de la ROA
Con la RPKI delegada activa, el aprovisionamiento se simplifica.
| Antes (sin RPKI delegada) | Después (con RPKI delegada) |
|---|---|
Se debe proporcionar --cidr-authorization-context |
Aún así, pase --cidr-authorization-context, pero con Message="CoveredByInternetRegistryAssociation",Signature="": no se requiere un mensaje firmado |
| Debe validarse mediante un registro TXT de WHOIS o DNS | No es obligatorio: IPAM se compara con los CIDR de las asociaciones |
| Debe crear las ROA de manera manual en el RIR antes de anunciarse | Las ROA se crean de manera automática en el aprovisionamiento |
| Debe renovar de manera manual las ROA antes de que caduquen | AWS se renueva de manera automática: no es necesario realizar ninguna acción |
aws ec2 provision-ipam-pool-cidr \ --cidr 18.97.16.0/24 \ --ipam-pool-id ipam-pool-0da89c821626f1e4b \ --cidr-authorization-context Message="CoveredByInternetRegistryAssociation",Signature="" \ --region us-east-1
IPAM valida la propiedad a través de la Asociación de Registros de Internet y crea ROA estrictas que coinciden con la configuración regional y el ASN del grupo. No hay ningún paso de ROA manual.
Paso 5: Administrar las ROA para prefijos en las instalaciones
Para el espacio IP que no se haya incorporado a AWS, utilice los registros de políticas de enrutamiento (RPR).
-
Creación de un RPR.
aws ec2 create-ipam-routing-policy-registration --region us-east-1 \ --ipam-id ipam-0de83dba6694560a9 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0 \ --cidr 18.96.0.0/14 --asns 77221,13446 \ --permit-more-specific-announcementsA continuación, se muestra un ejemplo del resultado.
{ "deltaId": "0130c368-1f8c-4283-8f16-66e67e633086", "state": "PENDING" } -
Comprobación del estado de la diferencia. Si el cambio invalida las rutas existentes, se produce un error. Use
--forcepara anular.aws ec2 get-ipam-routing-policy-registration-deltas --region us-east-1 \ --ipam-id ipam-0de83dba6694560a9 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0 \ --delta-id 0130c368-1f8c-4283-8f16-66e67e633086 -
Actualización por lotes (atómica). Las actualizaciones por lotes se realizan correctamente o fallan de forma atómica. No hay ninguna aplicación parcial.
aws ec2 batch-modify-ipam-routing-policy-registrations --region us-east-1 \ --ipam-id ipam-0de83dba6694560a9 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0 \ --delta-json file://delta.jsonAquí,
delta.jsoncontiene lo siguiente.{ "Add": [ { "prefix": "18.96.0.0/14", "asns": ["77221", "13446"], "permit-more-specific-announcements": "false" } ], "Delete": [ { "prefix": "18.97.16.0/24", "asns": ["77221", "13446"], "permit-more-specific-announcements": "false" } ] } -
Ver todos los registros de una asociación.
aws ec2 get-ipam-routing-policy-registrations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A continuación, se muestra un ejemplo del resultado.
{ "IpamRoutingPolicyRegistrations": [ { "Cidr": "18.96.0.0/14", "Asns": ["77221", "13446"], "PermitMoreSpecificAnnouncements": false, "MaxLength": 14, "LatestDeltaId": "0130c368-1f8c-4283-8f16-66e67e633086", "State": "create-complete" }, { "Cidr": "18.97.16.0/24", "Asns": ["77221", "13446"], "PermitMoreSpecificAnnouncements": false, "MaxLength": 24, "LatestDeltaId": "0130c368-1f8c-4283-8f16-66e67e633086", "State": "create-complete" } ] } -
Filtrar por un prefijo específico.
aws ec2 get-ipam-routing-policy-registrations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0 \ --cidr 18.96.0.0/14
Paso 6: Configurar las alarmas de CloudWatch para detectar anomalías en las rutas
IPAM publica las métricas de CloudWatch para cada ruta BYOIP en la cuenta de IPAM global. La métrica RoaExpiration se publica en el espacio de nombres AWS/IPAM con las dimensiones Cidr, RoaPrefix, Asn y MaxLength.
| Tipo | Nombre | Descripción |
|---|---|---|
| Métrica | Expiración de la ROA | Número de días que faltan para que expire la ROA |
| Dimensión | Asn | ASN para el prefijo |
| Dimensión | Cidr | CIDR incorporado a través de BYOIP |
| Dimensión | MaxLength | MaxLength de la ROA |
| Dimensión | RoaPrefix | Prefijo de la ROA |
Como RoaExpiration indica el número de días que quedan hasta que caduque la ROA, emita una alarma cuando el valor caiga hasta su umbral o por debajo de él. Especifique las cuatro dimensiones para centrarse en una única ROA. Cree la alarma en la misma cuenta y región donde se publican las métricas.
aws cloudwatch put-metric-alarm --region us-east-1 \ --alarm-name "IPAM-RoaExpiration-203.0.113.0-24" \ --alarm-description "Alert when the ROA for 203.0.113.0/24 is within 30 days of expiration" \ --namespace "AWS/IPAM" \ --metric-name RoaExpiration \ --dimensions Name=Cidr,Value=203.0.113.0/24 Name=RoaPrefix,Value=203.0.113.0/24 Name=Asn,Value=64512 Name=MaxLength,Value=24 \ --statistic Minimum \ --period 86400 \ --evaluation-periods 1 \ --threshold 30 \ --comparison-operator LessThanOrEqualToThreshold \ --treat-missing-data notBreaching \ --alarm-actions arn:aws:sns:us-east-1:123456789012:roa-expiry-notifications
Eliminación
Para eliminar los recursos de la RPKI delegados:
Elimine todos los registros de políticas de enrutamiento.
Desasocie la Asociación de Registros de Internet.
(Opcional) Elimine la autorización de su portal RIR.
importante
Al eliminar una asociación de registros de Internet, se eliminan todas las ROA administradas por AWS para esa asociación. Asegúrese de que sus rutas tengan una cobertura de ROA alternativa antes de desasociarse.