You are on page 1of 23

‫بروتوكول الــــ ‪ OSPF‬بإختصار‬

‫الــــ ‪ OSPF‬بيعتبر ‪ Link-State Protocol‬وده من بروتوكالت الـــ ‪ Routing‬المشهورة جدا‬


‫واللى بيقدر يكون عنده صورة كاملة من الـــ ‪ Topology‬من خالل إرسال الـــ ‪Hello message‬‬

‫الـــ ‪ OSPF‬يعتبر ‪Standard protocol‬‬


‫يعنى مش خاص بـــ ‪ Cisco‬ممكن يشتغل على‪ vendors‬تانية‬

‫الــــ ‪ administrative Distance‬بتساوى ‪110‬‬


‫الـــ ‪ OSPF‬بيشتغل فى‪Network layer‬‬

‫الــــ ‪ OSPF‬بيبعت الـــ ‪ Hello message‬كل ‪ 10‬ثوانى‬

‫الـــ ‪ OSPF‬بيدعم الــــ ‪Authentication‬‬

‫الـــ ‪ OSPF‬بيستخدم الـــ = ‪ Process ID‬عملية تنظيمية يعنى لو اختلف مش هيأثر على عكس‬
‫الـــــ ‪ EIGRP‬اللى كان بيستخدم‪Autonomous System‬‬

‫الـــ ‪ OSPF‬بيستخدم الــــ‪Area ID‬‬

‫الـــ ‪ OSPF‬بيبدأ من الــــ ‪ Area 0‬وتسمى بالــــ ‪Backbone Area‬‬

‫الــــ ‪ OSPF‬فيه ‪ 3‬جداول‬

‫الــــ ‪ Neighbor Table‬وده بيكون فيه ‪ list‬بالراوترات المجاورة‬

‫الــــ ‪ Topology Table‬أو ‪ LSDB‬وده بيكون فيه جميع المسارات‬

‫الـــ ‪ Routing Table‬وده بيكون فيه أفضل المسارات‬


‫إيه اللى بيميز الـــ ‪ OSPF‬؟‬

‫بيقدر يبنى الـــ ‪ Routing‬بسرعة‬


‫الترافيك قليل‬
‫لو فيه أكتر من ‪ AS‬هيقدر يتعامل معاهم‬
‫بيجيب المسارات على سرعة اللينكات‬

‫الفرق بين الـــ ‪ link-state‬و الــــ ‪ Distance vector‬؟‬

‫الـــــ ‪ link -state‬بيختار أفضل مسار بناء على حالة اللينك وسرعته لكن الـــ ‪Distance Vector‬‬
‫بيختار المسار األفضل بناء على عدد الروترات الموجود فى المسار بغض النظر بقى عن حالة اللينك‬
‫وده اللى بيعطى قوة للــــ ‪OSPF‬‬

‫طيب الـــ ‪ OSPF‬بيشتغل إزاى ؟‬

‫الروترات بتبدأ تبعت رسالة إسمها ‪ Hello‬ودى بيكون فيها بعض البيانات لكن مفهاش الـــ ‪Routing‬‬
‫‪table‬يعنى استكشاف للرواتر اللى فى نفس الــ ‪Area‬‬

‫كل روتر بناء على الـــ ‪ Hello message‬دى هياخد الـــ ‪ Routing table‬اللى عنده ويضعها فى‬
‫رسالة إسمها الــــ ‪LSA‬‬

‫الـــــ ‪ LSDB‬ودى المقصود بيها الداتا بيز بتاع الروتر واللى هيكون فيها الـــ ‪ LSA‬بتاع الروترات‬
‫التانية‬

‫بعد كده الـــ ‪ SPF Algorithm‬هيحول الداتا دى إلى ‪ Network Graph‬ويقدر يطلع الـــ‬
‫‪Routing table‬وبالتالى يقدر يحدد بعد كده الــــ أفضل مسار‬
‫فى الــــ ‪ OSPF‬الــــ ‪ Router ID‬بيتم اختياره من قبل أى روتر فى الـــ ‪ OSPF‬علشان أقدر‬
‫استخدمه فى اإلعالن أو التحديث أو حتى إنشاء العالقات وبيتم اإلختيار بـــ ‪ 3‬طرق ‪:‬‬

