CCNAآموزش شبکه

آموزش CCNA : پروتکل مسیریابی RIP یا Routing Information Protocol چیست؟

آموزش سیسکو

ما در پستی که قبلا منتشر کرده بودم “آموزش CCNA : معرفی کامل روتینگ و Dynamic Routing” توضیح کاملی از Dynamic Routing ها داده ایم و حالا در این پست به صورت اختصاصی می خواهیم درباره پروتکل پروتکل مسیریابی RIP یا Routing Information Protocol صحبت کنیم.

پروتکل RIP به عنوان یک پروتکل Distance Vector دارای دو نسخه 1 و 2 می باشد که نسخه 1 آن منسوخ شده است. در اینجا می خواهیم با RIP v2 و مفاهیم آن آشنا شویم.

در ساختار این پروتکل، هر روتر جدول های روتینگ خود را به همسایه های خود ارسال می نماید. این ارسال شامل مسیرهایی است که خود روتر آنها را فراگرفته و مسیرهایی است که از همسایه های خود کسب کرده است.

نکات مهمی که درباره پروتکل ریپ باید بدانید:

  • بروزرسانی جدول روتینگ در RIP به صورت دوره ای با بازه زمانی 30 ثانیه انجام می شود.
  • مواردی که از یک روتر به روتر دیگر به عنوان Advertisement ارسال می شود شامل آدرس IP و Mask Address و Metric می باشد.
  • معیار انتخاب Metric در پروتکل های مختلف متفاوت است اما در تمام پروتکل ها Metric برتر Metric کمتر است و در صورت وجود چند مسیر با Metric یکسان، روتر عملیات Load Balancing را انجام می دهد.
  • معیار انتخاب Metric در پروتکل RIP را Hop Count می گویند به این مفهوم که تعداد روترهای موجود در مسیر مشخص کننده عدد Metric می باشد.
  • حداکثر تعداد Hop ها در پروتکل RIP فقط 15 می باشد، یعنی 15 روتر را می توان در پروتکل RIP به هم متصل کرد و Metric 16 دیگر استفاده نمی شود. به مقدار 16 برای یک Metric در پروتکل RIP مقدار Infinite می گویند.
  • آدرس IP های مقصد برای ارسال Route Update در پروتکل RIP به صورت Multicast می باشد.
  • پورتی که دریافت کننده Route Update می باشد به عنوان خروجی برای همان روت و آدرس IP مربوط به منبع ارسال کننده به عنوان Next Hop Address در جدول روتینگ پروتکل RIP قلمداد می شوند.
  • در این پروتکل 2 تایمر وجود دارد، یکی از آنها Hello Time می باشد که مدت زمان آن هر 30 ثانیه یکبار است و به جهت ارسال Route Update می باشد و تایمر بعدی Dead Time می باشد که مدت زمان آن هر 180 ثانیه یکبار می باشد و برای حذف یک آدرس از جدول روتینگ می باشد.

ویژگی های Loop Free در پروتکل RIP 

Route Poisoning : در شبکه هایی که از تعداد روترهای بالا برخوردار هستند و از پروتکل RIP بهره می برند، در صورتیکه نقطه انتهایی این مسیر قطع شود، به تعداد روترهای موجود در مسیر به دلیل مدت زمان Dead Time که 180 ثانیه است طول می کشد تا روتر ابتدایی از قطع شدن شبکه انتهایی با خبر شود که این مدت زمان ممکن است تا 45 دقیقه طول بکشد. به منظور رفع این مشکل در صورتیکه یک مسیر قطع شود، روتر با استفاده از ویژگی Route Poisoning به جای اینکه 180 ثانیه منتظر بماند تا اعلام قطعی یک شبکه را ارسال نماید، یک Advertisement با مقدار متریک 16 برای آن شبکه به روترهای دیگر ارسال می نماید، در این صورت وقفه ایجاد شده از 180 به 30 ثانیه برای روترها کاهش می یابد و چون Metric در این ارسال 16 قرار داده شده است، برای روترها به مفهوم عدم کارآیی آن می باشد.

Split Horizon : در شرایطی که ارتباطات روترها بر روی یک لینک قرار دارد، در صورتیکه شبکه یک روتر قطع شود براساس ویژگی Route Poisoning مقدار متریک 16 در 30 ثانیه بعدی برای روتر همسایه ارسال می شود، اما روتر همسایه تا قبل از دریافت این مقدار Metric خود را با یک عدد افزایش برای روتر همسایه خود ارسال می کند. اتفاقی که رخ می دهد این است که جدول روتینگ های این دو روتر به روزرسانی شده و این ارسال Route Update ها تا زمانی که هر دو روتر به Metric 16 توافق کنند ادامه می یابد. ویژگی Split Horizon که تقریبا در تمام پروتکل های روتینگ وجود دارد مانع از این کار می شود. براساس این ویژگی یک روتر حق ندارد یک مسیر یادگرفته از یک روتر دیگر را به همان روتر یاد دهد.

