![Compreendendo como o Facebook desapareceu da Internet Understanding-how-Facebook-disappeared-from-the-Internet-header-on-blog--1-](https://blog.cloudflare.com/content/images/2021/10/Understanding-how-Facebook-disappeared-from-the-Internet-header-on-blog--1-.png)
Hoje às 15:51 UTC, abrimos um incidente interno intitulado "Pesquisa de DNS do Facebook retornando SERVFAIL" porque estávamos preocupados que algo estivesse errado com nosso resolvedor de DNS 1.1.1.1 . Mas quando estávamos prestes a postar em nossa página de status pública , percebemos que algo mais sério estava acontecendo.
A mídia social rapidamente explodiu em chamas, relatando o que nossos engenheiros também confirmaram rapidamente. O Facebook e seus serviços afiliados WhatsApp e Instagram estavam, de fato, todos fora do ar. Seus nomes DNS pararam de resolver e seus IPs de infraestrutura estavam inacessíveis. Era como se alguém tivesse "puxado os cabos" de seus data centers de uma só vez e os desconectado da Internet.
Este não era um problema de DNS em si, mas a falha de DNS foi o primeiro sintoma que vimos de uma grande indisponibilidade do Facebook.
Como isso é possível?
Atualização do Facebook
O Facebook já publicou uma postagem no blog com alguns detalhes do que aconteceu internamente. Externamente, vimos os problemas de BGP e DNS descritos nesta postagem, mas o problema realmente começou com uma mudança de configuração que afetou todo o backbone interno. Isso se espalhou para o Facebook e outras propriedades desaparecendo e a equipe interna do Facebook tendo dificuldade para fazer o serviço funcionar novamente.O Facebook postou mais uma postagem no blog com muito mais detalhes sobre o que aconteceu. Você pode ler aquele post para a visão interna e este post para a visão externa.
Agora vamos ao que vimos de fora.
Conheça o BGP
BGP significa Border Gateway Protocol. É um mecanismo de troca de informações de roteamento entre sistemas autônomos (AS) na Internet. Os grandes roteadores que fazem a Internet funcionar têm listas enormes e constantemente atualizadas das rotas possíveis que podem ser usadas para entregar todos os pacotes de rede a seus destinos finais. Sem o BGP, os roteadores da Internet não saberiam o que fazer e a Internet não funcionaria.A Internet é literalmente uma rede de redes e é unida pelo BGP. O BGP permite que uma rede (digamos o Facebook) anuncie sua presença para outras redes que formam a Internet. Enquanto escrevemos, o Facebook não está anunciando sua presença, os ISPs e outras redes não conseguem encontrar a rede do Facebook e, portanto, ela está indisponível.
Cada rede individual possui um ASN: um número de sistema autônomo. Um Sistema Autônomo (AS) é uma rede individual com uma política de roteamento interno unificado. Um AS pode originar prefixos (digamos que eles controlam um grupo de endereços IP), bem como prefixos de trânsito (digam que sabem como alcançar grupos específicos de endereços IP).
O ASN da Cloudflare é AS13335 . Cada ASN precisa anunciar suas rotas de prefixo para a Internet usando BGP; caso contrário, ninguém saberá como se conectar e onde nos encontrar.
Nosso centro de aprendizagem tem uma boa visão geral do que são BGP e ASNs e como funcionam.
Neste diagrama simplificado, você pode ver seis sistemas autônomos na Internet e duas rotas possíveis que um pacote pode usar para ir do início ao fim. AS1 → AS2 → AS3 sendo o mais rápido e AS1 → AS6 → AS5 → AS4 → AS3 sendo o mais lento, mas pode ser usado se o primeiro falhar.
![Compreendendo como o Facebook desapareceu da Internet Image5-10](https://blog.cloudflare.com/content/images/2021/10/image5-10.png)
- Código:
route-views>show ip bgp 185.89.218.0/23
% Network not in table
route-views>
route-views>show ip bgp 129.134.30.0/23
% Network not in table
route-views>
Enquanto isso, outros endereços IP do Facebook permaneceram roteados, mas não foram particularmente úteis, uma vez que, sem o DNS, o Facebook e os serviços relacionados estavam efetivamente indisponíveis:
- Código:
route-views>show ip bgp 129.134.30.0
BGP routing table entry for 129.134.0.0/17, version 1025798334
Paths: (24 available, best #14, table default)
Not advertised to any peer
Refresh Epoch 2
3303 6453 32934
217.192.89.50 from 217.192.89.50 (138.187.128.158)
Origin IGP, localpref 100, valid, external
Community: 3303:1004 3303:1006 3303:3075 6453:3000 6453:3400 6453:3402
path 7FE1408ED9C8 RPKI State not found
rx pathid: 0, tx pathid: 0
Refresh Epoch 1
route-views>
Acompanhamos todas as atualizações e anúncios do BGP que vemos em nossa rede global. Em nossa escala, os dados que coletamos nos dão uma visão de como a Internet está conectada e para onde o tráfego deve fluir de e para todos os lugares do planeta.
Uma mensagem BGP UPDATE informa um roteador sobre quaisquer alterações feitas em um anúncio de prefixo ou remove totalmente o prefixo. Podemos ver isso claramente no número de atualizações que recebemos do Facebook ao verificar nosso banco de dados BGP de série temporal. Normalmente, este gráfico é bastante silencioso: o Facebook não faz muitas alterações em sua rede minuto a minuto.
Mas por volta das 15:40 UTC, vimos um pico de mudanças de roteamento do Facebook. Foi aí que o problema começou.
![Compreendendo como o Facebook desapareceu da Internet Image4-11](https://blog.cloudflare.com/content/images/2021/10/image4-11.png)
![Compreendendo como o Facebook desapareceu da Internet Image3-9](https://blog.cloudflare.com/content/images/2021/10/image3-9.png)
DNS é afetado
Como consequência direta disso, os resolvedores de DNS em todo o mundo pararam de resolver seus nomes de domínio.- Código:
➜ ~ dig @1.1.1.1 facebook.com
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31322
;facebook.com. IN A
➜ ~ dig @1.1.1.1 whatsapp.com
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31322
;whatsapp.com. IN A
➜ ~ dig @8.8.8.8 facebook.com
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31322
;facebook.com. IN A
➜ ~ dig @8.8.8.8 whatsapp.com
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31322
;whatsapp.com. IN A
Isso ocorre porque o DNS, como muitos outros sistemas na Internet, também possui seu mecanismo de roteamento. Quando alguém digita a URL https://facebook.com no navegador, o resolvedor de DNS, responsável por traduzir nomes de domínio em endereços IP reais aos quais se conectar, primeiro verifica se há algo em seu cache e o usa. Caso contrário, ele tenta obter a resposta dos servidores de nomes de domínio, normalmente hospedados pela entidade que o possui.
Se os servidores de nomes estiverem inacessíveis ou não responderem por algum outro motivo, um SERVFAIL é retornado e o navegador emite um erro para o usuário.
Novamente, nosso centro de aprendizagem fornece uma boa explicação sobre como o DNS funciona.
![Compreendendo como o Facebook desapareceu da Internet Image8-8](https://blog.cloudflare.com/content/images/2021/10/image8-8.png)
Mas isso não é tudo. Agora, o comportamento humano e a lógica do aplicativo entram em ação e causam outro efeito exponencial. Segue-se um tsunami de tráfego DNS adicional.
Isso aconteceu em parte porque os aplicativos não aceitam um erro como resposta e começam a tentar novamente, às vezes agressivamente, e em parte porque os usuários finais também não aceitarão um erro como resposta e começarão a recarregar as páginas, ou matar e reiniciar seus aplicativos, às vezes também de forma agressiva.
Este é o aumento de tráfego (em número de solicitações) que vimos em 1.1.1.1:
![Compreendendo como o Facebook desapareceu da Internet Image6-9](https://blog.cloudflare.com/content/images/2021/10/image6-9.png)
Felizmente, 1.1.1.1 foi desenvolvido para ser gratuito, privado, rápido (como o monitor DNSPerf independente pode atestar) e escalonável, e pudemos continuar atendendo nossos usuários com o mínimo de impacto.
A grande maioria de nossas solicitações de DNS continuou sendo resolvida em menos de 10 ms. Ao mesmo tempo, uma fração mínima dos percentis p95 e p99 teve tempos de resposta aumentados, provavelmente devido a TTLs expirados que tiveram que recorrer aos servidores de nomes do Facebook e tempo limite. O limite de tempo limite de DNS de 10 segundos é bem conhecido entre os engenheiros.
![Compreendendo como o Facebook desapareceu da Internet Image2-11](https://blog.cloudflare.com/content/images/2021/10/image2-11.png)
Impactando outros serviços
As pessoas procuram alternativas e querem saber mais ou discutir o que está acontecendo. Quando o Facebook se tornou inacessível, começamos a ver um aumento nas consultas de DNS no Twitter, Signal e outras plataformas de mensagens e mídia social.![Compreendendo como o Facebook desapareceu da Internet Image1-12](https://blog.cloudflare.com/content/images/2021/10/image1-12.png)
![Compreendendo como o Facebook desapareceu da Internet Image7-6](https://blog.cloudflare.com/content/images/2021/10/image7-6.png)
A Internet
Os eventos de hoje são um lembrete gentil de que a Internet é um sistema muito complexo e interdependente de milhões de sistemas e protocolos trabalhando juntos. Essa confiança, padronização e cooperação entre entidades estão no centro de fazer isso funcionar para quase cinco bilhões de usuários ativos em todo o mundo.Atualizar
Por volta das 21h UTC, vimos uma atividade renovada do BGP da rede do Facebook, que atingiu o pico às 21h17 UTC.![Compreendendo como o Facebook desapareceu da Internet Unnamed-3-3](https://blog.cloudflare.com/content/images/2021/10/unnamed-3-3.png)
![Compreendendo como o Facebook desapareceu da Internet Unnamed-4](https://blog.cloudflare.com/content/images/2021/10/unnamed-4.png)