‫‪ -1‬إما إنى أحدده ‪Manual‬‬

‫‪ -2‬أو هيكون أعلى ‪Loopback‬‬

‫‪ -3‬أو أعلى ‪Physical Interface‬‬

‫الــــ ‪Designated Router‬‬

‫فى الشبكات اللى بتكون من نوع ‪ Broadcast‬الروترات هتعمل عملية انتخابات إلختيار الـــ ‪DR‬‬
‫وراوتر تانى هيكون ‪ BDR‬روتر احتياطى هيبدأ يعمل مهام الــ ‪ DR‬لو حصل ليه مشكلة‬

‫لكن فى شبكات الـــ ‪ Point-to-Point‬مش هيبقى فيه ‪ DR‬وال ‪BDR‬‬


‫الــــ ‪ Default‬بتكون قيمته ‪ 1‬لكن لو هنفترض إن القيمة صفر كده مش هيدخل فى اإلنتخابات اللى بتم‬
‫أساسا‬

‫األعلـــى فى الـــ ‪ priority‬هو الـــ ‪DR‬‬

‫تانى روتر هو الـــــ ‪BDR‬‬

‫الراوترات التانيـــة إسمها ‪DR other‬‬

‫الهدف من اإلنتخابات اللى بتحصل دى وتحديد الـــ ‪DR‬‬

‫عملية تقليل حجم المعلومات المتبادلة بين الروترات فى النوع ده من الشبكات وإنهم يتفقوا على نقطة‬
‫معينة تكون هى المسؤولة على استقبال أى إعالن هيتم أو تحديثه وبالتالى األداء فى الشبكة هيكون‬
‫سريع وعالى‬
‫بعد تحديد الـــ ‪ DR‬و الـــــ ‪ BDR‬و ‪ DR other‬هيبقى فيه عالقات بينهم‬

‫العالقة بين الروترات فى الـــ ‪: OSPF‬‬

‫بين الـــ ‪ DR other‬و الــــ ‪ DR‬بتكون عالقة ‪Adjacency‬‬

‫بين الـــ ‪ DR other‬و الـــ ‪ BDR‬أيضا بتكون عالقة ‪Adjacency‬‬

‫لكن بين الـــ ‪ DR other‬و الــــ ‪ DR other‬بتكون عالقة ‪Neighbor‬‬

‫طيب إزاى ‪ Neighbor Relationship‬فى الـــ ‪ OSPF‬بتتبنى أصال ؟‬


‫الحالة األولى بتكون ‪ Down‬ومش هيكون فيه أى عملية تبادل بين الروترات‬

‫لما الـــ ‪ OSPF‬هبدأ أفعله كده هتنقل للحالة التانية وهى الـــ ‪Initial State‬‬

‫بعد كده هتيجى المرحلة التالتة وهى الـــ ‪two-way‬‬


‫ودى معناها إن الروترات استلمت الـــ ‪Hello message‬‬
‫وهنا هتبدأ عملية الـــ ‪ election‬بين الروترات واختيار الـــ ‪ DR‬و ‪BDR‬‬

‫بعد كده هتيجى المرحلة الرابعة واللى بتكون ‪Exstart State‬‬


‫ودى اللى هيتم فيها تبادل الــ ‪ Database‬الخاصة بالمسارات الموجودة‬

‫بعد كده هتيجى المرحلة الخامسة وهى الـــ ‪Exchange State‬‬


‫ودى اللى هيتم فيها تبادل الـــ ‪SLA‬‬

‫يعنى الــ ‪ DR other‬هيرسلوا الـــ ‪ SLA‬للـــ ‪ DR‬و ‪BDR‬‬


