Tutorial: configurar RPKI delegado para prefixos BYOIP
Este tutorial aborda todos os recursos de proteção de rotas BGP de ponta a ponta. Você pode parar depois de qualquer etapa e usar o que foi configurado até agora. As etapas 1 e 2 não exigem interação com o RIR. As etapas 3 e posteriores exigem uma configuração única com seu RIR. Para obter informações sobre os conceitos de proteção de rotas do BGP, os requisitos de nível e os RIRs compatíveis, consulte Monitorar a proteção da rota BGP.
Pré-requisitos
Um IPAM criado no nível avançado.
Um ou mais prefixos BYOIP provisionados para pools IPAM.
Acesso à sua conta do Registro Regional da Internet (ARIN, RIPE, APNIC ou LACNIC).
Etapa 1: visualizar as rotas do BGP
Depois de ter os prefixos BYOIP provisionados para o IPAM, visualize todas as rotas anunciadas no painel centralizado.
Etapa 2: analisar os resultados sobre a proteção de rotas
Para clientes do Advanced Tier, o IPAM avalia as rotas em relação aos dados de ROA publicados e apresenta as descobertas com get-ipam-route-protection-findings.
nota
get-ipam-route-protection-findings requer o nível avançado. Clientes do nível gratuito recebem um erro UnsupportedOperation.
Listar todas as descobertas.
aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8Filtrar por ROAs inválidos ou ausentes.
aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8 \ --filters "Name=rpki-status,Values=invalid,unknown"Filtrar por status em uma região 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 seguir está um exemplo de saída.
{ "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" } ] }
Os nomes de filtro válidos são cidr, account-id, resource-region, byoip-cidr-state, advertisement-type, network-border-group, ipam-pool-id, rpki-status e asn. Esses nomes de filtro no estilo EC2 nem sempre correspondem aos campos retornados. Por exemplo, você filtra em account-id, mas a resposta retorna ResourceOwnerId, e filtra em byoip-cidr-state, mas o campo é State. A intensidade do ROA não é filtrável.
Etapa 3: configurar a RPKI delegada
A RPKI delegada permite que você autorize a AWS a gerenciar ROAs em seu nome.
-
Crie a Internet Registry Association.
aws ec2 create-ipam-internet-registry-association --region us-east-1 \ --ipam-id ipam-0de83dba6694560a9 \ --rir ARIN --org-handle my-arin-orgA seguir está um exemplo de saída.
{ "IpamInternetRegistryAssociation": { "IpamInternetRegistryAssociationId": "ipam-internet-registry-assoc-036486dfa6af58ee0", "State": "create-in-progress" } }Execute o comando a seguir até que o estado chegue a
pending-enable.aws ec2 describe-ipam-internet-registry-associations --region us-east-1 \ --ipam-internet-registry-association-ids ipam-internet-registry-assoc-036486dfa6af58ee0Quando o estado for
pending-enable, o ChildRequestXml estará pronto para ser enviado ao seu RIR. O IPAM organiza os ROAs com base em dados públicos de VRP (Validated ROA Payload). Eles estão pendentes e serão ativados quando a Internet Registry Association for ativada. -
Analise os ROAs escalonados.
aws ec2 get-ipam-route-origin-authorizations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A seguir está um exemplo de saída.
{ "Roas": [ { "prefix": "18.96.0.0/14", "asn": "77221", "maxLength": "24", "state": "pending-activate" } ] } -
Habilite a Internet Registry Association.
Leve o ChildRequestXML ao seu portal RIR e envie a solicitação de delegação. O RIR retorna um XML de resposta principal. Extraia os seguintes campos dessa resposta: RpkiVersion, ServiceUri, ChildHandle, ParentHandle e ParentBpkiTa. Em seguida, chame o comando a seguir.
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 seguir está um exemplo de saída.
{ "IpamInternetRegistryAssociation": { "IpamInternetRegistryAssociationId": "ipam-internet-registry-assoc-036486dfa6af58ee0", "State": "enable-in-progress" } }Execute o comando a seguir até que o estado chegue a
enable-complete.aws ec2 describe-ipam-internet-registry-associations --region us-east-1 \ --ipam-internet-registry-association-ids ipam-internet-registry-assoc-036486dfa6af58ee0Quando o estado for
enable-complete, os ROAs escalonados passarão paracreate-complete. A AWS agora gerencia o ciclo de vida do ROA para todos os CIDRs sob essa associação. -
Veja os CIDRs associados.
aws ec2 get-ipam-internet-registry-association-cidrs --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A seguir está um exemplo de saída.
{ "IpamInternetRegistryAssociationCidrs": [ { "Cidr": "18.96.0.0/14", "LastObservedAt": "2026-07-30T18:00:00.000Z" } ] } -
Veja os ASNs associados.
aws ec2 get-ipam-internet-registry-association-asns --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A seguir está um exemplo de saída.
{ "IpamInternetRegistryAssociationAsns": [ { "Asn": "77221", "LastObservedAt": "2026-07-30T18:00:00.000Z" } ] }
Etapa 4: provisionar BYOIP com a criação automatizada de ROA
Com a RPKI delegada ativa, o provisionamento é simplificado.
| Antes (sem RPKI delegada) | Depois (com RPKI delegada) |
|---|---|
Deve fornecer --cidr-authorization-context |
Ainda passa --cidr-authorization-context, mas com Message="CoveredByInternetRegistryAssociation",Signature="" — nenhuma mensagem assinada é necessária |
| É necessário validar via registro WHOIS ou DNS TXT | Não é necessário, o IPAM verifica os CIDRs da associação |
| É necessário criar ROAs manualmente no RIR antes de anunciar | ROAs criados automaticamente no provisionamento |
| É necessário renovar manualmente os ROAs antes da expiração | A AWS renova automaticamente, nenhuma ação é necessária |
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
O IPAM valida a propriedade por meio da Internet Registry Association e cria ROAs estritos que correspondem à localidade e ao ASN do pool. Não há etapa manual de ROA.
Etapa 5: gerenciar os ROAs para prefixos on-premises
Para o espaço IP que não é transferido para AWS, use registros de política de roteamento (RPRs).
-
Criar uma 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 seguir está um exemplo de saída.
{ "deltaId": "0130c368-1f8c-4283-8f16-66e67e633086", "state": "PENDING" } -
Verificar status delta. Se a alteração invalidar as rotas existentes, ela falhará com um erro. Use
--forcepara substituir.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 -
Atualização em lote (atômica). As atualizações em lote são bem-sucedidas ou falham atomicamente. Não há aplicação 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.jsonAqui,
delta.jsoncontém o seguinte.{ "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" } ] } -
Veja todos os registros de uma associação.
aws ec2 get-ipam-routing-policy-registrations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0A seguir está um exemplo de saída.
{ "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" } ] } -
Filtre para um prefixo 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
Etapa 6: configurar alarmes do CloudWatch para anomalias de rota
O IPAM publica métricas do CloudWatch para cada rota de BYOIP na conta IPAM global. A métrica RoaExpiration é publicada no namespace AWS/IPAM com as dimensões Cidr, RoaPrefix, Asn e MaxLength.
| Tipo | Name (Nome) | Descrição |
|---|---|---|
| Métrica | Expiração do ROA | Número de dias até que o ROA expire |
| Dimensão | ASN | ASN para o prefixo |
| Dimensão | Cidr | CIDR trazido via BYOIP |
| Dimensão | MaxLength | Comprimento máximo do ROA |
| Dimensão | Prefixo ROA | Prefixo do ROA |
Como RoaExpiration informa o número de dias restantes até o ROA expirar, acione um alarme quando o valor cair para ou abaixo do limite. Especifique todas as quatro dimensões para atingir um único ROA. Crie o alarme na mesma conta e região em que as métricas são publicadas.
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
Limpeza
Para remover recursos de RPKI delegados:
Exclua todos os registros da política de roteamento.
Desassocie a Internet Registry Association.
(Opcional) Remova a autorização em seu portal RIR.
Importante
A exclusão de uma Associação do Registro da Internet remove todos os ROAs gerenciados pelo AWS dessa associação. Certifique-se de que suas rotas tenham cobertura alternativa de ROA antes de desassociar.