نکته: این ویژگی در مسیرهای Poisoned فعال نمی باشد. یعنی اگر مسیری را با Metric 16 فرا گیرد مجددا آنرا به تمام روترهای همسایه خود و همان روتری که این مسیر را برای این روتر ارسال کرده است ارسال می کند. دلیل این امر فراگیری سریع تمام روترهای مسیر از قطعی یک ارتباط می باشد.

Hold Down Timer : ویژگی Split Horizon برای مسیرهای Multi-Link به تنهایی پاسخگو نمی باشد دلیل آن نیز مدت زمان ثابت همگرایی روترها در 30 ثانیه می باشد. لذا ویژگی Hold Down Timer به کمک این ویژگی آمده است. در صورتیکه یک روتر یک مسیر را با Metric 16 دریافت کند، روتر را به Count Down Timer به مدت 180 ثانیه می برد و با دریافت Route Update ها برای آن مسیر اعلام شده از سویسایر روترها تغییرات را اعمال نمی کند تا این مدت زمان به پایان برسد. بنابراین در این مدت زمان در صورتیکه یک روتر اطلاعات روت اشتباه را در یک بازه 30 ثانیه ای ارسال کند، در بازه 30 ثانیه بعدی خود اطلاعات صحیح را به روتر ارسال می کند.

Triggered (Flash) Updates : روترها براساس ویژگی Route Poisoning مدت زمان ارسال قطع شبکه خود را از 180 ثانیه به 30 ثانیه کاهش دادند، اما باز این مدت زمان برای شبکه ای که مثلا 15 روتر درون خود دارد زیاد است. این ویژگی به روتر این امکان را می دهد که در صورت قطع شدن یک ارتباط در همان لحظه یک Route Update با مقدار Metric 16 برای روترهای دیگر ارسال نماید و بعدا در بازه زمانی 30 ثانیه های خود نیز این Update را برای روترها مجددا ارسال می نماید در نتیجه زمان تشخیص خطا در شبکه می تواند به صفر ثانیه کاهش یابد.

تفاوت ها و شباهت های RIP v1 و RIP v2 :

RIPVersions

ویژگی های Routing Information Protocol Version 1

  1. RIPv1 یک پروتکل مسیریابی Distance-Vector است.
  2. RIPv1 یک پروتکل مسیریابی Classful است. پروتکل های مسیریابی Classful فقط از شبکه هایی پشتیبانی می کنند که Subnet نشده اند. پروتکل های مسیریابی Classful اطلاعات مربوط به Subnet Mask را در Routing Update های خود ارسال نمی کنند. به زبان دیگر اگر شما شبکه ای دارید که در RIPv1 Routing Domain قرار دارد ، RIPv1 این شبکه را به عنوان شبکه Subnet نشده به سایر شبکه های موجود در Routing Domain معرفی می کند.
  3. RIPv1 از Variable Length Subnet Masking یا VLSM پشتیبانی نمی کند.
  4. RIPv1 حداکثر از Metric Value ی 15 پشتیبانی می کند یا به عبارتی فقط 15 عدد Hop Count را پشتیبانی می کند. اگر تعداد Hop Count ها بیشتر از عدد 15 شود RIPv1 این شبکه را به عنوان شبکه غیر قابل دسترس یا Unreachable در نظر می گیرد.
  5. RIPv1 توسط مکانیزم Broadcast بسته های بروزرسانی یا Routing Update را هر 30 ثانیه یکبار بصورت متناوب برای روترهای همسایه ارسال می کند. با توجه به اینکه بسته های بروز رسانی با استفاده از آدرس IP مقصد به شکل 255.255.255.255 یا همان Broadcast IP ارسال می شوند ، هر روتری که در مسیر است نیازمند پردازش پیام های دریافتی از این فرآیند و انجام Process های لازم برای تعیین اینکه روتر ارسال کننده از پروتکل RIPv1 استفاده کرده است یا خیر می باشد.
  6. RIPv1 برای ارسال پیام های بروز رسانی یا update message ها دارای مکانیزم احراز هویت نمی باشد.