‫والـــ ‪ BDR‬هيرسل الـــ ‪ SLA‬للـــ ‪DR‬‬
‫وكده يبقى الــــ ‪ DR‬عنده كل الـــ ‪Routing Table‬‬

‫بعد كده هتيجى مرحلة الـــ ‪ Loading‬ودى اللى هيقوم فيها الروتر بالتأكد من إن‬
‫المعلومات اللى عنده هى معلومات حديثة عن الشبكة ولو كانت المعلومات دى مش‬
‫موجوده عنده هيبعت لجاره ‪Link State Request‬‬

‫الجار هيستقبل الطلب وهيرسل التحديثات عن المعلومات المطلوبة وهيبعتها‬


‫وهيبقى نوع الــ ‪ packet‬المستخدمه ‪Link State update‬‬
‫لما الراوتر التانى يستقبل التحديثات هيرد بإرسال الـــ ‪Link State‬‬
‫‪Acknowledg‬‬

‫يعنى أفهم من كده إن أنوع الـــ ‪ packet‬فى الــ ‪ OSPF‬خمس أنواع ‪:‬‬

‫الـــ ‪ Hello packet‬ودى مسؤولة عن إستكشاف الجيران‬

‫الـــ ‪ DBD‬أو ‪ Database Description‬ودى للتأكد من إن قاعدة البيانات بين‬


‫الروترات فى نفس الـــ ‪ area‬ليها نفس قاعدة البيانات‬

‫الــــ ‪link state Request‬‬

‫الـــ ‪Link state update‬‬

‫الـــ ‪link state Acknowledge‬‬

‫طيب بالنسبة ألنواع الروترات فى الــ ‪ OSPF‬؟‬


‫عندى كذا نوع من الروترات‬

‫النوع األول الــــ ‪ Backbone Router‬ومن إسمه هعرف إنه اللى موجود فى‬
‫الـــ ‪ Area 0‬وممكن أقول عليه ‪Internal Router‬‬

‫فيه نوع تانى بسميه الــــ ‪ ABR‬وده روتر بيكون موجود على الحدود بيربط بين‬
‫الـــ ‪ Areas‬وبعضها‬

‫فيه نوع تالت بسميه الـــ ‪ ASBR‬وده الروتر اللى بيربط شبكة الـــ ‪ OSPF‬بشبكة‬
‫تانية خالص يعنى بيربط بين ‪ 2‬بروتوكول مختلف‬
‫أنواع الشبكات فى الـــ ‪ OSPF‬؟‬

‫عندى الــــ ‪Broadcast Networks‬‬


‫و الــــ ‪Point-to-Point Networks‬‬
‫و الــــ ‪Point-to-Multipoint Networks‬‬
‫و الــــ ‪Nonbroadcast Multi Access Networks‬‬

‫نيجى ألنواع الــــ ‪: Areas‬‬

‫النوع األول هو الــــ ‪ Backbone area‬وكلنا عارفينه‬

‫النوع التانى هو الـــ ‪ Stub Area‬ودى ‪ Area‬مش هتقدر تستقبل الشبكات‬


‫الخارجية وليست الداخلية يعنى لو حاجة جاية من الــــ ‪ EIGRP‬مثال‬
‫من الـــ ‪ External‬الــــ ‪ ABR‬بيحولها إلى‪Default Route‬‬

‫النوع التالت هو الــــ ‪Totally Stubby area‬‬


‫يعنى مش هتقدر تستقبل الشبكات الخارجية والداخلية يعنى لو عايز مثال ‪Area 1‬‬
‫متشوفشى اللى فى ‪ Area 0‬وال اللى فى ‪ Area 2‬بس ممكن توصلهم عادى‬
‫هحولها إلى ‪Totally Stubby area‬‬

‫النوع الرابع هو ‪ NSSA‬أو‪Not-so-stubby area‬‬


