CCNAآموزش شبکه

آموزش CCNA : معرفی کامل روتینگ و Dynamic Routing

روتینگ و روتر چیست؟

روتینگ و Dynamic Routing – در پست های قبل بیشتر درباره سوئیچینگ (switching) صحبت کردیم ولی از این پست به بعد سعی میکنیم بیشتر درباره روتر (Router) ها و انواع روتینگ پروتکل (routing protocols) ها صحبت کنیم.

روتر (Router) چیست ؟

انواع روتر (Router) سیسکو
انواع روتر (Router) سیسکو

به صورت خلاصه روتر (Router) یک دستگاه الکترونیکی کوچک است که چندین شبکه کامپیوتری را از طریق اتصالات سیمی یا بدون سیم (wireless) به یکدیگر متصل می‌کند.

در اصطلاح فنی، روتر(Router) یک دستگاه دریچه شبکه 3 لایه است، به این معنی که روتر دو یا چند شبکه را به هم متصل کرده و در لایه شبکه مدل OSI عمل می‌کند.

روت (Route) چیست ؟

روت (Route) همان مسیر هایی است که بسته های اطلاعاتی شبکه از طریق آن منتقل می شوند.

روتینگ (Routing) چيست ؟

Dynamic Routing
Dynamic Routing

مسيريابي، عمليات انتقال اطلاعات از مبدأ به مقصد است. Routing معمولاً با Bridging مقايسه مي‌شود. اولين تفاوت اين است كه Bridging متعلق به Data Link Layer مي‌باشد. در صورتيكه Routing متعلق به Network Layer است. اين تفاوت باعث مي‌شود كه در فرآيند انتقال اطلاعات از اطلاعات متفاوتي استفاده شود.

تعریف روتینگ

از روتینگ به منظور دریافت یک بسته اطلاعاتی ( packet ) از یک دستگاه و ارسال آن از طریق شبکه برای دستگاهی دیگر و بر روی شبکه ای متفاوت ، استفاده می گردد . در صورتی که شبکه شما دارای روتر نباشد ، امکان روتینگ داده بین شبکه شما و سایر شبکه ها وجود نخواهد داشت. یک روتر به منظور مسیریابی یک بسته اطلاعاتی ، می بایست آگاهی لازم در خصوص اطلاعات زیر را داشته باشد :

  • آدرس مقصد (Source Address)
  • روترهای مجاور که با استفاده از آنان امکان اخذ اطلاعات لازم در خصوص راه دور، فراهم می گردد.
  • مسیرهای موجود به تمامی شبکه های از راه دور
  • بهترین مسیر به هر یک از شبکه های از راه دور
  • نحوه نگهداری و بررسی اطلاعات روتینگ.
روتینگ و روتر چیست؟
روتینگ و روتر چیست؟

همگرائی ( Convergence): فرآیند مورد نیاز برای تمامی روترهای موجود در یک شبکه به منظور بهنگام سازی جداول روتینگ و ایجاد یک نگرش سازگار از شبکه با استفاده از بهترین مسیرهای موجود، در زمان انجام فرایند فوق (همگرائی)، داده کاربر ارسال نخواهد شد.

مسیر پیش فرض (Default Route): یک مسیر استاندارد درج شده در جدول روتینگ که به عنوان اولین گزینه در نظر گرفته می شود. هر بسته اطلاعاتی که توسط یک دستگاه ارسال می گردد در ابتدا به مسیر پیش فرض ارسال خواهد شد، در صورتی که مسیر فوق مشکل داشته باشد، یک مسیر دیگر انتخاب می گردد.

مسیر ایستا (Static Route): یک مسیر دائم که به صورت دستی درون یک جدول روتینگ درج می گردد، مسیر فوق حتی در مواردیکه ارتباط غیر فعال است در جدول روتینگ باقی مانده و صرفا به صورت دستی حذف می گردد.

مسیر پویا (Dynamic Route): یک مسیر که به صورت پويا (اتوماتیک) و متناسب با تغییرات شبکه ، بهنگام می گردد، مسیرهای پویا نقطه مقابل مسیرهای ایستا می باشند.

Administrative Distance چیست؟

administrative distance

بیشتر پروتکل های مسیریابی برای خود یک ساختار Metric و الگوریتم خاص دارند که شاید اصلا با پروتکل های دیگر تناسبی نداشته باشد. در شبکه ای که از چندین پروتکل مسیریابی مختلف استفاده می شود ، تبادل اطلاعات در خصوص مسیرهای موجود و همچنین قابلیت تشخیص بهترین مسیر از بین چندین پروتکل مسیریابی موجود مهمترین اولویت است. Administrative Distance قابلیتی است که روترها با استفاده از آن می توانند بهترین مسیر در میان دو یا چندین شبکه ای که از پروتکل های مسیریابی مختلف استفاده می کنند برای رسیدن به یک مقصد مشخص را بیابند. Administrative Distance در واقع میزان reliability یا قابلیت اعتماد به یک پروتکل مسیریابی را تعیین می کند. هر یک از پروتکل های مسیریابی موجود با استفاده از مکانیزم Administrative Distance از نظر سطح reliability یا قابلیت اعتماد اولویت بندی می شوند و به هر کدام از آنها یک مقدار یا Value اختصاص پیدا می کند.

Router ها از کجا بهترین مسیر را پیدا می کنند؟

پارامتر Administrative Distance اولین شرطی است که یک Router زمانیکه دو پروتکل مسیریابی مختلف، اطلاعات مسیریابی مربوط به یک مقصد مشخص را ارائه می کنند، برای پیدا کردن بهترین مسیر از بین این دو یا چند پروتکل مسیریابی بررسی می کند. Administrative Distance در واقع معیاری برای درست بودن و موثق بودن مبدا اطلاعات مسیریابی می باشد، نکته مهم در Administrative Distance این است که Local Significance است یعنی اهمیت و معنی آن فقط روی همان روتر معتبر است و با Update شدن Routing به روترهای دیگر Advertise نمی شود. هر چقدر مقدار یا Value ای که به پروتکل در Administrative Distance داده می شود کمتر باشد به معنی این است که پروتکل مورد نظر قابل اعتماد تر است، برای مثال اگر یک روتر یک Route به یک شبکه مشخص دریافت کند که در آن هم پروتکل OSPF با Administrative Distance پیشفرض 110 وجود داشته باشد و هم IGRP با Administrative Distance پیشفرض 100 ، روتر مورد نظر ما مسیری که IGRP به آن معرفی می کند را به دلیل Reliability بیشتر انتخاب می کند و این بدین معناست که روتر نسخه Route مربوط به IGRP را در Routing Table خود اضافه می کند. اگر به هر دلیلی شما موفق به دریافت اطلاعات مربوط به IGRP نشدید ( مثلا روتر در آن لحظه خاموش شده باشد ) نرم افزار بصورت خود کار اطلاعات مربوط به مسیرهایی که OSPF ایجاد کرده است را استفاده می کند تا زمانیکه اطلاعات IGRP مجددا در دسترس باشند. مقادیری که به عنوان Value به پروتکل های مختلف بصورت پیشفرض داده می شود از عدد 0 تا 255 متغیر می باشد ، عدد 0 بالاترین اولویت و به معنای بالاترین Reliability و عدد 255 به معنای پایینترین حد Reliability می باشد.

جدول مقادیر پیشفرض Administrative Distance در پروتکل های مسیریابی

جدول زیر لیست مقادیر Administrative Distance های پیشفرض پروتکل هایی است که سیسکو از آنها پشتیبانی می کند:

