O que é RPKI: a proteção das rotas BGP explicada para provedores
O que é RPKI: é um sistema de certificados que liga cada bloco de IP ao seu dono e permite conferir, no BGP, se a rede que anuncia um prefixo tem autorização para isso. Ele nasceu porque o BGP, sozinho, aceita qualquer anúncio, inclusive o de quem anuncia por engano ou de má fé um bloco que não é seu.
Resumo
- O BGP foi feito na base da confiança e não confere se quem anuncia um bloco é o dono dele.
- O RPKI publica quem pode originar cada prefixo, e as redes que validam recusam o que não bate.
- Não há lei que obrigue o provedor a usar, mas operadoras e pontos de troca já descartam rotas inválidas.
- [object Object]
O que é RPKI e que problema ele resolve
RPKI é a sigla em inglês para infraestrutura de chave pública de recursos, uma cadeia de certificados que prova quem é o titular de cada bloco de IP e de cada ASN. Ele resolve a falta de conferência de origem no BGP.
Quando uma rede anuncia um prefixo por BGP, as vizinhas acreditam no anúncio e o repassam. Não existe, no protocolo original, nenhuma pergunta do tipo "esse bloco é mesmo seu?". Um erro de digitação num filtro ou uma rede mal-intencionada podem anunciar o bloco de outra empresa, e parte da internet passa a mandar o tráfego para o lugar errado.
O caso mais lembrado aconteceu em 2008, quando uma operadora do Paquistão anunciou um pedaço do bloco do YouTube e tirou o site do ar para boa parte do mundo por algumas horas. Desde então, incidentes do mesmo tipo atingem bancos, provedores e plataformas de conteúdo com alguma frequência.
O RPKI muda isso com uma publicação assinada: o dono do bloco diz qual ASN pode originá-lo, e qualquer rede pode conferir. A implantação de RPKI para provedores cuida das duas metades dessa proteção, a de publicar e a de conferir.
As três peças do RPKI, sem jargão
Dá para entender o RPKI inteiro com três peças. Cada uma tem um guia próprio no blog, e aqui elas aparecem só no papel que cumprem.
- Certificado: documento digital que o registro emite para o provedor e que prova quais blocos e ASNs são dele.
- ROA: autorização assinada com esse certificado, dizendo que um ASN pode anunciar um prefixo até certo tamanho.
- Validação: conferência feita por quem recebe a rota, que marca o anúncio como válido, inválido ou não encontrado.
O que o RPKI não resolve
O RPKI confere a origem do anúncio, não o caminho inteiro. Uma rede que repassa rotas que não devia, mantendo a origem certa, continua passando pela validação.
Para esse outro tipo de problema existem filtros de saída bem escritos e propostas novas de validação do caminho, ainda em adoção [CONFIRMAR estágio atual na IETF]. Por isso o RPKI soma com as prefix-lists, e não substitui nenhuma delas.
Na prática: quando outra rede anuncia o seu bloco
Sem RPKI, um anúncio falso do seu bloco pode atrair parte do tráfego dos seus assinantes e de quem acessa serviços dentro da sua rede. Com ROA publicado, as redes que validam recusam o anúncio falso e o tráfego segue para você.
1 · Erro em outra rede
O AS 64510 anuncia o seu bloco
Um filtro errado faz outra rede anunciar 203.0.113.0/24 como se fosse dela.
2 · Sem RPKI
As vizinhas aceitam e repassam
Redes que não validam escolhem o caminho mais curto, e parte da internet passa a mandar o tráfego ao AS 64510.
3 · Com ROA publicado
O anúncio falso vira inválido
O ROA diz que só o AS 64500 origina o bloco, e as redes que validam descartam o anúncio do AS 64510.
A proteção depende de quem recebe a rota validar. Quanto mais redes fazem isso, menor o alcance de um anúncio falso do seu bloco.
O mesmo vale ao contrário. Se o seu roteador de borda não valida, ele pode aceitar um anúncio falso do bloco de um banco ou de uma plataforma e mandar o tráfego dos seus assinantes para lá; a validação de origem de rotas é a parte do RPKI que protege esse lado.
RPKI é obrigatório para o provedor?
Não existe lei nem regra da Anatel conhecida que obrigue o provedor a usar RPKI [CONFIRMAR na norma]. Na prática, porém, quem não publica ROA corre mais risco e quem publica errado perde alcance nas redes que validam.
| Quem | O que acontece | Peso para o provedor |
|---|---|---|
| Lei e Anatel | Sem exigência específica de RPKI conhecida [CONFIRMAR na norma] | Nenhuma multa ligada ao RPKI |
| IX.br | Route servers descartam rotas inválidas [CONFIRMAR política atual do IX.br] | Prefixo com ROA errado não circula no ponto de troca |
| Operadoras de trânsito | Muitas descartam inválidas na entrada [CONFIRMAR com cada operadora] | Anúncio com origem divergente some por aquele link |
| Boas práticas do setor | MANRS e programas do NIC.br recomendam ROA e validação [CONFIRMAR na norma] | Exigido em parte das negociações de interconexão |
A obrigação, portanto, é de mercado, e não de lei. Um provedor sem ROA continua anunciando, mas fica sem defesa contra anúncio falso; um provedor com ROA desatualizado tem um problema mais imediato, porque o próprio bloco vira inválido e some por onde há validação.
Por que o IX.br pesa mais do que a lei
Para um provedor regional, o ponto de troca concentra boa parte do tráfego de conteúdo. Se a política do route server recusa o prefixo, a perda aparece no dia seguinte como tráfego desviado para o trânsito pago.
Quem vai ativar ou revisar a porta no ponto de troca encontra os pré-requisitos nas sessões com route servers, onde ROA e objeto de rota aparecem como condição para os prefixos circularem.
Quando a falta de RPKI vira problema
A falta de RPKI vira problema quando um bloco some sem queda de sessão ou quando parte do tráfego vai para onde não devia. Os dois sintomas costumam ser lidos como defeito da operadora.
Marque o que já aconteceu ou vale hoje para o seu provedor
- Um prefixo seu deixou de aparecer por uma operadora sem que a sessão caísse.
- Uma ferramenta pública marcou um anúncio seu como inválido.
- O provedor mudou de bloco, de ASN ou de operadora e ninguém revisou os ROAs.
- Assinantes reclamaram de um site específico inacessível enquanto o resto funcionava.
- O roteador de borda aceita qualquer rota da operadora, sem marcar o estado de validação.
- Ninguém sabe quem tem o login do painel do Registro.br onde os ROAs ficam.
Uma marca já pede revisão dos ROAs e da borda. Três ou mais indicam que o provedor está exposto nos dois sentidos, tanto no que anuncia quanto no que aceita.
Quer o RPKI funcionando sem sumir com nenhum bloco?
Na implantação de RPKI, um Especialista levanta os anúncios, publica os ROAs com tamanho justo e liga a validação na borda com fase de observação antes do descarte.
A Táquion Tech não ativa o descarte de rotas inválidas sem antes observar a validação na borda, porque é nessa fase que aparecem ROAs de clientes e de parceiros que ninguém sabia que estavam errados.
Erros comuns sobre o RPKI
Os erros mais comuns vêm de achar que o RPKI é só um cadastro ou que ele protege mais do que protege. Cada um deixa uma brecha diferente.
Evite estas ideias sobre o RPKI
- Criar ROA e esquecer: cada mudança de bloco, de origem ou de cliente com ASN exige revisão das autorizações.
- Tamanho máximo folgado: autorizar mais do que o anunciado deixa brecha para um anúncio forjado com o seu ASN.
- Achar que ROA filtra: publicar protege os seus blocos, mas não impede o seu roteador de aceitar rota falsa.
- Um validador só: se ele para, a borda perde a referência e a proteção some em silêncio.
- RPKI no lugar dos filtros: a validação confere a origem, e o filtro de saída continua necessário.
O detalhe do tamanho máximo é o que mais confunde, e está explicado com exemplos na criação de ROAs. Já a escrita dos filtros que complementam o RPKI está na configuração de prefix-lists.
Publicar ROA ou validar rotas: por onde começar?
Comece publicando os ROAs dos seus blocos, porque é rápido e protege o que é seu. A validação na borda vem em seguida, com observação antes de qualquer descarte.
A publicação depende só do inventário dos anúncios e do acesso ao painel do registro. A validação exige um servidor para o validador, a ligação com o roteador e uma política testada, o que pede uma janela planejada.
- Inventário: liste cada prefixo que sai da borda, com a origem e o tamanho anunciado.
- Publicação: crie os ROAs no painel e confira de fora da rede se os anúncios aparecem como válidos.
- Observação: ligue a validação no roteador só para marcar as rotas, sem descartar nada.
- Descarte: depois de entender o que aparece como inválido, recuse essas rotas na entrada.
Provedor que ainda não tem ASN próprio não tem ROA para publicar, porque os blocos são da operadora. Nesse caso, o primeiro passo é entender o que é ASN em redes e quando o número próprio passa a valer.
Perguntas frequentes
Por que o RPKI é obrigatório em alguns lugares e em outros não?
Porque a exigência vem de quem troca rotas com você, e não de uma lei única [CONFIRMAR na norma]. Cada operadora e cada ponto de troca decide se descarta rotas inválidas, e isso muda de rede para rede.
RPKI deixa a internet do provedor mais lenta?
Não. A conferência acontece no roteador quando a rota chega, e não pacote a pacote. O tráfego dos assinantes segue pelo mesmo caminho e na mesma velocidade.
Quem cria os ROAs dos blocos do provedor?
O titular dos blocos, no painel do Registro.br, com o login da empresa. Quando um cliente com ASN próprio anuncia um bloco seu, o ROA dele também precisa ser criado por você.
Provedor pequeno precisa se preocupar com RPKI?
Precisa, se tiver ASN e blocos próprios, porque um anúncio falso do bloco atinge a base inteira. O tamanho da rede não muda o risco; muda só a quantidade de prefixos para cuidar.
Qual a diferença entre RPKI e IRR?
O IRR é uma base de objetos de rota escrita pelos próprios operadores, sem assinatura que prove a titularidade. O RPKI usa certificados emitidos pelo registro, e por isso a origem publicada nele tem prova criptográfica.
Fontes
- RFC 6480, An Infrastructure to Support Secure Internet Routing: arquitetura do RPKI, com certificados e ROAs.
- RFC 6811, BGP Prefix Origin Validation: estados válido, inválido e não encontrado.
- MANRS, Mutually Agreed Norms for Routing Security: ações recomendadas de segurança de roteamento para operadores.