Como a Verizon e o BGP Optimizer configuram ótimos offline


Um grande vazamento de rota afetou grandes setores da Internet, incluindo o Cloudflare


O que aconteceu


Em 24 de junho, às 10:30 UTC, a Internet entrou em colapso: uma pequena empresa no norte da Pensilvânia despejou um fluxo de tráfego de muitas rotas que passavam por um grande provedor Verizon (AS701) - com o mesmo sucesso, o navegador poderia enviar um fluxo de carros de uma rodovia de várias faixas para uma rua estreita . Como resultado, muitos sites no Cloudflare e muitos outros provedores têm problemas de acesso. Isso não deveria ter acontecido, porque a Verizon não deveria enviar essas rotas para toda a Internet. Para descobrir como aconteceu, continue lendo.


Já escrevemos sobre esses incidentes antes, eles acontecem de tempos em tempos, mas desta vez sentimos as consequências em todo o mundo. O problema foi exacerbado pelo BGP Optimizer da Noction . Tem uma função que divide os prefixos de IP recebidos em menores e mais específicos. Por exemplo, nossa rota IPv4 104.20.0.0/20 foi dividida em 104.20.0.0/21 e 104.20.8.0/21. Como se a placa da Pensilvânia tivesse sido substituída por duas outras: Pittsburgh, PA e Filadélfia, PA. Ao dividir grandes blocos de IP em pequenos, a rede gerencia o tráfego dentro de si, mas essa separação não deveria ter se tornado disponível ao público. Caso contrário, esses problemas surgem.


Para explicar o que aconteceu a seguir, primeiro vamos relembrar o funcionamento da Internet. Em essência, a Internet é uma rede composta por redes chamadas sistemas autônomos. Cada sistema autônomo possui seu próprio identificador exclusivo. Todas as redes são conectadas entre si usando o Border Gateway Protocol (BGP). O BGP conecta essas redes e forma a estrutura da Internet na qual o tráfego passa, por exemplo, do seu provedor de Internet para um site popular em outra parte do mundo.


Através do BGP, as redes trocam informações sobre rotas, a saber: como acessá-las de qualquer lugar. Essas rotas podem ser específicas (como uma cidade específica no mapa) ou gerais (como uma área). E então o problema aconteceu.


Um provedor de serviços de Internet na Pensilvânia ( AS33154 - DQE Communications) usou o BGP Optimizer em sua rede, o que significa que havia muitas rotas específicas em sua rede. As rotas específicas têm precedência sobre as gerais (no mesmo navegador, por exemplo, a rota para o Palácio de Buckingham será mais específica que a rota para Londres).


O DQE forneceu essas rotas específicas ao seu cliente ( AS396531 - Allegheny Technologies Inc) e, a partir daí, chegou ao provedor de transporte público ( AS701 - Verizon), que carregava essas rotas "ideais" pela Internet. Eles parecem ótimos porque têm mais detalhes e detalhes.


E tudo isso não deveria ir além da Verizon. Embora existam maneiras eficazes de se proteger contra essas falhas, a falta de filtros da Verizon levou a um colapso que afetou muitos serviços, como Amazon, Linode e Cloudflare .


Como resultado, a Verizon, Allegheny e DQE atingiram um grande número de usuários que tentavam acessar esses serviços por meio de sua rede. Eles não foram projetados para um tráfego tão poderoso, o que levou a interrupções. E mesmo que houvesse recursos suficientes, DQE, Allegheny e Verizon não deveriam ter dito a todos sobre a rota ideal para Cloudflare, Amazon, Linode, etc.



Processo de vazamento de BGP com o BGP Optimizer.


Nos piores momentos da falha, observamos uma perda de aproximadamente 15% do tráfego global.



Níveis de tráfego do Cloudflare durante um incidente.


Como um vazamento pode ser evitado?


Existem várias maneiras.


