View a markdown version of this page

Tutorial: configurar RPKI delegado para prefixos BYOIP - Amazon Virtual Private Cloud

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.

AWS Management Console
Para ver suas rotas de BGP
  1. Abra o console do IPAM em https://console.aws.amazon.com/ipam/.

  2. No painel de navegação, escolha IPAM e, em seguida, escolha seu IPAM.

  3. Em Monitoramento, escolha Monitoramento de rotas.

O painel exibe todas as rotas BYOIP com prefixo, localidade, status do anúncio, ASN, validade do RPKI, força do ROA e sobreposições de rotas.

Command line

Use get-ipam-discovered-routes para ver as rotas descobertas. Esse comando está disponível para os clientes do nível gratuito e do nível avançado.

aws ec2 get-ipam-discovered-routes \ --ipam-resource-discovery-id ipam-res-disco-0365d2977fc1672fe \ --resource-region us-west-2

A seguir está um exemplo de saída.

{ "IpamDiscoveredRoutes": [ { "IpamResourceDiscoveryId": "ipam-res-disco-0365d2977fc1672fe", "ResourceRegion": "us-west-2", "ResourceOwnerId": "123456789012", "Cidr": "203.0.113.0/24", "Asn": "64512", "State": "advertised", "AdvertisementType": "regional", "NetworkBorderGroup": "us-west-2", "PoolId": "ipv4pool-ec2-0a1b2c3d4e5f6g7h8", "IpamPoolId": "ipam-pool-0da89c821626f1e4b", "SampleTime": "2026-03-10T15:30:00+00:00" } ] }

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.

  1. Listar todas as descobertas.

    aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8
  2. Filtrar por ROAs inválidos ou ausentes.

    aws ec2 get-ipam-route-protection-findings \ --ipam-id ipam-0a1b2c3d4e5f6g7h8 \ --filters "Name=rpki-status,Values=invalid,unknown"
  3. 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.

  1. 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-org

    A 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-036486dfa6af58ee0

    Quando 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.

  2. Analise os ROAs escalonados.

    aws ec2 get-ipam-route-origin-authorizations --region us-east-1 \ --ipam-internet-registry-association-id ipam-internet-registry-assoc-036486dfa6af58ee0

    A seguir está um exemplo de saída.

    { "Roas": [ { "prefix": "18.96.0.0/14", "asn": "77221", "maxLength": "24", "state": "pending-activate" } ] }
  3. 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-036486dfa6af58ee0

    Quando o estado for enable-complete, os ROAs escalonados passarão para create-complete. A AWS agora gerencia o ciclo de vida do ROA para todos os CIDRs sob essa associação.

  4. 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-036486dfa6af58ee0

    A seguir está um exemplo de saída.

    { "IpamInternetRegistryAssociationCidrs": [ { "Cidr": "18.96.0.0/14", "LastObservedAt": "2026-07-30T18:00:00.000Z" } ] }
  5. 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-036486dfa6af58ee0

    A 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).

  1. 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-announcements

    A seguir está um exemplo de saída.

    { "deltaId": "0130c368-1f8c-4283-8f16-66e67e633086", "state": "PENDING" }
  2. Verificar status delta. Se a alteração invalidar as rotas existentes, ela falhará com um erro. Use --force para 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
  3. 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.json

    Aqui, delta.json conté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" } ] }
  4. 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-036486dfa6af58ee0

    A 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" } ] }
  5. 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:

  1. Exclua todos os registros da política de roteamento.

  2. Desassocie a Internet Registry Association.

  3. (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.