Default Distance Value Table Cisco

جدول زیر لیست مقادیر Administrative Distance های پیشفرض پروتکل هایی است که میکروتیک از آنها پشتیبانی می کند:

Default Distance Value Table mikrotik

اگر Administrative Distance مقدار 255 باشد روتر مبداء ای که route از آنجا وارد شده است را باور نمی کند و در routing table خود این route را ایجاد نمی کند. اگر بخواهید اولویت های این پروتکل ها را در Administrative Distance ها تغییر دهید باید بصورت دستی مقادیر پیشفرض را عوض کنید. برای مثال اگر شما route هایی در شبکه ها دارید که از پروتکل RIP استفاده می کنند که دارای Administrative Distance پیشفرض 120 است و همزمان در شبکه ای دیگر از پروتکل IGRP استفاده می کنید که دارای Administrative Distance پیشفرض 100 است ، بصورت پیشفرض روتر نیز سعی می کند تمامی مسیرهای ممکن را از IGRP ها عبور دهد ، اگر می خواهید مسیر مورد نظر شما از RIP بگذرد باید یا بصورت دستی Administrative Distance مربوط به RIP را به زیر 100 کاهش دهید و یا Administrative Distance مربوط به IGRP را از 120 بالاتر ببرید تا این امکان برای شما فراهم شود.

شما می توانید در IOS سیسکو با استفاده از دستور distance در router process subconfiguration mode این مقادیر پیشفرض را براحتی تغییر دهید. با استفاده از این دستور شما براحتی نوع پروتکل و مقدار Administrative Distance آن را بصورت دستی تغییر می دهید، معمولا شما زمانی اینکار را انجام می دهید که قرار است از شبکه ای با یک نوع پروتکل مسیریابی به شبکه ای با پروتکل مسیریابی متفاوت مهاجرت کنید و نیاز دارید که پروتکل مسیریابی جدید دارای Administrative Distance بالاتری باشد. اما همیشه باید به این موضوع هم توجه کنید که تغییر دادن Administrative Distance ها می تواند باعث به وجود آمدن Routing Loop و Black Hole در ساختار Routing شما شود بنابراین در هنگام تغییر این مقادیر بسیار هوشیار و با دقت عمل کنید.

Dynamic Routing چیست و معرفی Link State و Distance Vector و Hybrid

Static routing این قابلیت را به مدیریت شبکه می دهد که بتواند بصورت دستی یک سری Route های خاص را در Routing Table روتر ایجاد کند. Dynamic Routing از پروتکل های مسیریابی یا Routing Protocol برای شناسایی شبکه ها و مقصدها و همچنین پیدا کردن بهترین مسیر برای رساندن بسته اطلاعاتی به مقصد استفاده می کنند.

Dynamic Routing این قابلیت را به Routing Table می دهد که بتواند زمانیکه یک Router خاموش است یا در دسترس نیست یا اینکه یک شبکه جدید به مجموعه اضافه می شود این تغییرات را در Routing Table ها اضافه کند. Dynamic Routing با استفاده از Routing Protocol ها این قابلیت را دارند که بصورت مستمر با شبکه تبادل اطلاعات داشته باشند و وضعیت هر یک از Router های شبکه را بررسی کنند و با استفاده از Broadcast و یا Multicast با هم ارتباط برقرار کنند و اطلاعات Routing Table را بروز کنند. با این روش همیشه توپولوژی شبکه بروز باقی می ماند و همگی دستگاه های روتر شبکه از آخرین Routing Table بروز استفاده می کنند. از پروتکل های Dynamic Routing می توان به Routing Information Protocol یا RIP ، Enhanced Interior Gateway Routing Protocol یا EIGRP و Open Shortest Path First یا OSPF اشاره کرد.

routing protocol

اما بصورت کلی ما Routing Protocol ها ره به سه دسته کلی تقسیم بندی می کنیم:

Routing Protocol های Distance-Vector : پروتکل های Distance Vector از معیار Hop Count یا تعداد روترهای مسیر برای Metric در Routing Table های خود استفاده می کنند. الگوریتم مورد استفاده در اینگونه از پروتکل ها بسیار ساده است و Routing Table با محاسبات ساده ریاضی ایجاد می شود. پروتکل های Distance Vector معمولا برای شبکه های کوچکی که کمتر از 16 عدد Router در آنها وجود دارد مورد استفاده قرار می گیرند در واقع این نوع پروتکل ها با کم کردن تعداد Router های مسیر از به وجود آمدن Loop در شبکه یا بهتر بگوییم Routing Loop در شبکه جلوگیری می کنند. این پروتکل ها در وهله های زمانی معین Routing Table های خود را با یکدیگر یکسان سازی می کنند ، یکی از مشکلات الگوریتم های Distance Vector در این است که کلیه اطلاعات موجود در Routing Table را حتی با کوچکترین تغییر برای سایر روترهای مجموعه ارسال می کنند و Incremental Update را در واقع پشتیبانی نمی کردند که در نسخه های جدید الگوریتم های Distance Vector این مشکل حل شد. الگوریتم های مسیریابی مثل RIPv1 و IGRP از این نوع Routing protocol ها هستند.

Routing Protocol های Link-State : در پروتکل های Routing ای که بصورت Link State کار می کنند تفاوت محسوسی با حالت Distanced Vector وجود دارد. الگوریتم های مورد استفاده در این نوع پروتکل ها نسبت به Distanced Vector ها کاملا متفاوت عمل می کند و دارای پیچیدگی های خاص خود می باشد، در این الگوریتم ها از فاکتورهایی مثل Hop Count ، فاصله ، سرعت لینک و ترافیک بصورت همزمان برای تعیین بهترین مسیر و بهترین cost برای انجام عملیات Routing استفاده می شود. آنها از الگوریتمی به نام Dijkstra برای تعیین پایینترین cost برای Route ها استفاده می کنند. روترهایی که از پروتکل های Link State استفاده می کنند فقط زمانی Routing Table های همدیگر را یکسان سازی می کنند که چیز جدیدی به Routing Table یکی از Router ها اضافه شده باشد. به همین دلیل هم کمترین ترافیک را در هنگام یکسان سازی Routing Table با همدیگر ایجاد می کنند. الگوریتم های مسیریابی مثل OSPF و IS-IS از این نوع پروتکل های Link State هستند.

Routing Protocol های Hybrid : همانطور که از نام این نوع پروتکل Routing نیز پیداست این نوع پروتکل ترکیبی از پروتکل های Distance Vector و Link State است و در واقع مزایای هر یک از این نوع پروتکل ها را در خود جای داده است. زمانیکه صحبت از قدرت پردازشی روترها می شود از قابلیت های Distance Vector ها (به دلیل پردازش کمتر) و زمانیکه صحبت از تبادل Routing Table ها در شبکه می باشد از قابلیت های Link State ها استفاده می کند. امروزه تقریبا همه شبکه های بزرگ در دنیا از پروتکل های Hybrid استفاده می کنند ، الگوریتم مسیریابی مثل EIGRP از انواع پروتکل های Hybrid Routing هستند.

معرفی پروتکل های روتینگ Distance Vector

