ما سبب الانهيار في 30 أغسطس ، والذي انخفض خلاله حركة المرور العالمية بنسبة 3.5٪

حدث عطل الإنترنت العالمي بسبب خطأ المزود الأمريكي CenturyLink. بسبب التكوين غير الصحيح لجدار الحماية ، واجه المستخدمون في جميع أنحاء العالم مشاكل في الوصول إلى Google ، وخدمات Microsoft ، وخدمات Amazon السحابية ، وخدمة المدونات الصغيرة على Twitter ، و Discord ، وخدمات Electronic Arts ، و Blizzard ، و Steam ، وموقع Reddit والمزيد.







كان سبب الفشل هو أن CenturyLink ، بصفتها مزود المستوى 3 ، صاغت بشكل غير صحيح قاعدة BGPFlowspec في بروتوكول الأمان. يستخدم BGP Flowspec لإعادة توجيه حركة المرور ، لذلك أدى هذا الخطأ إلى مشاكل توجيه خطيرة داخل شبكة المزود ، مما أثر أيضًا على استقرار الإنترنت العالمي. بالطبع ، كان المستخدمون في الولايات المتحدة هم الأكثر تضررًا ، ولكن انعكس أصداء المشكلات في جميع أنحاء العالم.



من المهم أن نلاحظ أن CenturyLink هي ثالث أكبر شركة اتصالات في أمريكا ، خلف AT&T و Verizon.



BGP Flowspec من IETF هو RFC 5575 ويوصف على أنه امتداد متعدد البروتوكولات لـ BGP MP-BGP الذي يحتوي على إمكانية الوصول إلى معلومات طبقة الشبكة (NLRI) . BGP FlowSpec هي طريقة بديلة لإغراق مهاجمة حركة مرور DDoS من طريق ، والتي تعتبر طريقة أكثر دقة للتهرب من هجوم من RTBH (تصفية الثقب الأسود المشغل عن بُعد) ، عندما يتم حظر كل حركة المرور من عنوان الهجوم أو حركة المرور إلى عنوان الوجهة. بشكل عام ، يعتبر RTBH "سلاح يوم القيامة" وهو الملاذ الأخير لإيقاف الهجوم ، حيث يتيح استخدامه غالبًا للمهاجم تحقيق ما يريده ، أي عزل أحد العناوين.



يعد BGP FlowSpec أكثر دقة وهو في الأساس مرشح جدار حماية يتم إدراجه في BGP لتصفية منافذ وبروتوكولات محددة وتحديد حركة المرور التي تمر في أي مسار. وبالتالي ، تنتقل حركة المرور "البيضاء" إلى عنوان الوجهة ، وتُعرَّف على أنها DDoS - يتم إسقاطها من المسار. يتم تحليل حركة المرور من خلال 12 معلمة NLRI على الأقل:



  1. بادئة الوجهة. يحدد بادئة الوجهة للمباراة.
  2. بادئة المصدر. يحدد البادئة الأصلية.
  3. بروتوكول IP. يحتوي على مجموعة من أزواج {عامل ، قيمة} التي يتم استخدامها لتعيين بايت قيمة IP في حزم IP.
  4. ميناء. يحدد ما إذا كانت الحزم ستتم معالجتها بواسطة TCP أو UDP أو كليهما.
  5. . , FlowSpec.
  6. . , FlowSpec.
  7. ICMP.
  8. ICMP.
  9. TCP.
  10. . IP- ( 2, IP-).
  11. DSCP. Class Of Service flag.
  12. Fragment Encoding


لا توجد تقارير أعطال كاملة من CenturyLink بأنفسهم ، فهم يذكرون فقط مركز البيانات الخاص بهم بالقرب من أونتاريو. ومع ذلك ، كان فشل التوجيه خطيرًا بما يكفي لملاحظة ليس فقط من قبل المستخدمين العاديين ، ولكن أيضًا من قِبل مهندسي CloudFlare ، الذين يستخدمون أيضًا خدمات CenturyLink كمزود كبير. بدأ كل شيء بارتفاع 522 خطأ في الساعة 10:03 صباحًا بتوقيت جرينتش في 30 أغسطس ،



