شرح مفصل لبروتوكول التوجيه 'OSPF ' Open Short Path First

بروتوكول أل ( ospf ( Open Short Path First

معلومات عامة عن البروتوكول :

1- يعمل فى الطبقة الرابعة 
2- المسافة الإدارية "110"
3- يدعم التجزئة Classless
4- ستطيع أن يرسل البيانات traffic من خلال أكثر من مسار By default 4 path maximum path 6
5- لا يعمل على IPX أو AppleTalk 
6- يستخدم خوارزمية SPF لحساب أفضل مسار
7- Has Unlimited hop count 


• بروتوكول أل ospf بروتوكول حالة الارتباط سريع جدا فى الاستجابة أذا حدث تغيير معين فى الشبكة مثال انقطاع وصلة او سلك يقوم بإرسال ما يسمى Link – state advertisement (LSA) خاصة بهذا التغيير الى جميع الجيران neighbors وكل راوتر يستلم هذا الإعلان يقوم برسالة الى الآخرين داخل ال Area الخاصة بهي فقط . ثم تقوم الروترات بتحديث أل Link State Database (LSDB) 

• كل LSA يأخذ رقم متسلسل كم 0x80000001 الى 0x7FFFFFFF

• بعد وصول المعلومات من الجيران يقوم بروتوكول ال ospf باختيار أفضل مسار ويستخدم خوارزمية SPF

• يجب أن لا يزيد عدد الجيران عن 60 روتر فقط

• (LSU) Link State Update هي عبارة عن تحديثات يرسلها الروتر تحتوي على واحد LSA أو أكثر

• ospf Packet Types 
1- تقوم بإرسال رسالة ترحيب Hello Packet 

2- Database Description ترسل لوصف جزء او كل LSDB لأحد الروترات

3- Link – State Request تحتوي على بيانات عن أل LSA التي يطلب روتر معين الحصول عليها

4- Link – State Update تحتوي على LSA او مجموعه منها

5- Link – State Acknowledgement ترسل لتأكيد استلام أنواع الباكيت المختلفة إلى المرسل

أنواع الشبكات فى بروتوكول أل ospf 


1- شبكة الوصول المتعدد مع بث Broadcast multi access "Ethernet" تقوم بإرسال أل Hello Packet كل 10 S وال Dead Time "40S"

2- شبكة نقطة الى نقطة PPP

3- الوصول المتعدد بدون بث None Broadcast multi access مثل ال Frame Relay ترسل رسالة ترحيب كل "30 S" dead time "120 S"

• فى هذا البروتوكول تتم علمية مثل عملية انتخابات ويسمى أيضا بالبروتوكول الديمقراطي حيث يتم انتخاب رئيس للشبكة ونائب للرئيس فى هذه الشبكة وتتم هذه الانتخابات على أسس وقواعد ويسمى الرئيس فى بروتوكول أل ospf DR والنائب عنه BDR

• DR يجب أن يكون مجاور لجميع الروترات الموجودة معه فى نفس أل Area ترسل معلومات حالة الارتباط Link State إلى الروتر الرئيسي عن طريقي أل Multicast 224.0.0.6 
• يقوم ال DR بإعادة ارسال هذه التحديثات الخاصة فى حالة الارتباط الى جميع الروترات الأخرى عن طريق Unicast 224.0.0.5

• لشرح هذا الكلام ببساطة إذا حدث عند احد الروترات الموجودة فى الشبكة مشكلة سيقوم بإرسال LSA فقط إلى ال DR وال BDR ثم سيقوم الرئيس أل DR بإعادة إرسالها الى باقي الروترات المجاورة له
• فى شبكة من نقطة الى نقطة توجد عقدتان فقط ولا يتم اختيار ال DR او ال BDR


طريقة انتخاب راوتر ال DR وراوتر ال BDR

1- أولا تقوم الروترات جميعها بالنظر الى الأولوية Priority وتأتي فى جميع الروترات Default Priority "1" ونستطيع تغيرها وهوا عبارة عن رقم يبدأ من 0 الى 255 الروتر الذي سيأخذ رقم 0 لن يدخل هذه الانتخابات أبدا ويتم اختيار أعلا قيمة سيكون DR والأقل منه سيكون BDR

2- إذا كانت أل Priority الأولوية متساوية فأنة سينظر الى أل Router ID وهو اسم المعرف الخاص بالرواتر ف التعامل مع بقية الروترات فى الشبكة ولا ينفع أن يتكرر هذا الرقم لأكثر من روتر فى نفس ال Area ويتكون من 23 Bits نفس صيغة IPV4 ويتم اختياره من خلال الأتي 

1- من خلال كتابته مباشرتا من الأمر (config-if)router-id (ip address) ولكن ماذا لو لم نكتب هذا الأمر !!
2- سيتم اختيار اعلي loopback ip address وإذا لم يجد أل loopback
3- سيتم استخدام اعلا IP موجود على Physical interface في الروتر

3- ماذا يحدث أذا تم الانتهاء من اختيار أل DR&BDR فى الشبكة وظهر روتر له Priority أعلى من الموجود لدى أل DR&BDR 
لن يحدث شيء فالحقيقة أن الانتخابات هنا مرة واحدة فى العمر حتى لو توقف ال DR فأن ال BDR تلقائي سوف يستلم مكانه 

• يستخدم بروتوكول أل ospf مفهوم المناطق Area وأرقام هذه المناطق لها نوعا 

<0-4294967295> ospf area ID as a decimal value
A.B.C.D ospf area ID in IP address format
• لكي يقوم بروتوكول بمعرفة أفضل مسار عليه أن يقوم بعملية حسابية تسمى حساب التكلفة Cost وتكون عن طريق 10 أس 8 تقسيم ( عرض النطاق الترددي للواجهة )


• أل WildCard mask 

هو عباره عن قناع الشبكة ولكن بطريقة اخرى فنحن عندما نقوم بتكوين ال RIP على أي راوتر سنقوم بكتابة الامر التالي لأدخال أي شبكة (config-router)#network 192.168.1.0 255.255.255.0 ال WildCard mask يختلف عنه قليلا عند ادخلا الشبكات المتصلة فية اتصالا مباشر نقوم بالتالى :

• على سبيل المثال لدي شبكة عنوانها 192.168.1.0\24 فـأنا سنقوم بالتالي نأخذ قناع الشبكة لعنوان الشبكة التالي 255.255.255.0 ونقوم بطرحه من 255.255.255.255 فسيكون الناتج 0.0.0.255

• مثال أخر عنوان شبكة 192.168.10.0/26 قناع الشبكة سيكون 255.255.255.192 نقوم بطرحة من 255.255.255.255 سيكون الناتج 0.0.0.63 وهكذا
• فعند كتابة الشبكات المتصلة اتصال مباشر فى الروتر نقوم بإدخال عنوان الشبكة كالتالي المختصر المفيد بروتوكول ospfconfig -router)#network 192.168.10.0 0.0.0.63 area 0






• طريقة تكوين بروتوكول (OSPF)
المختصر المفيد بروتوكول ospf


GAZA1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - ospf inter area
N1 - ospf NSSA external type 1, N2 - ospf NSSA external type 2
E1 - ospf external type 1, E2 - ospf external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route


Gateway of last resort is not set


192.168.1.0/26 is subnetted, 1 subnets
C 192.168.1.128 is directly connected, FastEthernet0/0
192.168.15.0/30 is subnetted, 1 subnets
C 192.168.15.0 is directly connected, Serial2/0
GAZA1#config t
Enter configuration commands, one per line. End with CNTL/Z.
GAZA1 (config)#router ospf 1
GAZA1 (config-router)#network 192.168.1.128 0.0.0.63 area 0
GAZA1 (config-router)#networl 192.168.15.0 0.0.0.3 area 

GAZA2#show ip route 
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - ospf inter area
N1 - ospf NSSA external type 1, N2 - ospf NSSA external type 2
E1 - ospf external type 1, E2 - ospf external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route


Gateway of last resort is not set


C 192.168.0.0/24 is directly connected, FastEthernet0/0
192.168.15.0/30 is subnetted, 1 subnets
C 192.168.15.0 is directly connected, Serial2/0
GAZA2#config t
Enter configuration commands, one per line. End with CNTL/Z.
GAZA2 (config)#router ospf 1
GAZA2 (config-router)#network 192.168.0.0 0.0.0.255 area 0
GAZA2 (config-router)#network 192.168.15.0 0.0.0.3 area 0