‫وفى النوع ده الروترات مش هتقدر تشوف الشبكات الداخلية فقط والخارجية هتقدر‬
‫تشوفها عادى‬
‫النوع الخامس هو الـــ‪Totally NSSA‬‬
‫فى النوع ده الراوترات هتكون قادرة تشوف الروترات الموجودة فى نفس الـــ‬
‫‪Area‬لكن مش هتقدر تشوف الشبكات فى الـــ ‪ Area‬التانية بس هتقدر تشوف‬
‫الشبكات الخارجية‬

‫نيجى بقي ألنواع الــــ ‪ LSA‬فى الـــ ‪: OSPF‬‬

‫النوع األول هو ‪LSA 1‬‬


‫وهيبقي فيه معلومات عن الـــ ‪interfaces‬‬
‫والــ ‪ links‬المتصل بيها كمان هيبقي فيه معلومات عن‬
‫‪ ip network‬و ‪ subnet mask‬و ‪cost‬‬

‫الـــ ‪ commands‬المستخدمه علشان تشوف ده ‪:‬‬

‫األول هتبقي معلومات خفيفة | ‪| show ip ospf database‬‬

‫علشان تعمل ‪ check‬كامل للـــ ‪LSA1‬‬


‫وتشوف بقي كل حاجة | ‪| show ip ospf database router‬‬

‫النوع التانى هو ‪LSA 2‬‬


‫ودى بتكون البيانات المرسلة من الـــ ‪ DR‬إلى الرواتر داخل نفس الـــ ‪Area‬‬
‫النوع التالت هو ‪LSA 3‬‬
‫وفى النوع ده الــــ ‪ ABR‬هيبعت الــــ ‪ update‬عن الشبكات من ‪ Area‬إلى‬
‫‪Area‬أخرى‬

‫النوع الرابع هو ‪LSA 4‬‬


‫وفى النوع ده الــــ ‪ ABR‬هيقوم بإنشائها ودى هيكون فيها بيانات عن الــــ ‪ASBR‬‬
‫يعنى الــــ ‪ ASBR‬هيقوم بإنشاء ‪ LSA 1‬ولما توصل للــــ ‪ ABR‬هيحولها هو إلى‬
‫‪LSA 4‬‬

‫النوع الخامس هو ‪LSA 5‬‬


‫وفى النوع ده الــــ ‪ ASBR‬هيقوم بإنشائه لعمل الــــ ‪Redistribution‬‬
‫داخل الــــ‪OSPF‬‬

‫النوع السادس هو الــــ ‪LSA 7‬‬