وفقًا لتقرير CloudFlare .







على سبيل المثال ، كان نظام إعادة التوجيه التلقائي للفشل قادرًا على تقليل عدد الأخطاء وتقليلها إلى 25٪ من قيمة الذروة ، لكن المشكلات المتعلقة باتصال الشبكة وتوافر الموارد لا تزال مستمرة وذات طبيعة عالمية. تم كل هذا في نافذة بين الساعة 10:03 صباحًا في بداية الانهيار وحتى الساعة 10:11 صباحًا بالتوقيت العالمي المنسق. خلال هذه الدقائق الثماني ، قام الأتمتة والمهندسون بفصل البنية التحتية الخاصة بهم عن CenturyLink في 48 (!) مدينة في أمريكا الشمالية وأعادوا توجيه حركة المرور إلى القنوات الاحتياطية لمزودي الخدمات الآخرين.



من الواضح أن هذا لم يتم فقط في CloudFlare. ومع ذلك ، فإن هذا لم يحل المشكلة تمامًا. من أجل الوضوح ، ما هو تأثير المزود الإشكالي على سوق الاتصالات في الولايات المتحدة وكندا ، قدم مهندسو الشركة خريطة رسمية لتوافر خدمات CenturyLink:







في الولايات المتحدة ، يتم استخدام المزود من قبل 49 مليون شخص ، مما يعني أنه بالنسبة لبعض العملاء ، إذا تحدثنا عن تقرير CloudFlare ، وحتى عن مراكز البيانات بأكملها ، فإن CenturyLink هو المزود الوحيد المتاح.



نتيجة لذلك ، نظرًا للسقوط شبه الكامل لـ CenturyLink ، سجل متخصصو CloudFlare انخفاضًا بنسبة 3.5٪ في حركة مرور الإنترنت العالمية. هذا ما بدا عليه في الرسم البياني لمقدمي الخدمات الستة الرئيسيين الذين تعمل معهم الشركة. CenturyLink باللون الأحمر عليه.







يتضح حقيقة أن الفشل كان عالميًا ، وليس مجرد "مشكلة في مركز البيانات خارج أونتاريو" ، كما قال المزود نفسه ، من خلال حجم التحديثات على قواعد Flowspec. عادةً ما يبلغ حجم تحديثات تكوين BGP Flowspec حوالي 2 ميغا بايت ، لكن خبراء CloudFlare سجلوا تحديثات تكوين BGP حتى 26 ميغا بايت (!).







هذه التحديثات ، التي يتم توزيعها كل 15 دقيقة ، تشارك المعلومات مع المضيفين حول التغييرات في صحة المسار. يتيح لك هذا الاستجابة بمرونة لبعض المشكلات المحلية. تشير التحديثات الأكبر من 10 إلى 15 مرة عن المعتاد إلى أن شبكة الموفر بالكامل تقريبًا معطلة أو أن هناك مشكلات اتصال خطيرة للغاية.



تعتقد CloudFlare أن سبب الفشل كان قاعدة BGP Flowspec العالمية غير الصحيحة ، والتي تلقتها الغالبية العظمى من أجهزة التوجيه ، والتي دخلت بعد ذلك في إعادة تشغيل عكسي في محاولات لاستعادة الاتصال. يتناسب هذا مع صورة حادث استمر أكثر من 4 ساعات. كان ذلك عندما تسبب الحمل الزائد للذاكرة ووحدة المعالجة المركزية في أجهزة التوجيه في فقدان المهندسين للوصول عن بُعد إلى عدد من العقد وواجهات التحكم.



بالمناسبة ، هذه القصة ليست فريدة من نوعها. منذ أكثر من عام بقليل ، "توقف" الإنترنت في جميع أنحاء العالم بسبب خطأ CloudFlare أنفسهم وفشل DNS الخاص بهم ، بالإضافة إلى أن الشركة نفسها تذكر بصدق مشكلات مماثلة مع Flowspec منذ سبع سنوات ، وبعد ذلك تخلوا عن استخدامه.



All Articles