توضح هذه الملاحظة الفنية مشكلة تتعلق بتكوين تجاور OSPF عند تكوين واجهات المتصل كإرتباطات من نقطة إلى نقطة.
لا توجد متطلبات خاصة لهذا المستند.
لا يقتصر هذا المستند على إصدارات برامج ومكونات مادية معينة.
للحصول على مزيد من المعلومات حول اصطلاحات المستندات، ارجع إلى اصطلاحات تلميحات Cisco التقنية.
يعد نوع شبكة OSPF على واجهة المعدل الأولي (PRI) وواجهة المعدل الأساسي (BRI) واجهات المتصل من نقطة إلى نقطة، مما يعني أن الواجهة لا يمكن أن تشكل تجاورا مع أكثر من جار واحد. توجد مشكلة شائعة عندما تحاول واجهات PRI أو BRI أو المتصل تكوين تجاور OSPF هي أن يتعثر المجاور في عملية Exstart/Exchange. دعونا ننظر إلى مثال.
باستخدام الأمر show ip ospf neighbor، يمكننا رؤية الدولة المجاورة عالقة في "exstart".
RTR-A# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 3.3.3.3 1 EXSTART/ - 00:00:37 3.3.3.3 Serial6/0:23 3.3.3.4 1 EXSTART/ - 00:00:39 3.3.3.4 Serial6/0:23 RTR-B# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 3.3.3.2 1 EXSTART/ - 00:00:36 3.3.3.2 BRI0 RTR-C# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 3.3.3.2 1 EXSTART/ - 00:00:35 3.3.3.2 BRI0
يوضح تكوين RTR-Bs نوع الشبكة من نقطة إلى نقطة:
RTR-B# show ip ospf interface bri0 BRI0 is up, line protocol is up (spoofing) Internet Address 3.3.3.3/24, Area 2 Process ID 1, Router ID 3.3.3.3, Network Type POINT_TO_POINT, Cost: 1562 Transmit Delay is 1 sec, State POINT_TO_POINT, Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Hello due in 00:00:06 Index 1/1, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 1, maximum is 1 Last flood scan time is 0 msec, maximum is 0 msec Neighbor Count is 1, Adjacent neighbor count is 0 Suppress hello for 0 neighbor(s)
يمكننا تصحيح هذه الحالة باستخدام الأمر debug ip ospf adj. لنلق نظرة على بعض المخرجات النموذجية التي تم أخذها أثناء تشغيل هذا الأمر على RTR-B في الشكل أعلاه:
1: Send DBD to 3.3.3.2 on BRI0 seq 0xB41 opt 0x42 flag 0x7 len 32 2: Rcv DBD from 3.3.3.2 on BRI0 seq 0x1D06 opt 0x42 flag 0x7 len 32 mtu 1500 state EXSTART 3: First DBD and we are not SLAVE 4: Rcv DBD from 3.3.3.2 on BRI0 seq 0xB41 opt 0x42 flag 0x2 len 92 mtu 1500 state EXSTART 5: NBR Negotiation Done. We are the MASTER 6: Send DBD to 3.3.3.2 on BRI0 seq 0xB42 opt 0x42 flag 0x3 len 92 7: Database request to 3.3.3.2 8: sent LS REQ packet to 3.3.3.2, length 12 9: Rcv DBD from 3.3.3.2 on BRI0 seq 0x250 opt 0x42 flag 0x7 len 32 mtu 1500 state EXCHANGE 10: EXCHANGE - inconsistent in MASTER/SLAVE 11: Bad seq received from 3.3.3.2 on BRI0 12: Send DBD to 3.3.3.2 on BRI0 seq 0x2441 opt 0x42 flag 0x7 len 32 13: Rcv DBD from 3.3.3.2 on BRI0 seq 0x152C opt 0x42 flag 0x2 len 92 mtu 1500 state EXSTART 14: Unrecognized dbd for EXSTART 15: Rcv DBD from 3.3.3.2 on BRI0 seq 0xB42 opt 0x42 flag 0x0 len 32 mtu 1500 state EXSTART 16: Unrecognized dbd for EXSTART
الأسطر 1 - 3: يرسل RTR-B أول DBD إلى 3.3.3.2 (RTR-A) مع seq 0xB41 ويستلم أول DBD من 3.3.3.2 (RTR-A) مع seq# 0x1D06. لا يزال التفاوض المجاور غير مكتمل.
الأسطر 4-6: يتلقى RTR-B ردا من 3.3.3.2 (RTR-A) يشير إلى أن RTR-A تلقى أول DBD من RTR-B. ونظرا لأن RTR-B لديه معرف الموجه الأعلى، فإن RTR-A ينتخب نفسه تابعا. بعد تلقي الإقرار من RTR-A، يعلن RTR-B أنه سيد الأمور ويرسل أول قاعدة بيانات ثنائية الفينيل تتضمن بيانات فيها. لاحظ الرقم التسلسلي، وهو 0xB42. بما أن RTR-B هو الأساسي، فإنه يمكن فقط زيادة رقم التسلسل.
البند 7: يطلب RTR-B بيانات من RTR-A لأن RTR-A أشار إلى أن لديه المزيد من البيانات لإرسالها (علامة معينة إلى 0x2 في آخر DBD تم تلقيها من RTR-A).
السطر 8: يرسل RTR-B حزمة طلب حالة إرتباط إلى 3.3.3.2 (RTR-A). هذا هو حزمة OSPF النوع 3. عادة ما يتم إرسال هذه الحزمة إلى عنوان IP الخاص بالجوار. في هذه الحالة، يكون عنوان IP الخاص بالجار هو معرف الموجه الخاص به.
الأسطر 9 - 11: يتلقى RTR-B ردا من Slave (RTR-A) برقم تسلسلي مختلف تماما وعلم 0x7، وهو علم Init. تم تصميم DBD هذا لموجه آخر (على الأرجح RTR-C)، ولكن RTR-B استلمه بشكل غير صحيح. يعلن RTR-B أن هناك أختلاف لأن علم 0x7 يعني أن العبد قد غير حالته إلى "رئيسي" عن طريق تعيين وحدة بت MS (رئيسي/تابع) أثناء تبادل التجاور. يشكو RTR-B أيضا من الرقم التسلسلي لأنه خارج الترتيب. يجب على العبد دائما ان يتبع رقم تسلسل السيد.
السطر 12: يعيد RTR-B تهيئة التجاور بإرسال أول DBD إلى 3.3.3.2 لإعادة إختيار الرئيس والتابع.
الأسطر 13-14: يتلقى RTR-B ديسيبل من 3.3.3.2 (RTR-A)، مما يشير إلى أنه عبد، دون الاعتراف بالرقم التسلسلي ل RTR-B. يعلن RTR-B أنه لا يتعرف على DBD هذا نظرا لأن التفاوض الرئيسي والعبد لم يكتمل بعد. تم تصميم حزمة DBD هذه لموجه آخر.
السطر 15: يتلقى RTR-B ردا من 3.3.3.2 (RTR-A) ل DBD القديم، ولكن الوقت متأخر جدا لأن RTR-B قد قام بالفعل بإعادة تهيئة عملية التجاور.
البند 16: فشل RTR-B في التعرف على هذا DBD لأنه خاص بتجاور "قديم"، والذي قام RTR-B بالفعل بتدميره.
وسوف تتكرر هذه العملية إلى ما لا نهاية.
وفقا للقسم 8.1 من RFC 2328 ، يرسل OSPF حزمة بث متعدد ل من نقطة إلى نقطة شبكة حتى بعد أن يحقق القارن حالة الاتجاهين. بما أن RTR-A يحاول تشكيل تجاور مع كلا من RTR-B و RTR-C، فإن RTR-B يستلم حزم DBD المخصصة ل RTR-C و RTR-C حزم DBD المخصصة ل RTR-B.
لحل هذه المشكلة، قم بتغيير نوع الشبكة على جميع الموجهات إلى نقطة إلى عدة نقاط. وهذا يغير سلوك OSPF لإرسال حزم البث الأحادي بعد حالة الاتجاهين. يتلقى RTR-B الآن الحزم الموجهة لنفسه فقط و RTR-C يستلم الحزم الموجهة لنفسه. يضمن تغيير نوع الشبكة بهذه الطريقة أن يشكل موجه OSPF التجاور على واجهة PRI أو BRI أو المتصل.
لتغيير نوع الشبكة، أدخل أوامر التكوين التالية، مع إنهاء كل سطر بالضغط على ENTER. سنغير RTR-B كمثال.
RTR-B# configure terminal RTR-B(config)# int bri 0 RTR-B(config-if)# ip ospf network point-to-multipoint RTR-B(config-if)# end
الآن إذا نظرنا إلى أوامر show ل RTR-B، فيمكننا التحقق من أن نوع الشبكة هو من نقطة إلى عدة نقاط وأن الحالة ممتلئة.
RTR-B# show ip ospf interface bri0 BRI0 is up, line protocol is up (spoofing) Internet Address 3.3.3.3/24, Area 2 Process ID 1, Router ID 3.3.3.3, Network Type POINT_TO_MULTIPOINT, Cost: 1562 Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT, Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5 Hello due in 00:00:16 Index 1/1, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 1, maximum is 1 Last flood scan time is 0 msec, maximum is 0 msec Neighbor Count is 1, Adjacent neighbor count is 1 Adjacent with neighbor 172.16.141.10 Suppress hello for 0 neighbor(s) RTR-B# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 172.16.141.10 1 FULL/ - 00:01:36 3.3.3.2 BRI0
المراجعة | تاريخ النشر | التعليقات |
---|---|---|
1.0 |
10-Aug-2005 |
الإصدار الأولي |