ویژگی های Routing Information Protocol Version 2

  1. RIPv2 یک پروتکل مسیریابی از نوع Distance Vector یا Distance Vector Routing Protocol است.
  2. RIPv2 یک پروتکل مسیریابی Classless است که به شما اجازه می دهد که بتوانید از شبکه هایی که Subnet شده اند نیز در فرآیند مسیریابی استفاده کنید. همچنین RIPv2 اجازه ارسال شدن Network Mask شبکه را در بین شبکه ها می دهد تا فرآیند Classless Routing به درستی انجام شود.
  3. RIPv2 از Variable Length Subnet Masking یا VLSM پشتیبانی می کند.
  4. RIPv2 حداکثر از Metric Value ی 15 پشتیبانی می کند یا به عبارتی فقط 15 عدد Hop Count را پشتیبانی می کند. اگر تعداد Hop Count ها بیشتر از عدد 15 شود RIPv2 این شبکه را به عنوان شبکه غیر قابل دسترس یا Unreachable در نظر می گیرد.
  5. RIPv2 از Triggered Update پشتیبانی می کند یا به نوعی می توانیم بگوییم Incremental Update را پشتیبانی می کند.
  6. RIPv2 توسط مکانیزم Multicast به آدرس Multicast به شماره 224.0.0.9 بسته های Routing Update را به سایر روترهای موجود در مسیر منتقل می کند. بروز رسانی با استفاده از Multicast باعث کاهش ترافیک شبکه می شود. همچنین استفاده از این مکانیزم باعث کاهش Overhead روی روترهایی می شود که در Routing Domain قرار دارند. نکته قابل توجه در RIPv2 این است که فقط روترهایی که از RIPv2 پشتیبانی می کنند می توانند به Multicast Group 224.0.0.9 عضو شوند و سایر روترهایی که RIPv2 را ندارند تنها می توانند Routing Update ها را در لایه دوم فیلتر کنند.
  7. RIPv2 برای ارسال پیام های بروز رسانی یا update message ها دارای مکانیزم احراز هویت می باشد. مکانیزم احراز هویتی باعث می شود که روتر مطمئن باشد ترافیک Update های ورودی از منابع lمعتبری ارسال می شوند.

نکته: تفاوت Classless و Classful در این است که در Classless آدرس IP به همراه Mask آن ارسال می شود اما در Classful تنها آدرس IP ارسال می شود.

آشنایی با Auto Summarization در پروتکل های روتینگ : این ویژگی برای این منظور در پروتکل های روتینگ تعبیه شد تا بتواند مرز 2 Classful IP Address را شناسایی کند و جدول روتینگ را براساس این Classful آدرس ها ایجاد می کند، اما در بسیاری از موارد این ویژگی باعث ایجاد اشکال در شبکه می شود. فرض کنید شما 2 مرز متفاوت در شبکه خود دارید که در یک طرف شبکه از Network ID با آدرسی استفاده کرده اید که در مرز دیگر شبکه خود نیز همین Network ID اما با آدرس دهی متفاوت قرار دارد. اتفاقی که رخ می دهد این است که جدول روتینگ شما برای این دو مرز یک Classful آدرس را انتخاب می کند که شامل Network ID هر دو طرف می باشد و چون از دو سر با مقدار Metric برابر این آدرس را می بیند اقدام به ایجاد Load Balancing می کند و این عمل یعنی Drop شدن بسته ها یکی در میان و ایجاد اختلال در شبکه، بنابراین می بایست این ویژگی در پروتکل مدنظر غیرفعال شود.

نکته: ویژگی Auto Summarization در پروتکل های RIP v1 و IGRP به صورت پیش فرض فعال و غیرقابل تغییر می باشند اما در پروتکل های RIP v2 و EIGRP این ویژگی به صورت پیش فرض فعال و قابل تغییر می باشد. در پروتکل OSPF به صورت پیش فرض غیرفعال است.

VLSM – Variable Length Subnet Masking چیست؟

VLSM یکی از راهها و تکنیک های تقسیم بندی IP به range های کوچکتر با Subnet های متغیر است که با کمترین هدر رفت IP میتوان یک range بزرگ را به range های کوچکتر تقسیم نمود تا استفاده بهتری از شبکه ی خودمان داشته باشیم. پروتکل هایی که در زمره پروتکل های Classful قرار میگیرند یعنی پروتکل های RIP 1 و IGRP، از VLSM پشتیبانی نمی کنند. برای همین هم برای استفاده از مزیت هایی که VLSM ارائه می دهد نیاز به بکارگیری پروتکل های Classless مانند BGP، EIGRP، IS-IS، OSPF، RIP 2 داریم.

آموزش پیاده سازی Rip در سیسکو

سناریوی زیر رو در نظر داشته باشید تا آموزش پیاده سازی آن را توضیح دهیم