همانطور که گفته شد پروتکل های مسیریابی به سه دسته Distance Vector و Link State و Hybrid تقسیم بندی می شوند ، در این نکته قصد داریم  پروتکل های مسیریابی یا روتینگ Distance Vector که ساده ترین نوع پروتکل های مسیریابی هستند را برای شما تشریح کنیم. همانطور که از نام اینگونه پروتکل ها نیز پیداست از دو فاکتور Distance یا مسافت و Vector یا جهت برای پیدا کردن مقصد استفاده می کنند. روترهایی که از پروتکل های مسیریابی Distance Vector استفاده می کنند به روترهای همسایه یا Neighbor های خود در خصوص توپولوژی شبکه و تغییراتی که در وهله های زمانی متفاوت انجام می شود اطلاع رسانی می کنند ، این اطلاع رسانی با استفاده از Broadcast انجام می شود و از آدرس IP ای به شکل 255.255.255.255برای اینکار استفاده می کند. پروتکل های Distance Vector از الگوریتم Bellman-Ford برای پیدا کردن بهترین مسیر برای رسیدن به مقصد استفاده می کنند. روترهای مورد استفاده در توپولوژی های Distance Vector برای اینکه از اطلاعات موجود در Routing Table های روترهای همسایه خود مطلع شوند بر روی Interface های خود درخواست را Broadcast می کنند ، همچنین این پروتکل ها برای Share کردن اطلاعات Routing Protocol خود نیز از ساختار Broadcasting استفاده می کنند.

Distance Vector و Link State و Hybrid

الگوریتم های Distance Vector تغییراتی که در Routing Table انجام می شود را بلافاصله برای روترهای همسایه خود در همه جهات ( روی همه Interface ) ارسال می کنند. با هر تبادلی که انجام می شود ، روتر Distance Value مربوط به Route دریافت شده را افزایش می دهد و Distance Value خودش را نیز بر روی Route های جدید قرار می دهد. روتری که این تغییرات یا Update ها را دریافت می کند نیز به همین ترتیب Route های خودشان را بر روی این Table قرار می دهند و برای روترهای باقی مانده ارسال می کنند ، این فرآیند به همین شکل ادامه پیدا می کند. پروتکل های Distance Vector به این موضوع توجه نمی کنند که چه کسی به Update هایی که ارسال می شوند گوش می کند ، جالب اینجاست بدانید پروتکل های Distance Vector حتی در صورتیکه هیچ تغییری در Routing Protocol خود نداشته باشند نیز بصورت متناوب Routing Table خود را Broadcast می کنند ، یعنی حتی اگر توپولوژی شبکه شما تغییر هم نکرده باشد Broadcasting انجام می شود.

پروتکل های Distance Vector ساده ترین نوع از پروتکل های مسیریابی یا Dynamic Routing هستند که در مجموعه سه تایی که عنوان شد قرار می گیرند. پیاده سازی و رفع ایراد این نوع از پروتکل ها بسیار ساده است ، همچنین روتر برای انجام فرآیند های پردازشی نیاز به منابع بسیار کمتری دارد. منطق کاری Distance Vector ها ساده است ، آنها Routing Update ها را دریافت می کنند ، مقدار Metric را افزایش می دهند ، نتایج را با مقدادیر موجود در Routing Table خود مقایسه می کنند و در صورت نیاز Routing Table را Update می کنند. پروتکل هایی مثل Routing Information Protocol یا RIP نسخه یک و Interior Gateway Routing Protocol یا IGRP از مهمترین و معروف ترین پروتکل های Dynamic Routing موجود در روترهای امروزی می باشند.

معرفی پروتکل های مسیریابی Link State

در اینجا قصد داریم به شما پروتکل های مسیریابی Link state را معرفی کنیم و تفاوت های آن با پروتکل های Distance Vector را نیز عنوان کنیم. پروتکل های Link State بر خلاف پروتکل های Distance Vector شبکه ها را در قالب Hop Count و تعداد روترهای موجود در آن نمی بینند در عوض یک دیدگاه جامع و کامل در خصوص توپولوژی های مورد استفاده در شبکه ایجاد می کنند که همه جزئیات شبکه های موجود در توپولوژی را در خود دارد ، تمامی روترها با Cost های آنها در این دید جامع و کامل وجود خواهند داشت.

Distance Vector و Link State و Hybrid

در پروتکل های Link State هر یک از روترهایی که از یکی از پروتکل های Link State استفاده می کند اطلاعات کاملی در خصوص خود روتر ، لینک های مستقیم متصل شده به آن و وضعیت آن لینک ها را در اختیار شبکه قرار می دهد. این اطلاعات توسط پیام های Multicast به همه روترهای موجود در شبکه ارسال می شود دقیقا بر خلاف پروتکل های مسیریابی Distance Vector که اینکار را به وسیله استفاده از فرآیند Broadcast انجام می دادند. فرآیند مسیریابی Link State به گونه ای است که با ایجاد شدن کوچکترین تغییری در توپولوژی شبکه های موجود بلافاصله این تغییر بصورت Incremental برای سایر روترها هم ارسال می شود تا توپولوژی شبکه روی همه روترها همیشه بروز باشد. هر کدام از روترهای موجود در شبکه های Link State یک کپی از این توپولوژی شبکه را در خود دارند و آن را تغییر نمی دهند ، بعد از اینکه آخرین تغییرات شبکه ها را دریافت کردند هر روتر بصورت کاملا مستقل به محاسبه بهترین مسیرها برای رسیدن به شبکه های مقصد می پردازد.

پروتکل های مسیریابی Link State بر اساس الگوریتمی به نام Shortest Path First یا SFP برای پیدا کردن بهترین مسیر برای رسیدن به مقصد پایه ریزی شده اند. نام دیگر این الگوریتم Dijkstra است. در الگوریتم Shortest Path First یا SPF زمانیکه وضعیت یک لینک ارتباطی تغییر می کند ، یک Routing Update که به عنوان Link-State Advertisement یا LSAشناخته می شود ایجاد می شود و بین تمامی روترهای موجود تبادل می شود. زمانیکه یک روتر LSA Routing Update را دریافت می کند ، الگوریتم Link-State با استفاده از آن کوتاه ترین مسیر را برای رسیدن به مقصد مورد نظر محاسبه می کند. هر روتر برای خود یک نقشه کامل از شبکه ها ایجاد می کند. نمونه ای از پروتکل مسیریابی Link-State پروتکل ای به نام Open Shortest Path First یا OSPF است. چند واژه مهم در خصوص پروتکل های Link State وجود دارد که بد نیست با آنها آشنا شوید:

  • Link-State Advertisement یا LSA : یک Packet کوچک اطلاعاتی است که در آن اطلاعات مربوط به Routing بین روترها رد و بدل می شود
  • Topological Database : مجموعه اطلاعاتی که از LSA ها دریافت می شود
  • الگوریتم SPF یا Dijkstra : الگوریتمی است که محاسبات بر روی database های موجود در SPF Tree را انجام می دهد
  • Routing Table : یک لیست از مسیرها و Interface های شناسایی شده است

پروتکل های مسیریابی Link State در عین اینکه به مدت زمان کمتری برای Converge شدن نسبت به پروتکل های مسیریابی Distance Vector برخوردارند در مقابل بوجود آمدن Routing Loop هم نسبت به Distance Vector ها مقاوم تر هستند و کمتر موردی پیش می آید که Routing Loop در پروتکل های Link State ایجاد شود. اما از طرفی دیگر الگوریتم های مورد استفاده در پروتکل های Link State به قدرت پردازشی CPU و حافظه RAM به نسبت پروتکل های Distance Vector نیاز دارند. پروتکل های Link State از یک ساختار سلسله مراتبی و موروثی استفاده می کنند که این ساختار باعث کاهش فاصله ها و نیاز کمتر به انتقال LSA ها می شود. پروتکل های Link State از مکانیزم Multicast برای اشتراک گذاری اطلاعات مسیریابی استفاده می کنند ، فقط روترهایی که از پروتکل های مسیریابی Link State استفاده می کنند این Routing Update ها را پردازش می کنند. Link State ها فقط زمانی اطلاعات روتر را ارسال می کنند که در شبکه تغییری ایجاد شده باشد و صرفا همان تغییر را برای سایر روترها ارسال می کنند ، پیاده سازی پروتکل های مسیریابی Link-State پیچیده تر و پر هزینه تر از پیاده سازی پروتکل های Distance Vector می باشد و هزینه نگهداری آنها نیز به نسبت بیشتر است.

