Caída redes - qué es bgp

Qué es BGP y cómo afectó a WhatsApp, Instagram y Facebook

|

Tiempo de lectura: 4 minutos

Actualizado el jueves, 22 diciembre, 2022

Hace pocas horas WhatsApp, Instagram y Facebook sufrieron una caída mundial de más de 6 horas, y todo apunta a que se debió a un borrado de sus tablas BGP en Internet.

A consecuencia del borrado hubo un fallo en los sistemas de nombres dominio (DNS), que son los encargados de traducir los nombres, por ejemplo facebook.com, por la dirección IP en la que se aloja el hosting de dicho dominio. Por este motivo, durante las más de 6 horas de caída de estas aplicaciones, los nombres de dominio fueron imposibles de localizar, de manera que no funcionaban ni sus páginas web ni las aplicaciones, incluso algunos de los dominios aparecieron como disponibles para su registro.

qué es BGP, página inactiva Facebook

Pero la raíz del problema, como apuntan desde diversas fuentes, se debe a un posible borrado de sus tablas BGP. En este post te lo explicamos al detalle.

¿Qué es BGP?

BGP es un protocolo, unas normas de comunicación, que se usan para que las diferentes redes que componen Internet se puedan comunicar entre sí. Si falla BGP, falla Internet. Pero no hay que preocuparse, se diseñó para ser muy robusto.

Se ha dicho muchas veces que Internet no es más que un montón de redes privadas conectadas entre sí y que se intercambian información entre ellas. Y es literalmente así. BGP es el pegamento que une esas redes, definiendo las reglas para que se pueda hacer ese intercambio. La idea es relativamente sencilla:

  • Cada empresa o institución presente en Internet, a la que vamos a llamar Sistema Autónomo (AS) a partir de ahora, hace uso de BGP para anunciarle a las demás qué redes son de su propiedad y cómo puede llegar a ellas. Para esto, los AS conectan algunos de sus routers entre sí para hacer esos anuncios.
  • En muchos casos no solo se anuncian las redes que dependen de un AS determinado, sino las de otros AS que se han aprendido por los intercambios mutuos. Esto hace que al final los routers que conectan los AS entre sí tengan información de todas las redes que existen en Internet, y lo más importante, saben cómo llegar a ellas, por lejos que estén. Mediante cálculos realizados sobre una serie de parámetros que se saben sobre cada red, como cuantos AS distintos hay que atravesar para llegar a ella, se calcula la mejor ruta, que es la que usan los routers del AS para llegar a ella. Actualmente hay casi un millón de redes diferentes, para las que hay que calcular las rutas.
  • Cuando una red desaparece por el motivo que sea, los routers del resto de AS, a través de anuncios específicos, lo acaban sabiendo. De este modo en unos minutos esa red desaparece de Internet y ya no se pueden enviar datos hacia ella ni recibirlos.

Para que lo entiendas perfectamente, un BGP es como un GPS. Si quieres ir de Santiago a Madrid, el GPS decide la mejor ruta posible teniendo en cuenta las condiciones de la carretera, atascos, etc. A veces, el camino más corto puede tener mucho tráfico, por lo que no siempre es el mejor. El BGP es un mapa de Internet siempre actualizado, en el que los routers eligen la mejor ruta en ese momento.

¿Por qué puede fallar BGP?

En la gran mayoría de los casos por errores humanos. Una configuración mal hecha se propaga inexorablemente por toda Internet y puede tener consecuencias catastróficas para algunos AS. El resto son errores en algún router de algún AS que puede hacer que ese AS deje de estar visible.

Pero lo importante es que BGP está diseñado con la resiliencia en mente: es prácticamente imposible que Internet como tal “se caiga”. BGP lleva la redundancia en su filosofía. Eso no quita que AS individuales o redes específicas puedan “desaparecer” de Internet. Pero son eso, AS concreto o alguna red en particular, no toda Internet.

¿Qué pasó con Facebook, WhatsApp e Instagram?

Por motivos que solo Facebook sabe, una actualización de las rutas en algunos routers importantes sacó de los anuncios de BGP las redes de sus servidores DNS. Al no poder consultar los DNS de Facebook para poder acceder a los diferentes servicios de esta plataforma, no había nada que dependiera de ellos que se pudiera alcanzar. En concreto, los propios dominios de Facebook, pero también los de WhatsApp e Instagram.

Lo peor es que los propios trabajadores de FB no podían acceder a sus recursos de trabajo desde sus puestos remotos. Esto se debe a que estos dominios estaban bajo dominios de facebook.com, con lo que no podían siquiera saber que estaba pasando y mucho menos arreglarlo. Y los que intentaban acceder a las oficinas para poder trabajar presencialmente, se encontraron con que los sistemas de autenticación para poder acceder a los edificios tampoco funcionaban. Todo esto retrasó el arreglo de algo que en otras circunstancias no hubiera llevado más de media hora resolver.

¿Se podría haber evitado?

Sin saber los mecanismos internos de FB, es difícil dar una respuesta. Pero sí podemos dar algunos consejos para todos aquellos que dependen fuertemente de los servicios de un tercero para que su sitio web funcione:

  • No poner todos los huevos en la misma cesta. Es decir, no depender, si es posible, de un solo proveedor para prestar un servicio. Si puedes tener una alternativa a FB o Instagram tenla en cuenta a la hora de publicitar tu sitio web.
  • Si no hay alternativa, al menos diseña tu sitio para que en caso de fallo de un servicio de terceros no se quede completamente caído. Usa temporizadores que saquen las partes conflictivas del renderizado de la página hasta que se recupere la conexión, por ejemplo. En dinahosting podemos ayudarte.

Esperamos que te haya sido de utilidad. Te leemos en los comentarios.


Avatar de Lalo Pérez

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Newsletter

Suscríbete y recibe periódicamente consejos muy útiles para tu web y ecommerce 🙂 Además, te regalamos
3 guías
: Digitalización, WordPress y Ciberseguridad.

Conviértete en afiliado

Gana dinero recomendando dinahosting a todo el mundo.