Para uma sessão BGP, você pode definir um limite rígido para prefixos aceitos e, se o número de prefixos exceder o limite, o roteador encerrará a sessão. Se a Verizon tivesse esse limite de prefixos, nada teria acontecido. Para um provedor como a Verizon, instalá-lo seria inútil. Por que não havia limites? Eu tenho uma versão: negligência e preguiça.


Outra maneira de evitar tais vazamentos é usar a filtragem IRR. O IRR (Registro de Roteamento da Internet) é um banco de dados distribuído de rotas da Internet às quais as redes adicionam entradas. Outros operadores de rede usam essas entradas de IRR para criar listas de prefixos específicos para sessões BGP com outras redes. Se filtros IRR fossem usados, nenhuma dessas redes aceitaria rotas específicas incorretas. Incrivelmente, a Verizon não teve essa filtragem nas sessões de BGP com a Allegheny Technologies, embora a filtragem IRR tenha sido usada (e bem documentada) por mais de 24 anos. Os filtros de IRR não custariam nada à Verizon e não limitariam seu serviço de forma alguma. E novamente - negligência e preguiça.


No ano passado, implementamos e implantamos a plataforma RPKI, que apenas impede esses vazamentos. Ele define filtros de acordo com a rede de origem e o tamanho do prefixo. O Cloudflare anuncia prefixos com um tamanho máximo de 20. RPKI indica que prefixos mais específicos não podem ser aceitos, independentemente do caminho. Para que esse mecanismo funcione, a Validação de Origem BGP deve estar ativada na rede. Muitos fornecedores, por exemplo, a AT&T já usam com êxito o RPKI em sua rede.


Se a Verizon usasse o RPKI, eles veriam que as rotas propostas não são válidas e o roteador as rejeitaria automaticamente.


O Cloudflare aconselha todas as operadoras de rede a implantar o RPKI agora mesmo!



Roteie a prevenção de vazamentos usando limites de IRR, RPKI e prefixo.


Todas essas recomendações estão bem descritas em MANRS ( Normas mutuamente acordadas para segurança de roteamento ).


Como resolver o problema


A equipe de rede Cloudflare entrou em contato com as redes afetadas AS33154 (DQE Communications) e AS701 (Verizon). Não foi fácil - talvez porque, quando tudo começou, era de manhã cedo na costa leste dos Estados Unidos.



Captura de tela de uma carta à Verizon.


Um de nossos engenheiros de rede entrou em contato rapidamente com a DQE Communications e, após um pequeno atraso, fomos conectados àquele que poderia resolver o problema. Com nosso suporte por telefone, o DQE conseguiu parar de enviar rotas "otimizadas" para a Allegheny Technologies Inc. Somos gratos a eles por sua ajuda. Tudo estabilizou e voltou ao normal.



Captura de tela das tentativas de contato com o DQE e os serviços de suporte da Verizon


Infelizmente, apesar de todas as nossas tentativas de entrar em contato com a Verizon por telefone e e-mail, no momento da redação (mais de 8 horas se passaram desde o incidente), ninguém nos respondeu e não sabemos se eles estão fazendo algo. .


Nós da Cloudflare não desejaríamos repetir isso, mas infelizmente muito pouco está sendo feito para isso. Chegou a hora do setor tomar medidas mais eficazes para garantir a segurança do roteamento, por exemplo, com sistemas como o RPKI. Esperamos que os principais fornecedores sigam Cloudflare, Amazon e AT&T e iniciem a verificação de rotas . Isto é especialmente verdade para você, Verizon. Ainda estamos esperando por uma resposta.


E, embora não pudéssemos influenciar o que aconteceu, pedimos desculpas pela interrupção no serviço. Preocupamo-nos com nossos clientes, e engenheiros nos EUA, Reino Unido, Austrália e Cingapura entraram em contato conosco alguns minutos depois que descobrimos o problema.


Outros artigos marcados com BGP .

Source: https://habr.com/ru/post/pt457712/


All Articles