پروتکل OSPF چیست و معرفی کامل ویژگی های OSPF

پروتکل OSPF چیست؟ در این بخش به توصیف پروتکل مسیریابی اولین کوتاهترین مسیر باز یا OSPF پشتیبانی شده توسط میکروتیک می پردازیم. OSPF پروتکل دروازه داخلی (IGP) است و اطلاعات مسیریابی را تنها بین روترهای متعلق به همان سیستم خودمختار (AS) توزیع می کند.

OSPF بر اساس تکنولوژی link-state است که مزایای متعددی نسبت به پروتکلهای distance-vector ، مانند RIP دارد:

  1. بدون محدودیت در تعداد هاب
  2. آدرس دهی چندپخشی که استفاده می شود برای ارسال آپدیت اطلاعات مسیریابی
  3. ارسال به آپدیت ها تنها زمانی که تغییرات توپولوژی شبکه رخ دهد
  4. تعریف منطقی از شبکه هایی که در آن روترها به مناطق تقسیم می شوند.
  5. انتقالات و برچسب زدن ها مسیرهای خارجی ختم شده به AS.

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

  1. OSPF حافظه و CPU زیاد استفاده می کند، که به دلیل استفاده از الگوریتم SPF و نگهداری نسخه های متعدد از اطلاعات مسیریابی است.
  2. پروتکل پیچیده تر برای پیاده سازی در مقایسه با RIP دارد.

router OS میکروتیک OSPF ورژن 2 و ورژن 3 را پیاده سازی می کند.

واژگان OSPF:

Neighbor: روتر (مجاور) متصل که در حال اجرا OSPF با رابط مجاور موجود در همان ناحیه. همسایگان توسط بسته سلام پیدا می شوند.

Adjacency: ارتباط منطقی بین روتر و DR و BDR مربوط به آن. بدون رد و بدل اطلاعات مسیر یابی مگر اینکه یال تشکیل شده باشند.

Link: لینک به یک رابط شبکه یا روتر اشاره دارد.

Interface: رابط فیزیکی بر روی روتر. زمانی که هر رابط به OSPF اضافه می شود، رابط به عنوان لینک در نظر گرفته شده است، مورد استفاده برای ایجاد پایگاه داده لینک.

LSA یا Link State Advertisement: بسته داده شامل link-state و اطلاعات مسیریابی، که در میان همسایه های Neighbor OSPF به اشتراک گذاشته می شود.