‫والنوع ده بيتم عن طريق الــــ ‪ ASBR‬برده عند ادخال مسارات من خارج‬
‫الــ ‪ OSPF‬وهذا يتم فقط عند وجود ) ‪( NSSA‬‬
‫مالحظات مهمة ‪:‬‬

‫إختالف مدة الــــ ‪ Hello interval‬هيوقعلك الــــ ‪neighbor‬‬


‫الــــ ‪ Default‬للــــ ‪ Hello‬بيكون ‪ 10‬ثوانى‬
‫الــــ ‪ Dead interval‬بيكون ‪ 40‬ثانية‬

‫يعنى فى الــ ‪ OSPF‬الــــ ‪ Timer Mismatch‬هيوقعلك الـــ ‪neighbor‬‬


‫وبالتالى مش هوصل لمرحلة الـــ ‪Full neighbor‬‬

‫علشان أعمل الموضوع ده ‪:‬‬


‫هدخل على الــــ ‪ interface‬وهكتب الــــ ‪command‬‬
‫‪Interface e0/0‬‬
‫‪ip ospf hello-interval …………..‬‬

‫لو وضعت القيمة مثال بــــ ‪ 2‬الطبيعى إن الــــ ‪ Dead interval‬هيبقى بـــــ ‪8‬‬

‫‪ -‬لو حصل إن فيه ‪ Duplicate‬فى الــــ ‪ Router ID‬مش هيبقى فيه‬


‫‪ neighbor‬يعنى لو عملت ‪ RID‬لروتر هو هو نفس الــــ ‪ RID‬لروتر تانى مش‬
‫هيبقي فيه ‪neighbor‬‬

‫‪ -‬لو عندى ‪ 2‬روتر الزم الــــ ‪ MTU‬تكون ‪ Match‬بينهم وإال الــــ ‪neighbor‬‬
‫مش هتوصل لمرحلة الــــ ‪ Full‬وهتقف عند مرحلة الــــ ‪Exchange‬‬
‫الــــ ‪ MTU‬اختصار لــــ ‪Maximum Transmission Unit‬‬
‫يعنى أقصى حجم للـــ ‪ packet‬الواحدة ممكن تخرج من الــــ ‪interface‬‬

‫الـــ ‪ Default‬بيكون ‪1500 bytes‬‬

‫لكن لو عندى ‪ packet‬مثال هتخرج من الـــ ‪ interface‬وحجمها يتخطى الـــ‬


‫‪ 1500‬الطبيعى إنها متخرجشى لكن ممكن يتعمل ‪ Fragmentation‬وبالتالى لو‬
‫حجم الـــ ‪ packet‬أكبر من ‪ 1500‬هتبدأ الـــ ‪ Packet‬تتكسر ألجزاء وتتبعت‬
‫بحيث القيمة متتخطاش ‪1500‬‬

‫تعديل الــــ ‪: MTU‬‬


‫هدخل على الــــ ‪ interface‬وهكتب الــــ ‪ ip mtu‬وأضع القيمة‬

‫بالنسبة للـــــ ‪ authentication‬عندى ‪ 3‬أنواع ‪:‬‬

‫النوع األول الـــ ‪ null‬يعنى مفيش‪authentication‬‬

‫النوع التانى ‪ authentication‬هيكون ‪ plain text‬لكن الــــ ‪ Traffic‬مش‬


‫هتتشفر وده بسميه‪Type 1‬‬

‫النوع الثالث ‪ MD5‬وده بسميه ‪Type 2‬‬

‫الــــ ‪ Configuration‬الخاص بالــــ ‪Authentication‬‬


‫إما هيكون على الــــ ‪ interface‬أو الــــ ‪Area‬‬
‫يعنى لو عاوز أعمل ‪ Authentication‬بين ‪ 2‬راوتر فقط‬
‫يبقى هيتعمل على الــــ ‪interface‬‬
‫لكن لو عاوز تعمل على الـــ ‪ Area‬كلها يبقى هنعمله على الــــ ‪Area‬‬

‫الــــ ‪ Configuration‬على الــــ ‪interface‬‬

‫هدخل على الـــــ ‪interface‬‬


‫وبعدين ‪ip ospf authentication message-digest‬‬
‫وبعدين ‪ip ospf message-digest-key 1 md5‬‬

‫كده عملته من نوع ‪MD5‬‬

‫الــــ ‪ Configuration‬على الــــ ‪Area‬‬

‫األول هكتب ‪router ospf 1‬‬


‫بعدين ‪area 0 authentication message-digest‬‬

‫مالحظة ‪:‬‬
‫لو هتعمل على الـــ ‪ Area‬مثال كلها ‪ authentication‬من نوع ‪plain Text‬‬
‫وعملت بين روتر وروتر فى نفس الـــ ‪Area authentication‬‬
‫على الـــ ‪ interface‬من نوع ‪MD5‬‬
‫الــــ ‪ interface‬هيكون ليه األولوية إنه يطبق الـــ ‪ authentication‬اللى بينهم‬
‫ومش هيطبق اللى جايله كــــ ‪plain Text‬‬
‫بالنسبة للـــــ ‪ filtering‬فى الــــ ‪: OSPF‬‬

‫الــــ ‪ filtering‬معناه إنى مش عايز مثال ‪ R6‬يعرف حاجة عن شبكة ‪ 50‬مثال‬

‫الــــ ‪ filtering‬بيتم على الــــ ‪ ABR‬أو ‪ASBR‬‬

‫فى مصطلحين الزم تاخد بالك منهم‬


‫الــــ ‪ intra Area‬وده معناه إنهم فى نفس الـــ‪Area‬‬

‫الــــ ‪ inter Area‬وده معناه إنهم موجودين فى ‪ Area‬مختلفة وبتكون موجودة فى‬
‫الـــ ‪ Routing Table‬برمز ‪IA‬‬
‫فى الـــ ‪ Topology‬ده‬

‫لو أنا عاوز مثال أمنع روتر رقم ‪ 6‬إنه يشوف شبكة ‪50‬‬

‫فكل اللى هعمله هاجى على الــــ ‪ ABR‬اللى هو رقم ‪ 5‬وهبدأ أنشئ ‪prefix list‬‬
‫وهعطى ليها إسم وهعطيها رقم وبعدين هعطى الـــ ‪ Action‬اللى أنا عاوزه وهضع‬
‫الشبكة اللى أنا عاوز أمنعها‬

‫وبعدين هعمل ‪ prefix list‬بنفس اإلسم لكن برقم مختلف والمرة دى هسمح لكل‬
‫الشبكات‬

‫طيب الـــ ‪command‬‬


‫‪ip prefix-list N50 seq 5 deny‬‬

‫الـــ ‪ prefix-list‬إسمها ‪N50‬‬

‫رقمها ‪5‬‬

‫الـــ ‪ Action‬هيبقى ‪deny‬‬

‫الشبكة اللى همنعها هتكون شبكة ‪50‬‬

‫‪ip prefix-list N50 seq 6 permit‬‬

‫وده علشان أسمح لباقى الشبكات‬

‫بعد كده هدخل جوه الــــ ‪Router ospf‬‬


‫وهبدأ أحدد اتجاهها‬

‫‪area 1 filter-list prefix N50 out‬‬

‫ده معناه متخرجشى من ‪area 1‬‬

‫طيب أنا عاوز أخليها ‪in‬‬

‫كده هعدل الـــ ‪ command‬وهيكون‬


‫‪area 0 filter-list prefix N50 in‬‬

‫يعنى متدخليش ‪Area 0‬‬

‫ملحوظة ‪:‬‬
‫كده ‪ R6‬مش هيشوف الشبكة وال الراوترات اللى فى نفس الـــ ‪ Area‬هتشوفها كمان‬
‫إلنى منعتها من المرور داخل الــــ ‪Area 0‬‬
‫الــــ‪Virtual link‬‬

‫كل مهندس شبكات عارف إن القاعدة فى الــــ ‪ OSPF‬بتقول ‪:‬‬


‫إن كل الــــ ‪ Areas‬الزم تكون ‪ connected‬بالــــ ‪Backbone Area‬‬
‫واللى هى ‪Area 0‬‬

‫لكن فرضا ولسبب ما إنك تعمل ‪ Area‬وتضع فيها روترات‬


‫وهى بعيد عن الـــ ‪ Backbone Area‬زى مثال إنك تفتح فرع تانى ويكون بعيد‬
‫جدا عن الـــ ‪ Backbone Area‬أو شركة مثال اشترت شركة تانية وعلشان‬
‫توصل مباشر بالـــ ‪ Backbone Area‬لقت التكلفة عالية جدا‬

‫هنا جات فكرة الــــ ‪ Virtual link‬وهى إنى أعمل ‪ Tunnel‬بين‬


‫الــــ الراوتر الواقع بين ‪ Area 0‬و ‪ Area 1‬اللى هو‪ABR‬‬
‫والــــ راوتر الواقع بين ‪ Area 1‬و‪Area 3‬‬

‫الــــ ‪ Virtual link‬ديما هيتم بالــــ ‪Router ID‬‬


‫يعنى الزم أعمل ‪ Router ID‬وبعد كده هبدأ أعمل ‪ Virtual link‬بينهم ولما‬
‫هيحصل بينهم كده أصبح اللى فى ‪ Area 3‬قادر يشوف اللى فى ‪ Area 0‬حتى لو‬
‫مفيش فيه ‪ connected‬مباشر‬
‫دمتم سالمين وبخير‬

You might also like