سنتناول في هذا المقال كيفيّة ضبط بروتوكول RIP، وهو من بروتوكولات متّجه المسافة، على موجّهات Cisco. سنحلّل هذا البروتوكول اعتمادًا على ثلاثة عوامل:
- استكشاف الموجّهات للشبكات الأخرى،
- الحصول على معلومات عن الشبكة،
- تعامل البروتوكول مع التغييرات في مخطَّط الشبكة.
نظرة عامّة على بروتوكول RIP
العامل الأوّل الذي سندرُس من خلاله بروتوكول RIP هو كيف يستكشف كلّ موجّه بقيّة الموجِّهات الموجودة معه في الشبكة. تعتمد الموجِّهات التي تستخدم بروتوكولات متّجه المسافة - مثل RIP - على الموجِّهات المجاورة لتخبرها بالاتجاه الذي يجب أخذه للوصول إلى الوجهة، والمسافة معها. أي أن موجِّهًا يستخدم بروتوكول RIP يخبرالموجِّهات المجاورة له بالوجهات التي لديه معلومات عنها، كما أنّه يتلقّى معلومات من الموجِّهات المجاورة له التي تستخدم نفس البروتوكول. يعني هذا أن التوجيه يعتمد على سلسلة من التفاعلات بين الموجِّهات.
إنْ حصل تغيير على وِجهة لا ترتبط مياشرةً بالموجِّه فسينتظر أن تصله التغييرات من الموجِّهات المجاورة له، والتي تنتظر أن تصلها التغييرات من الموجِّهات المجاورة لها، وهو ما يجعل اكتشاف التغييرات الحاصلة في الشبكة عمليّةً بطيئة، علاوة على أنها معلومات قد تكون من موجِّه ليس لديه اتّصال مباشر بمصدر التغيير، وهو ما يجعلها معلومات غير دقيقة. تتبادل الموجِّهات العاملة ببروتوكول RIP جداول التوجيه كاملةً مع الموجِّهات المجاورة لها، ممّا ينتُج عنه بطء في الأداء. يعتمد الإصدار الأوّل من RIP على إذاعة (Broadcast) هذه المعلومات على الشبكة، وهي طريقة أكثر بطئًا وأقل فاعليّة.
فيما يخصّ كيفية حصول بروتوكولات متجه المسافة على المعلومة، فإنّه توجد إشعارات دوريّة بجدول التوجيه كاملًا ترسلها الموجِّهات إلى الموجِّهات المتصلة بها مباشرة. بعضٌ من المسارات المُضمَّنة في جدول التوجيه المُرسَل قادمة من موجِّهات بعيدة، لذا فهي ليست شديدة الموثوقيّة. يوضّح الشكل أدناه سلسلة تفاعل بين ثلاثة موجِّهات A
، B
، وC
؛ وكيف يمكن للموجِّه A
الحصول على معلومات عن شبكات متّصلة بالموجِّه C
. تُتَبادل المعلومات دوريًّا، وتشمل جدول التوجيه بكامله، فحتى إنْ لم يحدُث أي تغيير فإنّ الموجّهات تستمرّ في إخبار جيرانها بالمعلومات نفسها.
أداء بروتوكول RIP
تميل مدة التقارب في بروتوكولات متجه المسافة - مثل RIP - إلى البطء، ممّا يعني أن الموجِّه سيستغرق وقتًا طويلًا حتى يعرف بوجود تغيير في الشبكة ويختار بالتالي مسارًا مختلفًا للرزم. قد تصل هذه المدة إلى دقائق، وهي مدة طويلة. نظرًا لطول مدّة التقارب فإنّ بروتوكوللات متجه المسافة عرضة لحلقات التوجيه (Routing loops) التي تحصُل عندما تستمر الرزم في الانتقال بين الموجِّهات نفسها، ضمن حلقة غير منتهية. يستخدم بروتكول RIP لمنع حدوث الحلقات غير المنتهية حدًّا أقصى لتكلفة المسار، وإذا تجاوزت الرزمة هذا الحد فإنّ الموجِّه يلغيها ولا يعيد توجيهها.
تُحسَب التكلفة بالاعتماد على عدد القفزات (الموجّهات) التي يتكوَّن منها المسار. تعدّ هذه الوسيلة غير فعّالة في حالة وجود مُخطَّط شبكة بمسارات مُكرَّرة توصِل إلى الوجهة نفسها. إذا افترضنا أنّ السرعة T1
في المُخطَّط أعلاه أكبر بكثير من 19.2
، فإنّ ذلك لن يشفع - عند استخدام RIP - للمسار الذي يمرّ عبر ثلاثة موجّهات رغم أنّه الأسرع، وسيُفضَّل عليه المسار الذي يمرّ على موجِّه واحد. يجعل هذا الأمر من RIP بروتوكولًا غير فعّال وغير مناسب للشبكات الكبيرة جدًّا، ينضاف إلى ذلك الإعلان عن المسارات بواسطة إشعارات دوريّة، ممّا يمثّل عبئًا إضافيّا.
موازنة بين الإصدارين الأول والثاني من بروتوكول RIP
أعدّ مصمّمو بروتوكول RIP إصدارًا ثانيًّا للتحسين من أداء البروتوكول. تضمّن الإصدار الثاني تحسينات من قبيل جعل البروتوكول عديم الفئة (Classless protocol)، وهو ما يعني أنه أصبح يدعم أقنعة شبكة بأحجام متغيّرة فغدت الإشعارات تتضمّن قناع الشبكة إضافة إلى عنوانها. يعني هذا أيضًا أن الإصدار الثاني من البروتوكول يمكنه تجميع المسارات. شملت التحسينات كذلك فاعليّة البروتوكول بحيث أصبحت الإشعارات تتمّ عن طريق بثّ بوِجهات محدَّدة (Multicast) بدلًا من بث إذاعي (Broadcast) شامل.
أُعدَّ الإصدار الثاني باحتساب أمان تبادل المعلومات، فأُضيف دعم الاستيثاق من موجِّه إلى موجِّه (Router-to-router authentication)، ما يعني أنّ الموجِّهات يمكن ألّا تتبادل المعلومات إلّا إذا كانت تتشارك مفتاحًا سرّيًّا خاصًّا. رغم ذلك، يبقى RIP بروتكول متّجه مسافة يعاني من مشاكل التقارب الطويل، وتعيقه الإشعارات الدوريّة وعدد القفزات المحدود.
ضبط توجيه رزم IP
من الأمور الجيّدة بخصوص بروتوكولات التوجيه أنّ إعدادها متجانس على موجّهات Cisco عمومًا، ويتبع الخطوات نفسها. تحتاج أولًا إلى اختيار بروتوكول التوجيه وتفعيله في وضع الضبط العامّ، ثم تحديد الشبكات التي تريد من هذا البروتوكول أن يعلن عنها، ويستقبل من خلالها إشعارات الموجِّهات المجاورة.
تؤدّي البروتوكولات عملها عبر إرسال إشعارات إلى بطاقات الشبكة المتّصلة، وتلقّي إشعارات بواسطتها، إلّا أنّ الإعداد يعتمد على عناوين الشبكات المضبوطة على بطاقات الشبكة في الموجِّه. يجب الانتباه إلى أنّ بعضًا من بروتوكولات التوجيه هي بروتوكولات ذات فئة (Classful) وبالتالي لن تفرّق بين الشبكات الفرعيّة.
ضبط إعدادات البروتوكول RIP
سنتعرّف من خلال هذه الفقرة على الأوامر الأساسيّة لضبط البروتوكول RIP على موجّهات Cisco. نبدأ بالأمر enable
للدخول في وضع المستخدم ذي الامتيازات المرتفعة، ثم الأمر config t
للدخول في وضع الإعداد العام. تبدأ عمليّة ضبط بروتوكول التوجيه بالأمر router
متبوعًا بالبروتوكول الذي نريد ضبطه، أي RIP في هذه الحالة.
RouterA>enable Password: RouterA# RouterA#conf t Enter configuration commands, one per line. End with CNTL/Z. RouterA(config)#router rip RouterA(config-router)#version 2 RouterA(config-router)#network 172.16.0.0 RouterA(config-router)#
نضبُط في السطر التالي الإصدار الذي نريد استخدامه، وهو الإصدار 2، الأحدث وعديم الفئة والأكثر فاعليّة. يعرّف الأمر network
الشبكات المتصلة مباشرة بالموجِّه المشاركة في عمل البروتوكول. على الرغم من أنّ الإصدار الثاني من بروتوكول RIP عديم الفئة، إلّا أنّ ضبطه يتبع آليات ضبط البروتوكولات ذات الفئة، وبالتالي فإنّ عنوان الشبكة الذي تحدّده هنا هو عنوان شامل، بدون أقنعة للشبكة. يأخذ RIP قناع الشبكة من إعداد البطاقة التي تتّصل بها الشبكة.
مثال على ضبط RIP
يتطلّب ضبط RIP النظر في بطاقات الشبكة على الموجِّه، وفهم معرِّفات الشبكات المتّصلة بتلك البطاقات أو الموكلة إليها، ثم تفعيل البروتوكول على الشبكات المذكورة. نأخذ المثال المُوضَّح في الصورة أدناه.
يتّصل الموجِّه A
في المثال بشبكتيْن عنوانيهما 10.0.0.0
و172.16.0.0
، ولذا نفعِّل البروتوكول على الشبكتيْن بالأمر network
.
RouterA# RouterA#conf t RouterA(config)#router rip RouterA(config-router)#version 2 RouterA(config-router)#network 172.16.0.0 RouterA(config-router)#network 10.0.0.0
بالنسبة للموجِّه B
فإنّ بطاقتيْ الشبكة اللتيْن يمتلكهما تتّصلان بشبكتيْن فرعيّتيْن تنتميان للشبكة الكبيرة 10.0.0.0
، لذا لا نحتاج لتفعيل RIP إلّا إلى الأمر network 10.0.0.0
الذي يُفعِّل البروتوكول على جميع البطاقات التي تنتمي للشبكة 10.0.0.0
، وهي في حالة الموجِّه B
بطاقتا الشبكة التسلسليّتان s0/0
وs0/1
.
RouterB# RouterB#conf t RouterB(config)#router rip RouterB(config-router)#version 2 RouterB(config-router)#network 10.0.0.0
تشبه إعدادات الموجِّه C
الموجِّه A
:
RouterC# RouterC#conf t RouterC(config)#router rip RouterC(config-router)#version 2 RouterC(config-router)#network 192.168.1.0 RouterC(config-router)#network 10.0.0.0
لو لم ننفّذ الأمر network 192.168.1.0
في الموجِّه C
فلن يُفعَّل البروتوكول على البطاقة fa0/0
ولن يستخدم الموجِّه C
بالتالي البروتوكول RIP لإشعار بقيّة الموجِّهات بمعرفته بمسار إلى الشبكة 192.168.1.0
.
نخلُص من هذا المثال إلى أنّ عمل الأمر network
يتمثّل في تفعيل البروتوكول على بطاقات الشبكة التي توافق عنوان الشبكة العامّة المذكور في الأمر.
التحقّق من إعدادات RIP
توجدة أوامر عدّة للتحقّق من الإعدادات، فإضافة إلى الأمر show running
يمكن عرض معلومات أكثر عن كيفيّة إعداد RIP باستخدام الأمر show ip protocols
. يُظهر الأمر معلومات عامّة عن المؤقِّتات (Timers) التي يستخدمها RIP ومرشحات (Filters) التوجيه في حال وجودها. تظهر في فقرة توجيهات الشبكة (Routing for networks) الشبكاتُ التي أعددت بروتوكول التوجيه للعمل عليها.
RouterA#show ip protocols Routing Protocol is "rip" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Sending updates every 30 seconds, next due in 15 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Redistributing: rip Default version control: send version 2, receive version 2 Interface Send Recv Triggered RIP Key-chain FastEthernet0/0 2 2 Serial0/0 2 2 Automatic network summarization is in effect Maximum path: 4 Routing for Networks: 10.0.0.0 172.16.0.0 Routing Information Sources: Gateway Distance Last Update 10.1.1.2 120 00:00:24 Distance: (default is 120)
تعني البيانات في نتيجة تطبيق الأمر show ip protocols
أعلاه على الموجِّه A
أنّنا استخدمنا أمريْ network
، واحد للشبكة 10.0.0.0
والآخر للشبكة 172.16.0.0
. يظهر تأثير الأمريْن في أنّ الموجِّه A
يستقبل ويُعلن عن مسارات RIP. نرى في نتيجة الأمر أنّ البطاقتيْن Fa0/0
وS0/0
اللتيْن تنتميان على التوالي للشبكتين 10.0.0.0
و172.16.0.0
أرسلتا إشعاريْ RIP واستقبلتا إشعاريْن كذلك.
عرض جدول التوجيه وتشخيص المشاكل
تكمن المهمّة الأساسيّة لأي بروتوكول توجيه في إنشاء جدول التوجيه وتحديث المعلومات المُدرَجة فيه، لذا فإنّ عرض الجدول خطوة أوليّة في التحقّق وتشخيص المشاكل. نستخدم الأمر show ip route
لعرض جدول التوجيه على الموجِّه A
فنحصُل على النتائج أدناه.
RouterA#show ip route Codes: C - connected, S - static, 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 i - IS-IS, su - IS-IS summary, 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 172.16.0.0/24 is subnetted, 1 subnets C 172.16.1.0 is directly connected, FastEthernet0/0 10.0.0.0/24 is subnetted, 2 subnets R 10.2.2.0 [120/1] via 10.1.1.2, 00:00:16, Serial0/0 C 10.1.1.0 is directly connected, Serial0/0 R 192.168.1.0/24 [120/2] via 10.1.1.2, 00:00:16, Serial0/0
تظهر في بداية مُخرجات الأمر الرموز المستخدَمة في جدول التوجيه، حيث يشير الحرف C
(الحرف الأول من Connected) إلى الشبكات المتّصلة مباشرة ببطاقات الموجِّه، والحرف R
إلى المسارات التي حصل عليها الموجِّه عن طريق البروتوكول RIP. يشير جدول التوجيه كذلك إلى المسافة الإداريّة وتكلفة الوصول إلى كلّ شبكة بين قوسيْن معقوفيْن حيث يعني السطر
R 10.2.2.0 [120/1] via 10.1.1.2, 00:00:16, Serial0/0
أنّ المسافة الإداريّة للبروتوكول RIP (الحرف R
) تساوي 120
(العدد الأول بين قوسيْن معقوفيْن) وأنّ تكلفة الوصول إلى الشبكة 10.1.1.2
عبر البطاقة Serial0/0
هي قفزة واحدة (العدد الثاني بين معكوفيْن). يقدِّم المؤقِّت 00:00:16
معلومات عن المدّة التي مرّت منذ آخر تحديث على المسار. يجب الانتباه إلى أنّ الموجِّه الذي يستخدم RIP يعلن دوريًّا (كل ثلاثين ثانيّة) عن المسارات التي بحوزته، وإنْ لم يحصُل دوريًّا على تحديث بخصوص المسارات التي تعرّف عليها عن طريق البروتوكول فإنّه سيعدّ الوجهة خارج مجال معرفته.
يمكن رؤية إشعارات RIP مباشرة أثناء عملها باستخدام debug ip rip
. يظهر في المثال أدناه أنّ الموجِّه A
يرسل إشعارات على بطاقتيْ الشبكة عبر بثّ إذاعي، كما أنّه يستقبل إشعارات من الموجِّه B
على البطاقة التسلسليّة عن الوِجهة 10.1.1.2
. تظهر مُخرجات المسارات في حالتيْ الإرسال والاستقبال، إضافة إلى كلفة الوصول إلى الوِجهة.
RouterA#deb ip rip RIP protocol debugging is on RouterA# 00:16:59.871: RIP: received v2 update from 10.1.1.2 on Serial0/0 00:16:59.875: 10.2.2.0/24 via 0.0.0.0 in 1 hops 00:16:59.875: 192.168.1.0/24 via 0.0.0.0 in 2 hops 00:17:00.747: RIP: sending v2 update to 224.0.0.9 via Serial0/0 (10.1.1.1) 00:17:00.747: RIP: build update entries 00:17:00.747: 172.16.0.0/16 via 0.0.0.0, metric 1, tag 0 00:17:22.779: RIP: sending v2 update to 224.0.0.9 via FastEthernet0/0 (172.16.1.1) 00:17:22.779: RIP: build update entries 00:17:22.779: 10.0.0.0/8 via 0.0.0.0, metric 1, tag 0 00:17:22.783: 192.168.1.0/24 via 0.0.0.0, metric 3, tag 0 00:17:28.907: RIP: received v2 update from 10.1.1.2 on Serial0/0 00:17:28.911: 10.2.2.0/24 via 0.0.0.0 in 1 hops 00:17:28.911: 192.168.1.0/24 via 0.0.0.0 in 2 hops RouterA#un all All possible debugging has been turned off RouterA#
يعدّ الأمرdebug ip rip
وسيلةً فعّالة للتحقّق ممّا إذا كانت الموجِّهات المجاورة تستخدم البروتوكول نفسه، وما إذا كانت تطبِّق مرشحات قد تتسبّب في حظر شبكات، كما أنّه يساعد في التحقّق من أخطاء إعداد بطاقات الشبكة.
ترجمة – بتصرّف – للمقال Configuring RIP
أفضل التعليقات
لا توجد أية تعليقات بعد
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.