OSPF DR وBDR: الانتخاب يخص الواجهة
يمكن أن يكون الموجّه معيَّنًا على شبكته المحلية وعاديًّا على نفق. اقرأ الدور لكل مقطع، ثم تحقق من أن النفق يسلّم ما يحتاجه النموذج.
أدوار OSPF تتعلق بالواجهات لا بالهيكل. يمكن أن يكون الجهاز نفسه الموجّه المعيَّن على مقطع شبكته المحلية ولا شيء مميزًا على نفق، وهاتان الحقيقتان لا تتناقضان. قراءة الدور من الواجهة الخطأ هي السبب الأكثر شيوعًا لظهور الموزِّع كأنه مُعدّ بشكل خاطئ بينما يعمل تمامًا كما صُمم.
المقارنة التي تهم هي بين الأدوار على مقطع واحد والأدوار عبر الموجّه، وبين ما تفعله النسخة الاحتياطية وما لا تفعله.
انتخاب واحد لكل مقطع
ينتخب RFC 2328 موجّهًا معيَّنًا وموجّهًا معيَّنًا احتياطيًّا لكل شبكة بث أو NBMA، لا لكل موجّه ولا لكل منطقة. كل واجهة تشارك في مثل هذه الشبكة تُجري انتخابها الخاص بأولويتها الخاصة ومجموعة جيرانها الخاصة. يمكن لهيكل يحمل ثلاث واجهات كهذه أن يحمل ثلاثة أدوار مختلفة في آن واحد، ولهذا فإن القول إن الموزِّع هو DR قول ناقص حتى يُسمّى المقطع. اقرأ الدور من مخرجات الجيران الخاصة بتلك الواجهة.
واجهتان في المنطقة نفسها تظلان انتخابين. العضوية في المنطقة لا تدمجهما.
ما تفعله النسخة الاحتياطية وهي تنتظر
الموجّه المعيَّن الاحتياطي مجاور تمامًا للموجّهات على مقطعه ويبقي قاعدة بياناته متزامنة كي يتولى المهمة دون تكوين تجاور جديد. وما لا يفعله أثناء عمله كاحتياطي هو توليد network-LSA لتلك الشبكة، لأن الموجّه المعيَّن يملك ذلك. دور الفيضان لديه أضيق من دور الموجّه المعيَّن في بعض الخطوات، وهذا ليس مثل الصمت أو الخمول. ومعاملة النسخة الاحتياطية كموجّه لا يفعل شيئًا حتى الترقية تنتج تفسيرات واثقة جدًّا وخاطئة جدًّا.
السؤال المفيد ليس عمّا تمتنع عنه النسخة الاحتياطية، بل عمّا إذا كان المقطع قادرًا على تسليم حزم OSPF التي يتطلبها النموذج. وإذا عجز مشارك عن تبادلها مع الآخرين، فإن نتيجة الانتخاب عَرَضٌ من أعراض الوصول لا سببٌ له.
أي نموذج يستخدمه النفق فعليًّا
شبكات البث وNBMA تنتخب؛ أما شبكات نقطة إلى نقطة ونقطة إلى متعدد النقاط فلا تنتخب، لأنه لا يوجد مقطع مشترك تنتخب عليه. في طبقة فوقية بنمط hub-and-spoke يعتمد النموذج الفعلي على كيفية تهيئة واجهة النفق، فاقرأها قبل تفسير أي دور. والنفق الذي يسلك كأنه مقطع بث والنفق الذي يسلك كأنه مجموعة وصلات نقطة إلى نقطة ينتجان سلوك جيران مختلفًا تمامًا.
إذا أراد التصميم أن يحمل الموزِّع الدور المعيَّن، فيجب أن يدعم النموذج والوصول ذلك معًا. والموزِّع الذي لا يستطيع تبادل الحزم المطلوبة مع كل مشارك لن يصبح موجّهًا معيَّنًا نافعًا لمجرد أن أولويته عالية. تحقق من حالات الجيران ومن التسليم الأساسي أولًا، ثم قرر هل الدور خاطئ أم مجرد غير متوقع.
الأهلية لكل واجهة، والأسبقية ليست تلقائية
تُضبط الأولوية لكل واجهة، وأولوية بقيمة صفر تُخرج تلك الواجهة من الانتخابين معًا. وبين المشاركين المؤهلين يُحسم الفائز بالأولوية ثم بمعرِّف الموجّه، لكن موجّهًا وصل حديثًا بأولوية أعلى لا يزيح موجّهًا معيَّنًا قائمًا. هذا الانعدام للأسبقية مقصود، وهو يفاجئ من يتوقعون أن تفوز الأولوية الأعلى فورًا. وإذا كان على موجّه بعينه أن يحمل الدور، فخطِّط لترتيب الأحداث بدلًا من افتراض أن تغيير الإعداد يسري من تلقاء نفسه.
استثناء كل الفرعية دون توفير مشارك مؤهل آخر يعني أيضًا أنه قد لا تكون هناك نسخة احتياطية إطلاقًا.
قارن التفسيرين بصدق: دور قُرئ من المقطع الخطأ، أو مقطع لا يستطيع أعضاؤه الوصول إلى بعضهم. الأول سؤال تصميم والثاني سؤال تسليم، وواحد منهما فقط يُصلح بتعديل أولوية.