Das Unternehmen Cloudflare, ein Content Delivery Network für 27 Millionen Internetressourcen bereitstellt und 13 % des Traffics der 1000 größten Websites bedient, Details zu dem Vorfall, bei dem viele Segmente des Cloudflare-Netzwerks, einschließlich der für die Bereitstellung von Traffic nach London, Chicago, Los Angeles, Washington, Amsterdam, Paris, Moskau und Sankt Petersburg zuständigen, für 27 Minuten beeinträchtigt wurden. Das Problem wurde durch eine falsche Konfigurationsänderung an einem Router in Atlanta verursacht. Während des Vorfalls, der am 17. Juli von 21:12 bis 21:39 (UTC) stattfand, sank das Gesamttrafficvolumen im Cloudflare-Netzwerk um etwa 50%.
Während technischer Arbeiten, in dem Bestreben, einen Teil des Traffics von einem der Backbone-Netze abzuleiten, entfernten die Ingenieure eine Zeile im Einstellungsblock, der die Liste der über das Backbone empfangenen Routen definiert, die entsprechend einer angegebenen Präfixliste gefiltert werden sollten. Richtig wäre es gewesen, den gesamten Block zu deaktivieren, aber versehentlich wurde nur die Zeile mit der Präfixliste entfernt.
{master}[edit]
atl01# show | compare
[edit policy-options policy-statement 6-BBONE-OUT term 6-SITE-LOCAL from]
! inaktiv: prefix-list 6-SITE-LOCAL { … }
Inhalt des Blocks:
from {
prefix-list 6-SITE-LOCAL;
}
then {
local-preference 200;
community add SITE-LOCAL-ROUTE;
community add ATL01;
community add NORTH-AMERICA;
accept;
}
Durch das Entfernen der Bindung an die Präfixliste begann der verbleibende Teil des Blocks, auf alle Präfixe ausgedehnt zu werden, und der Router begann, alle seine BGP-Routen an Router anderer Backbone-Netze zu versenden. Ausgerechnet hatten die neuen Routen eine höhere Priorität (local-preference 200) im Vergleich zu der Priorität (100), die für andere Routen vom automatisierten Traffic-Optimierungssystem festgelegt wurde. Statt die Routing-Verbindung zum Backbone zu entfernen, kam es zu einem Leak höher priorisierter BGP-Routen, wodurch Traffic, der an andere Backbones gerichtet war, nach Atlanta umgeleitet wurde, was zu einer Überlastung des Routers und dem Zusammenbruch eines Teils des Netzwerks führte.
Um zukünftige Vorfälle dieser Art auszuschließen, sind am Montag mehrere Änderungen an den Cloudflare-Backbone-Einstellungen geplant. Für BGP-Sitzungen wird eine Begrenzung der maximalen Anzahl von Präfixen (maximum-prefix) hinzugefügt, die den betroffenen Backbone blockiert, falls zu viele Präfixe über ihn geleitet werden. Hätte dieses Limit früher hinzugefügt werden können, hätte das betrachtete Problem zur Abschaltung des Backbones in Atlanta geführt, aber nicht die gesamte Netzwerkleistung beeinträchtigt, da das Cloudflare-Netzwerk ausgelegt ist, um den Ausfall einzelner Backbones zu kompensieren. Von den bereits angenommenen Änderungen wird die Überprüfung der Prioritäten (local-preference) für lokale Routen erwähnt, die es einem Router nicht ermöglichen wird, den Datenverkehr in anderen Teilen des Netzwerks zu beeinflussen.
Quelle: opennet.ru