هر روتر برای هر Area یک دیتابیس تحت عنوان (link-state database (LSDB ایجاد می کند که حاوی اخرین LSA دریافتی می باشد. در تعریف دیگر OSPF با کمک LSA از توپولوژی شبکه آگاه می شود و دیتابیس خود را براساس آن می سازد.

عملکرد LSA:

هر LSA دارای یک شماره و یک طول عمر است که به طور پیش فرض 30 دقیقه می باشد. زمانی که یک LSA دریافت می شود با دیتابیس LSDB مقایسه می شود. اگر LSA جدید بود به دیتابیس اضافه می شود و الگوریتم SPF اجرا می شود. اگر LSA از یک Router ID که قبلا در دیتابیس موجود است باشد Sequence Number آن مقایسه می شود و اگر قدیمتر بود از آن صرفه نظر می شود. اگر LSA قدیمی تر باشد LSA جدیدتر که در حافظه موجود است برای فرستنده LSA ارسال می شود. Sequence Number داری حجم 32 بیت می باشد. اولین مقدار Sequence Number برابر 0x80000001 می باشد. Sequence Number به یکی از دو دلیل زیر تغییر می کند:

  1. زمانی که یک Route اضافه یا حذف می شود.
  2. طول عمر LSA تمام شود.

DR: روتر منتخب، روتر منتخب برای به حداقل رساندن تعداد یال های متشکل. گزینه ای که در شبکه های پخش (broadcast) استفاده می شود.

نکته: در شبکه های point to point ما نیازی به DR نداریم و عملا هیچ DR و یا BDR وجود ندارد.

نکته: DR و BDR فقط در محیط های multi access که چند روتر به هم وصل هستن وجود دارد، در چنین شبکه هایی ما یک DR یک BDR داریم و باقی روتر ها DRother نام دارند.

نکته: DR و BDR هر دو peer interface هستن نه peer router

DR and BDR in a network
DR and BDR in a network

BDR: روتر منتخب جانشین یا backup ، آماده به کار به جای همان DR ، BDR تمام به روز رسانی مسیر یابی از روترهای مجاور دریافت می کند، اما شامل به روز رسانی LSA نیست.

پروتکل OSPF چیست ؟
DR OSPF

Area: محیط هایی که برای ایجاد یک شبکه سلسله مراتبی است استفاده می شود.

پروتکل OSPF چیست

ABR: یا (Area Border Router)، روترهای که به دو یا چند Area متصل باشند در شکل پایین روترهای ABR نمایش داده شده است. ABRها مرز ارسال LSA را مشخص می کنند و می توانند Summarization را برای ما انجام دهند و یا به عنوان Default Route معرفی شوند. این روترها برای هر Area که به آن متصل است یک دیتابیس ایجاد می کند. در واقع ABR ها Area مختلف را به یکدیگر متصل می کنند.

پروتکل OSPF چیست

ASBR: روتر مرزی سیستم خودمختار (Autonomous System Boundary Router)، این روترها از یک سمت به شبکه OSPF و از طرف دیگر به شبکه دیگر متصل است در شکل بالا روتر ASBR مشخص شده است. چون از یک سمت به شبکه OSPF و از سمت دیگر به یک شبکه غیر OSPF متصل است. ASBR وظیفه اتصال شبکه OSPF را به دیگر شبکه های دارد.

نکته: یک روتر می تواند چند نقش داشته باشد.

ABR OSPF
ABR OSPF

NBMA: چند دسترسی بدون broadcast یا (Non-broadcast multi-access)،این شبکه اجازه multi-access دارد اما قابلیت broadcast ندارد. در این شبکه ها امکان استفاده از OSPF وجود دارد، اما تنظیمات همسایگی اضافی مورد نیاز است.

Non-broadcast multi-access
NBMA_OSPF

Broadcast: شبکه ای که اجازه broadcasting را می دهد، برای مثال اترنت.

Point-to-point: یک نوع شبکه که نیازش به DR ها یا BDR ها رفع شده است.

Router-ID: آدرس IP مورد استفاده برای شناسایی روتر OSPF. اگر OSPF Router-ID به صورت دستی تنظیم نشود، روتر یکی از آدرسهای IP اختصاص داده شده به روتر را به عنوان آن Router-ID استفاده می کند.

هر روتر در OSPF یک شناسه 32 بیتی دارد که به یکی از روش های زیر قابل مشخص شدن است:

  • توسط دستور تعیین شود.
  • بزرگترین یا کوچکترین (بسته به سازنده روتر شما) اینترفیس Loop Back روتر به عنوان RID در نظر گرفته می شود.
  • بزرگترین یا کوچکترین (بسته به سازنده روتر شما) اینترفیس را در نظر می گیرد (اینترفیس باید در حالت up باشد).

نکته: اگر RID را بعد از فعال شدن OSPF تغییر دهیم همان RID قبلی استفاده می شود مگر اینکه پروسه OSPF را Reset کنیم.

نکته: بهتر است که RID را براساس مقادیری تعیین کنیم که نشان دهنده آن روتر باشد تا در زمان های مانیتورینگ و خطایابی با استفاده از این RID متوجه شویم که منظور کدام روتر است.

Link state: کلمه ی Link state به وضعیت یک لینک بین دو روتر اشاره دارد. LS رابطه بین رابط یک روتر و روتر همسایه آن را تعیین می کند.

Cost: پروتکل های Link state یک مقدار را به هر لینک به نام Cost اختصاص می دهند . مقدار cost به سرعت media بستگی دارد. cost به خارج از هر رابط روتر مربوط است. این است که به عنوان هزینه رابط خروجی (interface output cost) نامیده می شود.

Autonomous System: یک Autonomous System گروهی از روترها است که از یک پروتکل مسیریابی مشترک برای تبادل اطلاعات مسیریابی استفاده می کند.

همه این واژگان برای درک این عملیات از OSPF مهم هستند و آنها در طول مقاله استفاده می شود.

عملکرد OSPF:

OSPF یک پروتکل link-state است. رابط روتر OSPF link and state را از تمام لینک هایی که در پایگاه داده link-state ذخیره می شود در نظر می گیرد.

پروتکل های مسیریابی link-state در حال توزیع، تکرار پایگاه داده هستند که توپولوژی مسیریابی را توصیف می کند. هر روتر در دامنه مسیریابی توپولوژی مسیریابی محلی را پیدا می کند و این اطلاعات را از طریق LSAها می فرستد. LSAs به تمام روترهای دیگر در دامنه مسیریابی ارسال می شود (flooding) و هر روتر پایگاه داده ی link-state را از LSAs دریافتی تولید می کند. الگوریتم ارسال پروتکل link-state تضمین می کند که هر روتر پایگاه داده دارای link-state یکسان است. هر روتر جدول مسیریابی را بر اساس این پایگاه داده link-state محاسبه می کند.

انواع LSA در OSPF:

انواع LSA در OSPF

Type1: یا Router LSA همه ی روتر های یک ناحیه این نوع داده را ارسال می کنند. شامل لیستی از لینک های متصل شده مستقیم است. از ABR یا ASBR عبور نمی کند. این LSA را همه روتر های OSPF دارد.

انواع LSA در OSPF - Type1

Type2: یا Network LSA برای شبکه های ترانزیت در یک area تولید شده است. شبکه ترانزیت حداقل دارای دو روتر OSPF به طور مستقیم متصل شده است. اترنت یک مثال از یک شبکه ترانزیت است. نوع 2 LSA هر یک از روترهای متصل شده را لیست می کند. که شبکه حمل و نقل را تشکیل می دهند و توسط DR ساخته می شود.

انواع LSA در OSPF - Type2

Type3: یا Summary LSA توسط ABR ایجاد می شود. نوع 3 LSAبه هر یک از شبکه های متعلق به یک area اعلان می شود و به بقیه area های دیگر در OSPF AS ارسال می شود، به طور پیش فرض OSPF ، LSA های نوع 3 را برای هر زیر شبکه ای که در area مبدا تعریف شده است، اعلان می کند. که می تواند باعث ایجاد مشکلاتی شود، بنابراین این یک ایده خوب برای استفاده از خلاصه سازی دستی در ABR است.

انواع LSA در OSPF - Type3

Type4: یا ASBR-Summary LSA این ASBR address را اعلام می کند، این آدرس نشان می دهد ASBR در کجا واقع شده است، اعلام آدرس در عوض جدول مسیریابی. ASBR توسط ABR ساخته می شود.

انواع LSA در OSPF - Type4

Type5: یا External LSA توسط ASBR ایجاد می شود. External LSAs به تمام area ها به جز Stub areas ارسال می شود. این LSAs به دو نوع خارجی نوع 1 و خارجی نوع 2 تقسیم می شود. یعنی تمام روت هایی تبدیل شدن امدن داخل OSPF از این نوع می باشد.

انواع LSA در OSPF - Type5

Type6: یا Group Membership LSA این نوع برای گسترش چندپخشی (Multicast extensions) به OSPF تعریف شده است و توسط RouterOS استفاده نمی شود.

Type7: در NSSA area برای اعلام مسیرهای خارجی وارد شده به ABR ها از type 7 LSA استفاده می شود. سپس ABR این LSA ها را به نوع 5 تبدیل و به صورت عادی به سایر نقاط شبکه OSPF ارسال می کند.

انواع LSA در OSPF - Type7

Type8: یا Link-local only LSA for OSPFv3

نکته: توجه کنید که اگر ما هیچ ASBR نداشته باشیم، هیچ نوع LSA نوع 4 و 5 در شبکه وجود ندارد.

با نگاهی به پایگاه link-state هر روتر دامنه مسیریابی می داند که چه تعدادی از روترهای دیگر در شبکه موجود است، چه تعدادی رابط های روترها موجود است، چه لینک شبکه ای بین روتر ها برقرار است و میزان cost هر لینک و غیره.

type 1 – (Router LSA) Sent by routers within the Area, including the list of directly attached links. Does not cross the ABR or ASBR.
type 2 – (Network LSA) Generated for every “transit network” within an area. A transit network has at least two directly attached OSPF routers. Ethernet is an example of a Transit Network. A Type 2 LSA lists each of the attached routers that make up the transit network and is generated by the DR.
type 3 – (Summary LSA) The ABR sends Type 3 Summary LSAs. A Type 3 LSA advertises any networks owned by an area to the rest of the areas in the OSPF AS. By default, OSPF advertises Type 3 LSAs for every subnet defined in the originating area, which can cause flooding problems, so it´s a good idea to use a manual summarization at the ABR.
type 4 – (ASBR-Summary LSA) It announces the ASBR address, it shows “where” the ASBR is located, announcing it´s address instead of it´s routing table.
type 5 – (External LSA) Announces the Routes learned through the ASBR. External LSAs are flooded to all areas except Stub areas. These LSAs divides in two types: external type 1 and external type2.
type 6 – (Group Membership LSA) This was defined for Multicast extensions to OSPF and is not used by ROuterOS.
type 7 – type 7 LSAs are used to tell the ABRs about these external routes imorted in NSSA area. Area Border Router then translates these LSAs to type 5 external LSAs and floods as normal to the rest of the OSPF network
type 8 – (Link-local only LSA for OSPFv3)
type 9 
type 10 
type 11 

 ساختار OSPF

مجموعه روترهایی که OSPF را اجرا می کند به بخش هایی تحت عنوان Area تقسیم می شوند. یک شبکه OSPF باید یک Area 0 داشته باشد و علاوه بر آن Area 0 می تواند Area های دیگری نیز داشته باشد. الگوریتم SPF در هر Area اجرا می شود و همچنین Route های ناحیه ای بین Area ها ردوبدل می شوند.

در OSPF دو سطح وجود دارد:

  1. Area 0 که به عنوان ناحیه انتقال طراحی شده است و Area های دیگر به آن متصل می شوند.
  2. Area ها دیگر باید به صورت مستقیم به Area 0 متصل شوند و از طریق Area 0 به دیگر Area ها دسترسی پیدا می کنند.

در هر Area روترها باید دیتابیس یکسانی داشته باشند. به طور معمول هر Area حداکثر 50 تا 100 روتر می تواند داشته باشد. که به شرایط شبکه بستگی دارد. در شکل زیر یک شبکه که شامل 6 روتر است را به ما نشان می دهد و این 6 روتر در سه ناحیه ، Area 0 , Area 1 , Area 2 قرار گرفته اند.

ساختار OSPF

شبکه OSPF را به چند ناحیه تقسیم کردن مزایای زیر را به همراه دارد:

  1. به حداقل رساند تعداد رکوردهای جدول مسیریابی
  2. کنترل شدن ارسال LSA در هر ناحیه
  3. به حداقل رساندن تاثیر تغییرات در شبکه
  4. اجرای مدل سلسه مراتبی در طراحی شبکه

انواع Areaهای موجود:

ساختار OSPF

Backbone Area: همان Area 0 است که تمام Area ها دیگر باید به آن متصل شوند یا حداقل یک اینترفیس در Area 0 داشته باشد.

Regular area:ءArea های غیر Area 0 که دیتابیس آنها شما هر دو مسیرهای داخلی و خارجی است.

Stub area: دیتابیس این Area ها که فقط شامل مسیرهای داخلی و یک Default Route می باشد.

Totally Stubby Area: اختصاصی شرکت سیسکو می باشد و دیتابیس آن شامل Route های Area خودش و یک Default Route می باشد.

(Not-so-stubby area (NSSA: دیتابیس آن شامل Routeهای داخلی و مسیرهای Redistributed شده و Default Route می باشد.

Totally NSSA: اختصاصی شرکت سیسکو است دیتابیس آن شامل Route های Area خودش و مسیرهای Redistributed شده و Default Route می باشد.

ساختار OSPF - پروتکل OSPF چیست

ساختار OSPF - پروتکل OSPF چیست

نقش های که روتر در OSPF می تواند داشته باشد:

نقش های که روتر در OSPF می تواند داشته باشد

Internal Router: یک روتر داخلی تمام اینترفیس ها آن در یک Area قرار دارد در شبکه بالا روتر های 1 و 3 و 5 به عنوان روتر داخلی محسوب می شوند.

Backbone Router: روتر Backbone حداقل یک اینترفیس آن به Area 0 متصل است در شکل بالا روترهای 2 و 3 و 4 و 6 به عنوان روتر Backbone محسوب می شوند.

(Area Border Router (ABR: روترهای که به دو یا چند Area متصل باشند در شکل بالا روترهای 2 و 4 و 6 به عنوان روتر ABR محسوب می شوند. ABR ها مرز ارسال LSA را مشخص می کنند و می توانند Summarization را برای ما انجام دهند و یا به عنوان Default Route معرفی شوند. این روترها برای هر Area که به آن متصل است یک دیتابیس ایجاد می کند. در واقع ABR ها Area مختلف را به یکدیگر متصل می کنند.

(Autonomous System Boundary Router (ASBR: این روترها از یک سمت به شبکه OSPF و از طرف دیگر به شبکه دیگر متصل است در شکل بالا روتر 4 به عنوان روتر ASBR شناخته می شود. چون از یک سمت به شبکه OSPF و از سمت دیگر به یک شبکه EIGRP متصل است. ASBR وظیفه اتصال شبکه OSPF را به دیگر شبکه های دارد.

نکته: زمانی که ما از Instance های مختلف هم استفاده کنیم عملا OSPF ها را جدا کردیم و در این جا هم نیاز به ASBR داریم.

نکته: یک روتر می تواند چند نقش داشته باشد.

 بسته های مورد استفاده در OSPF

OSPF Header - بسته های مورد استفاده در OSPF
OSPF Header

OSPF برای برقراری ارتباط همسایگی و نگه داشتن آن از پیام هایی تحت عنوان OSPF Packet استفاده می کند. OSPF از پنج نوع بسته استفاده می کند و برای انتقال آنها از UDP یا TCP استفاده نمی کند و به صورت مستقیم روی پروتکل IP آنها با استفاده از OSPF Header ارسال می کند. یکی از فیلد های Header نشان دهنده نوع بسته می باشد. پنج نوع بسته مورد استفاده OSPF به شرح زیر است:

OSPF Message - بسته های مورد استفاده در OSPF

Hello: جهت شناسایی همسایه و ماکنیزمی به منظور اعلام حضور

(Database Description (DBD: یک خلاصه از شبکه هایی که دارد را به وسیله این بسته اعلام می کند.

(Link State Request (LSR: براساس اطلاعات دریافتی از بسته DBD از روتر مقابل اطلاعات کامل شبکه هایی را که در مورد آنها اطلاعات ندارد را درخواست می کند.

(Link State Update (LSU: با استفاده از این بسته به درخواست LSR پاسخ می دهد در واقع اطلاعات کامل شبکه های درخواستی را ارسال می کند.

(Link State Acknowledgment (LSAcK: تایید دریافت برای همه بسته های OSPF غیر از بسته های Hello

نکته: ترافیک OSPF به صورت Multicast به دو آدرس 224.0.0.5 و 224.0.0.6 ارسال می شود که 224.0.0.6 توسط روترهای DR و 224.0.0.5 توسط باقی روترها مورد استفاده قرار می گیرد.

مراحل اجرای OSPF

  1. تشکیل جدول همسایگی
  2. تشکیل جدول توپولوژی
  3. اجرای الگوریتم SPF و بروز رسانی جدول مسیریابی

مراحل ایجاد همسایگی

در OSPF در ابتدا باید با روترهای مجاور همسایه شد و اطلاعات آنها در جدول همسایگی قرار گیرد که به دو دلیل زیر انجام می گیرد:

  1. از فعال و زنده بودن روتر همسایه مطمئن شود.
  2. شرایط همسایگی بین دو روتر بررسی شود.
ospf hello
ospf hello

نکته: تشکیل همسایگی در OSPF توسط بسته های Hello انجام می گیرد. هر 10 ثانیه یکبار این بسته ها ارسال می شوند و اگر40 ثانیه (Dead Time) از همسایه خود Hello دریافت نکند همسایه خود را غیرفعال و مرده درنظر می گیرد.

پروتکل OSPF چیست

پارامترهایی که برای همسایگی مورد بررسی قرار می گیرد:

  1. داشتن Hello interval برابر
  2. داشتن Dead interval برابر
  3. داشتن شماره Area یکسان
  4. داشتن Sunbnet mask یکسان
  5. داشتن Subnet number یکسان
  6. Authentication مشابه
  7. نداشتن RID برابر
  8. Stub area flag

نحوی تبادل اطلاعات Topology

در شبکه های زیر این تبادل اطلاعات با کمی تفاوت انجام می شود:

  • شبکه های Point to Point: در این حالت بین دو روتر یک لینک اختصاصی وجود دارد مانند اینترفیس سریال
  • شبکه های (Multi Access (Broadcast: لینک هایی هستند که به صورت اشتراکی مورد استفاده قرار می گیرند. در این نوع شبکه ها ارتباط و تبادل اطلاعات دو به دو انجام نمی شود و یک روتر به عنوان Designated Router یا DR انتخاب می شود و وظیفه بروز نگه داشتن همه روترها را دارد در این حالت DR یک نقطه حساس در شبکه است و اگر این روتر از کار بیافتد شبکه نیز مختل می شود برای جلوگیری از این مشکل یک روتر به عنوان Backup Designated Router یا BDR در نظر گرفته می شود و به طور دائم ، فعال و زنده بودن DR را چک می کند و در صورت بروز مشکل اطلاعات لازم برای DR شدن را دارد.
  • شبکه های NBMA: این شبکه ها از یک مدیا مشترک استفاده می کنند ولی ترافیک به صورت مستقیم بین دستگاه ارسال می شود و ترافیک Broadcast در این شبکه نداریم در این شبکه ها امکان استفاده از OSPF وجود دارد و از مکانیزم DR و BDR بهره می گیرد ولی همسایگی باید به صورت دستی تعریف شود.
  • شبکه های (Point to Multipoint (P2MP: مکانیزم این شبکه ها برای OSPF همانند شبکه های Point to Point است.
  • شبکه های (Point to Multipoint nonbroadcast (P2MNB: مکانیزم این شبکه ها برای OSPF همانند شبکه های Point to Point است با این تفاوت که باید همسایگی به صورت دستی انجام گیرد.

نکته: از روی نوع لینک امکان تشخیص شبکه فراهم می شود به طور مثال Fastethernet به عنوان یک شبکه Multi Access وSerial به عنوان یک شبکه Point to Point در نظر گرفته می شود.

مفهوم DR و BDR و نحوی انتخاب آنها

مفهوم DR و BDR و نحوی انتخاب آنها

در شبکه هایی که بستر ارتباطی بین روترهای شبکه مشترک است انجام عمل همسایگی و تبادل اطلاعات بین همه ارتباط باعث ایجاد بار زیاد و درگیر کردن تجهیزات می شود برای جلوگیری از این مشکل ، ارتباط و تبادل اطلاعات دو به دو انجام نمی شود و یک روتر به عنوان Designated Router یا DR انتخاب می شود و وظیفه بروز نگه داشتن همه روترها را دارد در این حالت DR یک نقطه حساس در شبکه است و اگر این روتر از کار بیافتد شبکه نیز مختل می شود برای جلوگیری از این مشکل یک روتر به عنوان Backup Designated Router یا BDR در نظر گرفته می شود و به طور دائم ، فعال و زنده بودن DR را چک می کند و در صورت بروز مشکل اطلاعات لازم برای DR شدن را دارد.

به طور ساده می خواهیم تعریفی از DR داشته باشیم می گویم DR را به عنوان ریشه یک درخت در نظر بگیرد که همه روترها (شاخه ها) به آن متصل می شوند و از طریق آن اطلاعات را ردوبدل می کنند.

به ترتیب براساس یکی از شرایط زیر DR انتخاب می شود:

  1. روتری که دارای Priority بالاتر است.
  2. روتری که دارای RID بالاتری است.

نکته: همین شرایط برای برای انتخاب BDR نیز استفاده می شود.
نکته: Priority می تواند بین 0 تا 255 مقدار بگیرد و پیش فرض آن 1 می باشد.
نکته: اگر Priority یک روتر 0 باشد به عنوان DR یا BDR انتخاب نمی شود.
نکته: انتخاب DR و BDR غیر رقابتی است یعنی یکبار این انتخاب انجام می شود و حتی یک روتر با Priority بهتر در شبکه حضور پیدا کند باز هم همان روترهای قبلی به عنوان DR و BDR خواهند بود مگر اینکه پروسه OSPF ریست شود.

نحوی محاسبه Metric در OSPF

در OSPF برای محاسبه Metric از عبارتی تحت عنوان Cost یا هزینه استفاده می شود کمترین مقدار Cost در مسیر به عنوان Cost مسیر در نظر گرفته می شود. به طور مثال مسیر به رسیدن به یک مقصد از چند اینترفیس عبور می کند که همگی آنها دارای پهنای باند 100 Mbps هستند غیر از یکی که دارای پهنای باند 10 Mbps است برای این مسیر Cost محاسبه شده برای اینترفیس 10 Mbps در نظر گرفته می شود.

به طور پیش فرض سیسکو برای محاسبه Cost از یک پهنای باند مرجع که برابر 100 Mbps است استفاده می کند و این پهنای باند مرجع را بر پهنای باند مورد نظر تقسیم می کند به طور مثال ، Cost یک اینترفیس با پهنای باند 10 Mbps برابر با 10 خواهد شود.

OSPF Default Cost Value Chart - نحوی محاسبه Metric در OSPF
OSPF Default Cost Value Chart

نکته: عدد بدست آمده هرچه پایین تر باشد نشان دهنده بهتر بودن اینترفیس است.

OSPF Authentication

در پروتکل OSPF امکان استفاده از ماکنیزم احراز هویت (Authentication) وجود دارد با استفاده از این قابلیت شبکه را در برابر اتصال روترهای غیرمجاز به شبکه OSPF و هرگونه تغییرات محفوظ نگه می دارد. در نتیجه هر روتر در هنگام دریافت بسته های OSPF ابتدا هویت آنها را تایید می کند.

به دو صورت زیر امکان استفاده از Authentication دارد:

OSPF Plain text authentication capture
OSPF Plain text authentication capture
  1. Clear Text: در این حالت احراز هویت بودن رمز نگاری انجام می گیرد درنتیجه در صورتی که بسته ها Sniff شوند امکان دستیابی به پسورد وجود دارد.
  2. MD5: در این حالت برای افزایش امنیت از مکانیزم رمزنگاری نیز استفاده می شود.
OSPF md5 authentication capture
OSPF md5 authentication capture

OSPF Summarization

OSPF Summarization

در OSPF علاوه بر اینکه خلاصه سازی مسیر ها باعث کاهش تعداد رکورد های جدول مسیریابی می شود یک ویژگی بسیار مهم دیگر دارد که به آن می پردازیم.

زمانیکه در Route ها تغییری به وجود می آید باعث می شود که الگوریتم SPF دوباره اجرا شده و باعث درگیر شدن CPU و Ram روترها گردد. حال یک شبکه بزرگ را در نظر بگیرد که دارای شبکه های فراوان و تغییرات بسیار است و این باعث می شود که روترها همیشه درگیر اجرای الگوریتم SPF باشند برای جلوگیری از این مشکل و هدر رفتن منابع از قابلیت Summarization استفاده می کنیم که باعث می شود تغییرات Route ها کمتر مبادله شوند و در هنگام تغییرات فقط روترهای داخل آن Area درگیر اجرای الگوریتم SPF شوند.

نکاتی در پیاده سازی OSPF

پیاده سازی OSPF نسبت به سایر پروتکل های مسیریابی مانند EIGRP نیازمند یک طرح و برنامه دقیق تر است چون طراحی OSPF شرایط و نیازهای خاص خودش را می طلبد.

برای پیاده سازی OSPF شرایط زیر را در نظر بگیرد:

  • وضعیت فعلی شبکه: یک لیست از IP address های مورد استفاده ، انواع لینک ها و ارتباطات ، پهنای باندها ، تجهیزات موجود و … تهیه کنید.
  • اطلاعات مورد نیاز: در اینجا باید مشخص کنیم که از چه شماره Process برای OSPF استفاده شود ، RID بر چه اساس انتخاب شود ، چه روترهایی OSPF را اجرا کنند و …
  • IP Plan: همه جوانب را برای پیاده سازی یک طرح ایده ال برای سیستم آدرس دهی در نظر بگیرد.
  • طراحی سلسله مراتبی: OSPF نیاز به پیاده سازی سلسله مراتبی دارد. باید یک Area Backbone یا همان Area 0 در نظر گرفت و سایر Area ها باید به گونه ای طراحی شوند که به Area 0 به صورت مستقیم متصل باشند.
  • انتخاب تجهیزات: روترهایی را به عنوان ABR ، ِDR و … انتخاب کنید که به لحاظ توانایی و شرایط بتوانند وظایف خود انجام دهند.
  • آینده نگری: گسترش و تغییرات شبکه در آینده را در نظر بگیرد.
  • تهیه گزارش و برنامه پایان کار: در انتها شرایط ، مراحل و … پیاده سازی OSPF را به صورت Document تهیه کنید تا در صورت نیاز بتوانید از آنها به عنوان مرجع استفاده کنید.

OSPF Router ID

هر روتری که در شبکه های OSPF قرار بگیرد به یک OSPF Router ID یا Identifier منحصر به فرد نیاز دارد. OSPF Router ID برای شناسایی یک روتر در شبکه های مبتنی بر پروتکل مسیریابی OSPF استفاده می شود و هر روتر برای اینکه در شبکه بصورت مشخص شناسایی شود برای خود دارای یک Router ID است. OSPF Router ID یک عدد خاص نیست بلکه یک آدرس IP نسخه 4 است (یک عدد 32 بیتی باینری) ، این آدرس IP به هر روتری که بر روی آن پروتکل OSPF پیکربندی شده باشد اختصاص پیدا می کند. OSPF Router ID نباید بعد از اینکه فرآیند OSPF در شبکه انجام شد و شروع به کار کرد و ارتباطات Neighborships این پروتکل برقرار شد تغییری کند و باید ثابت باقی بماند. اگر شما OSPF ID یک روتر را عوض کنید قبل از اینکه فرآیند به درستی انجام شود بایستی سیستم عامل روتر را مجددا Reload کنید. تا OSPF Router ID جدید اعمال شود. Reload کردن مجدد روتر باعث خارج شدن موقتی روتر از مدار شبکه می شود.

روش کار الگوریتم انتخاب OSPF Router ID

هر آدرس دستی که به عنوان OSPF Router ID به روتر معرفی شده باشد در فرآیند انتخاب به عنوان OSPF Router ID انتخاب می شود.

اگر بر روی روتر OSPF Router ID پیکربندی نشده باشد ، بالاترین (در بعضی روتر ها پایین ترین) آدرس IP ایکه بر روی هر یک از Loopback Interface های روتر وجود داشته باشد بصورت خودکار به عنوان OSPF Router ID در فرآیند انتخاب OSPF Router ID انتخاب خواهد شد.

اگر هیچ Loopback Interface ای بر روی روتر تعریف نشده باشد بالاترین (در بعضی روتر ها پایین ترین) آدرس IP ای که بر روی هر کدام از Interface های فعال روتر وجود داشته باشد بصورت خودکار به عنوان OSPF Router ID در فرآیند انتخاب OSPF Router ID انتخاب خواهد شد.

Default Routes

Default route یک نوع خاص از Summarization است که همه شبکه ها را با یک Route خلاصه سازی می کند. اینکار مزایای فراوانی دارد که به چند مورد آن اشاره می کنیم:

  1. باعث می شود جدول مسیریابی کوچکی داشته باشیم.
  2. از منابع روتر کمتر استفاده می شود.
  3. روتر نیاز به نگه داری اطلاعات Route های خارجی را ندارد
  4. کمتر شدن اجرای الگوریتم انتخاب بهترین مسیر

Default Route در OSPF به عنوان type 5 در نظر گرفته می شود.

کاربرد و عملکرد Stub Area

در Area غیر backbone کاهش اطلاعات جدول مسیریابی یک امر ضروری است چون روترهای این Area ها بسیار آسیب پذیرند چون معمولا دارای سرعت و قدرت پایین تری هستند و همچنین دارای کمترین پهنای باند می باشند. این ویژگی ها باعث ایجاد نگرانی بابت وجود Routeهای زیاد در این Areaها می شود که می تواند عواقبی مانند Overload شدن روتر یا اشغال لینک های ارتباطی شود.

یک راه برای کاهش اطلاعات مربوط به مسیرها این است که یک Area را به عنوان Stub area انتخاب کنیم. زمانی که یک Area را به عنوان Stub Area تعیین می کنیم باعث می شود که روترهای ABR روت های Type 5 را فیلتر کنند و به جای آنها یک Default Route ارسال کنند و اینکار باعث می شود که دیتابیس روترهای این Area فقط شامل روت های OSPF و یک Default Route باشد. در Stub Area نمی توانیم ASBR داشته باشیم. اما در صورتی که بخواهیم تعداد روت ها را کمتر کنیم می توانیم از Totally Stubby Area استفاده کنیم که اختصاصی سیسکو است در این حالت ABR تمام روت های Type 3,4,5 را فیلتر می کند و به جای آنها فقط یک Default Route ارسال کند که باعث می شود دیتابیس این روترها فقط شامل روت های داخلی آن Area و یک Default Route باشد.

برخی از محدودیت های Stub Area:

  1. نمی تواند شامل Virtual Link باشد.
  2. در این ناحیه نمی توان از ASBR استفاده کرد.
  3. همه روترهای آن Area باید به عنوان Stub Area تعریف شوند.
  4. Area 0 را نمی توان به عنوان Stub Area انتخاب کرد.

(Not-so-Stubby Area (NSSA نوع دیگر Stub Area می باشد. NSSA همانند Stub Area می باشد با این تفاوت که می توان در این ناحیه از ASBR استفاده کرد. در نتیجه در این ناحیه روت های خارجی (Type 7) توسط ASBR در این ناحیه منتشر می شوند و ABR با تبدیل این روت ها به Type 5 آنها را به دیگر ناحیه ها اعلام می کند.

نوع دیگر Totally NSSA می باشد که همانند Totally Stub Area می باشد با این تفاوت که در این ناحیه نیز می توان از ASBR همانند NSSA استفاده کرد.

کاربرد و عملکرد Stub Area

Virtual Link

در OSPF همه Area ها باید به Area 0 متصل باشند. اما در بعضی مواقع این امکان فراهم نیست. در این شرایط می توان با استفاده از Virtual Link این اتصال را به Area 0 انجام داد این اتصال از طریق یک Area دیگر به عنوان واسط انجام می گیرد.

چه زمانی از Virtual Link استفاده می شود:

  • زمانی که بین Area 0 و Area مورد نظر لینک مستقیم وجود ندارد.
  • زمانی که Area 0 و Area مورد نظر همجوار نیستند.

نکته: Virtual Link را به عنوان یک راه حل موقت در نظر بگیرد و نسبت به حل درست آن اقدام کنید.
نکته: برای ایجاد Virtual Link از Router ID استفاده می شود در نتیجه نحوی انتخاب Router ID را در نظر داشته باشید.

نحوی ایجاد Virtual Link:

همانطور که در تصویر زیر می بینید Area 2 به صورت مستقیم به Area 0 متصل نیست برای همین یک Virtual Link باید بین روتر 3.3.3.3 و 1.1.1.1 ایجاد می کنیم برای ایجاد Virtual Link از Router ID استفاده می شود.

Virtual Link

 

Shares:

1 Comment

  • محمد شهیدی شهرستانی
    محمد شهیدی شهرستانی
    2021-04-22 at 13:51

    درود
    تنها می تونم بگویم که بسیار عالی بود، عالی مطلب را دریافته و عالی انتقال داده اید. به ویژه نکته ای که همیشه برای من پرسش بود درباره ی فلسفه ی وجودی virtual link که کامل روشن شدم. سپاس راوان. خدا به شما رزق دهد

    Reply

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

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