سناریو پروتکل Rip در سیسکو
سناریو پروتکل Rip در سیسکو

به منظور پیکربندی پروتکل RIP ابتدا باید این پروتکل در سطح روتر فعال شود و در گام بعدی باید Active Interface های روتر فعال شوند. فعال شدن این اینترفیس ها باعث می شود که آنها 3 کار زیر را انجام دهند:

ارسال Routing Updates
دریافت Routing Updates
ارسال Network ID خود
نکته: به صورت پیش فرض برای پروتکل RIP می بایست تمام پورتهای روتر را فعال نماییم مگر اینکه بخواهیم به صورت ترکیبی از پروتکل های متفاوت استفاده نماییم.

در زیر دستوراتی که برای اماده سازی روترها نیاز است را اورده ایم

R1(config)#interface fastEthernet 0/1
R1(config-if)#ip address 192.168.10.1 255.255.255.0
R1(config-if)#no shutdown

R1(config-if)#interface fastEthernet 0/0
R1(config-if)#ip address 192.168.20.1 255.255.255.0
R1(config-if)#no shutdown
…………………….
R2(config)#interface fastEthernet 0/0
R2(config-if)#ip address 192.168.20.2 255.255.255.0
R2(config-if)#no shutdown

R2(config-if)#interface fastEthernet 0/1
R2(config-if)#ip address 192.168.30.1 255.255.255.0
R2(config-if)#no shutdown
…………………….
R3(config)#interface fastEthernet 0/0
R3(config-if)#ip address 192.168.30.2 255.255.255.0
R3(config-if)#no shutdown

R3(config-if)#interface fastEthernet 0/1
R3(config-if)#ip address 192.168.40.1 255.255.255.0
R3(config-if)#no shutdown
…………………….
R4(config)#interface fastEthernet 0/0
R4(config-if)#ip address 192.168.40.2 255.255.255.0
R4(config-if)#no shutdown

R4(config-if)#interface fastEthernet 0/1
R4(config-if)#ip address 192.168.50.1 255.255.255.0
R4(config-if)#no shutdown

خوب حالا همه چی برای استفاده و تنظیمات Rip آماده است، با دستور زیر این پروتکل رو فعال میکنیم

R1(config)#router rip

و با دستور زیر تمام شبکه هایی که به روتر مورد نظر متصل هستن را وارد  میکنیم

R1(config-router)#network 192.168.10.0
R1(config-router)#network 192.168.20.0

پس با توصیحات بالا تنظیمات تک تک روتر های به شکل زیر می باشد

R1(config)#router rip
R1(config-router)#network 192.168.10.0
R1(config-router)#network 192.168.20.0

R2(config)#router rip
R2(config-router)#network 192.168.20.0
R2(config-router)#network 192.168.30.0

R3(config)#router rip
R3(config-router)#network 192.168.30.0
R3(config-router)#network 192.168.40.0

R4(config)#router rip
R4(config-router)#network 192.168.40.0
R4(config-router)#network 192.168.50.0

برای مشاهده وضعیت جدول روتینگ از دستورات زیر استفاده نمایید:

Router#show ip route
Router#show ip protocols

show ip route
show ip route
show ip protocols
show ip protocols

نکته ای که وجود دارد به صورت پیشفرض RIPv1 فعال می شود و برای فعال سازی RIPv2 باید بر روی هر روتر دستور زیر را وارد کنیم:

R1(config)#router rip
R1(config-router)#version 2

Summarizing زمانی استفاده میشود که بخواهیم مسیر ها را به صورت خلاصه به همسایه Advertise کنیم. برای مثال اگر ما 4 زیر شبکه مختلف داشته باشیم می توانیم به جای ارسال جدا هر 4 شبکه به همسایه از یک ادرس خلاصه شده با mask متفاوت استفاده کنیم. این کار باعث میشود که حجم Update کمتری بین روتر ها فرستاده شود و همچنین Routing table کوچک تر شود. به دو روش می توانیم این کار را انجام دهیم ، روش اول با محاسبه ,ادرس Mask جدید رو نوشته و با استفاده از دستور خاص هر پروتکل آن را به همسایه ارسال میکنیم. روش دوم Auto-summary هست که در این صورت Routing protocol مثلا دو آدرس را که در یک رنج قرار دارند را توسط یک آدرس و آن را به صورت Classful ارسال میکند و MAsk با آن ارسال نمی کند. در صورتی که لازم باشد Auto-summary را غیرفعال کنیم از دستور زیر استفاده میکنیم.

R1(config-router)#no auto-summary

 

Shares:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *