computerkade

computerkade

computerkade

computerkade

معرفی پروتکل RIP یا Routing information protocol و نحوی پیاده سازی آن !

یکی از مباحث مهم در شبکه و زیرساخت نحوی ایجاد ارتباط بین شبکه ها و هدایت بسته ها از یک شبکه به شبکه دیگر و تحویل آن به مقصد می باشد که به آن مسیریابی گفته می شود مسیریابی به روش هایی مانند Static و Dynamic صورت می گیرد. در این مقاله می خواهیم با یکی از پروتکل های Dynamic مسیریابی آشنا شویم.پروتکل Routing Information Protocol یا به اختصار RIP قدیمی ترین پروتکل مسیریابی است که در سال 1988 ارائه شد و به عنوان یک پروتکل IGP ، هنوز برای شبکه های کوچک مورد استفاده قرار می گیرد. پروتکل RIP جزء دسته Distance-Vector است.
Image


قبل از اینکه به پروتکل RIP بپردازیم ابتدا با چند اصطلاح آشنا شویم:

    همسایگی : دو روتر برای اینکه بتواند اطلاعات جدول مسیریابی خود را بین هم رد و بدل کنند باید یکسری شرایط را داشته باشند در صورت داشتن این شرایط به اصلاح گفته می شود که دو روتر با یکدیگر همسایه شده اند.
    Update : بسته حاوی اطلاعات مروبط به جدول مسیریابی
    Advertisement : عمل ارسال بسته update توسط روتر روی اینترفیس های خود
    Metric : عددی که براساس فرمول مخصوص پروتکل مسیریابی بدست می اید و جهت انتخاب بهترین مسیر کاربرد دارد


روترهایی که از پروتکل RIP استفاده می کنند برای اینکه از کل مسیرها و شبکه موجود اطلاع پیدا کنند کل اطلاعات جدول مسیریابی خود را روی اینترفیس هایشان ارسال می کند تا به سایر روترها اعلام کند که چه شبکه هایی را دارند. این ارسال هر 30 ثانیه یکبار انجام می شود. برای ارسال از پروتکل UDP با شماره پورت 520 استفاده می کند. روتر با دریافت بسته update جدول مسیریابی خود را با آن بروز می کند اما در صورتی که از همسایه خود طی 180 ثانیه update دریافت نکند تمام روت های دریافتی را غیرقابل استفاده در نظر می گیرد و و بعد از 240 ثانیه این روت ها را از جدول مسیر یابی خود پاک می کند.RIP برای انتخاب بهترین مسیر از مفهومی به نام hop count استفاده می کند. Hop count براساس تعداد روتر ها موجود در مسیر محاسبه می شود و حداکثر مقدار 15 می تواند باشد در صورتی که تعداد از 15 بیشتر باشد RIP آن شبکه را غیر قابل دسترسی در نظر می گیرد. RIP به وسیله این روش از ایجاد Loop در شبکه جلوگیری می کند اما این محدودیت باعث می شود که این پروتکل برای شبکه بزرگ مناسب نباشد.

انواع نسخه های RIP :

    Version 1 :
    Version 2
    RIPng (RIP next generation) :


ویژگی های RIP version 1 :

    یک پروتکل Classful است و از VLSM پشتیبانی نمی کند
    دارای امکان Authentication ( احراز هویت) نیست
    Advertisement ها را به صورت Broadcast ارسال می کند


ویژگی های RIP version 2 :

    در سال 1993 ارائه شد.
    یک پروتکل Classless است و از VLSM پشتیبانی می کند
    امکان Authentication ( احراز هویت) را دارد
    Advertisement ها را به جای Broadcast به صورت multicast به آدرس 224.0.0.9 ارسال می کند


ویژگی های RIPng :

    پشتیبانی از IPv6
    از پروتکل UDP با شماره پورت 521 استفاده می کند.


تایمرها مورد استفاده RIP :

    Route update timer : زمان ارسال اطلاعات جدول مسیریابی که پیش فرض هر 30 ثانیه یکبار انجام می شود.
    Route invalid timer : حداکثر مدت زمانی که روتر منتظر دریافت advertisement از طرف مقابل می شود و در صورت عدم دریافت route های دریافتی را غیرقابل استفاده در نظر می گیرد که پیش فرض مقدار ان 180 ثانیه است.
    Route hold-down timer : در صورت دریافت یک update با متریک بالاتر آن را به مدت 180 ثانیه در حالت hold-down قرار می دهد. برای جلوگیری از بروز loop اینکار انجام می شود.
    Route flush timer : اگر 180 ثانیه از دریافت advertisement گذشت 60 ثانیه دیگر منتظر می ماند در غیر اینصورت route ها را از جدول مسیریابی خود پاک می کند.


نکته : Administrative Distance پروتکل RIP برابر با 120 می باشد.
نکته : امکان Load Balance را روی 16 خط دارد که مقدار 4 پیش فرض آن می باشد.
نکته : routeهای پروتکل RIP با حرف اختصار R در جدول مسیریابی نمایش داده می شود.

نحوی تنظیم و فعال کردن پروتکل RIP :
کافیست دستور زیر را در global mode وارد کنیم:

R(config)#router rip

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

R(config-router)#version 2

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

    R(config)#ipv6 router rip

در صورتی که بخواهیم روی برخی از اینترفیس ها advertisement ارسال نشود مانند اینترفیس متصل به LAN از دستور زیر استفاده می کنیم:

R(config-router)#passive-interface fastethernet 0/0

جهت مشخص کردن شبکه هایی که می خواهیم آنها را advertise کنیم:

R(config-router)#network 192.168.1.0

    نکته : شبکه مشترک بین دو روتر باید advertise شود در غیر اینصورت بین آنها اطلاعات رد وبدل نمی شود.

برای تعیین کردن authentication برای advertisement ها به صورت زیر عمل می کنیم:

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

    R(config)#key chain itpro
    R(config-keychain)#key 1
    R(config-keychain-key)#key-string IT

    سپس باید روی اینترفیس مورد نظر Authentication را فعال کنیم

    R(config)#interface fastethernet 0/0
    R(config-if)#ip rip authentication key-chain itpro

    حالا باید نوع authentication را مشخص کنیم برای RIP به دو صورت MD5 (رمزنگاری شده) و text (بودن رمزنگاری) می توان تعریف کرد.

    R(config-if)#ip rip authentication mode md5


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

R#show ip route

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

R#debug ip rip

owerShell workflow چیست؟

حرفه ای های IT مدیریت شبکه های بزرگ خود را با اجرای دنباله هایی از taskهای طولانی مدت، به صورت خودکار در می آورند. به این دنباله ها workflow می گوییم. Windows PowerShell Workflow به حرفه ای های IT و توسعه دهندگان این امکان را می دهد که با استفاده از مزایای Windows Workflow Foundation در کنار امکانات خودکارسازی و سادگی PowerShell کیفیت کار خود را بالا ببرند. این امکان در ویندوز سرور 2012 و ویندوز 8 برای اولین بار ارائه گردید و بخشی از Windows PowerShell 3.0 و نسخه های جدیدتر آن است. به این ترتیب این امکان به ادمین ها داده می شود که روی کارهای مهم تر و سطح بالای خود تمرکز کنند.Windows PowerShell که برای اولین بار با ویندوز سرور 2008 و ویستا ارائه شد، یک command line shell و زبان اسکریپت نویسی است که بر پایه dot net framework ارائه شده و هدف آن خودکارسازی مدیریت ویندوز است.

معرفی Windows Powershell Workflow
Workflow دنباله ای از قدم های برنامه ریزی شده و متصل به هم است که taskهای طولانی مدت را اجرا می کنند یا نیاز به هماهنگی تعداد زیادی دستگاه دارد. Windows Powershell Workflow امکان ایجاد چنین دنباله هایی را می دهد. Workflowها می توانند قابل تکرار، پشت سر هم، قابل موازی سازی، قابل متوقف شدن و قابل شروع شدن مجدد باشند که بسته به طراحی آن ها متفاوت است. حتی می توانند پس از یک قطعی پیش بینی نشده برق و یا شبکه، از سر گرفته شوند. Syntax آن ها مشابه syntax مربوط به PowerShell است و به کمک فایل های XAML هم می توانند ساخته شوند.با استفاده از Runas در Windows PowerShell، افراد مجاز قادر خواهند بود workflowها و یا فعالیت های داخل یک workflow را اجرا کنند.

فعالیت چیست؟
فعالیت یک وظیفه خاص است که می خواهیم یک workflow اجرا نماید. همان طور که یک اسکریپت از یک یا بیشتر دستور ساخته شده است، workflow هم از یک یا چند فعالیت تشکیل شده است که به دنبال هم اجرا می شوند. یک workflow می تواند به عنوان یک فعالیت در workflow دیگری مورد استفاده قرار گیرد.

مزایای استفاده از Windows Powershell Workflow

    ادمین ها می توانند از مهارت های اسکریپت نویسی خود برای نوشتتن workflow استفاده کنند. این اسکریپت ها به سادگی نوشته می شوند و قابل به اشتراک گذاری هستند.

وظایف workflow را می توان همزمان به صدها دستگاه اعمال نمود. Windows Powershell Workflow به طور خودکار پارامترهایی مثل نام کامپیوتر را به workflow اضافه می نماید تا امکان انجام چنین سناریوهایی وجود داشته باشد.

    به راحتی می توان با ترکیب چندین اسکریپت و فرمان، یک سناریو را در قالب یک workflow اجرا کرد و مراحل پیشرفت آن را کنترل کرد.
    Workflowها در مقابل قطع شدن برق، خاموش شدن ناگهانی سیستم و یا قطعی شبکه آسیب پذیر نیستند و با توجه به نقاط checkpoint که برای آنها تعریف می شود، ادامه می یابند و یا مجدداً شروع می شوند.
    قطع و وصل شدن کاربران از workflowها تأثیری روی اجرای آنها ندارد.
    Workflowها قابل زمانبندی هستند.


اسکریپت های Windows Powershell Workflow و Windows PowerShell چه تفاوتی با هم دارند؟
در اسکریپت های معمول، کل اسکریپت در یک فضای اجرا، اجرا می شود. فضای اجرا محیط عاملی است که تعیین می کند کدام فرمان ها، متغیرها و المان های دیگر موجود هستند. در workflow هر فعالیت در یک فضای اجرای مخصوص به خود اجرا می شود. به طور کلی زمانی باید به جای اسکریپت یا دستور سراغ workflow برویم که هدف ما یکی از موارد زیر باشد:

    می خواهید یک task طولانی مدت اجرا کنید که چندین قدم را شامل می شود.
    نیاز دارید task شما روی چندین دستگاه اجرا شود.
    می خواهید task شما checkpoint داشته باشد و قابل ادامه دادن باشد.
    نیاز دارید یک task طولانی مدت اجرا کنید که قابل وقفه افتادن، شروع مجدد و موازی سازی باشد.
    می خواهید taskای را در یک محیط بزرگ با در نظر گرفتن کم و زیاد شدن پهنای باند و connection pooling اجرا نمایید.


ایجاد و وارد کردن workflowها با استفاده از Visual Studio Workflow Designer
یک راه دیگر برای ایجاد workflowها استفاده از Visual Studio Workflow Designer است. این workflowها فرمت XAML دارند. این فایلها را می توانید در Windows Powershell Workflow وارد نمایید.

فعالیت های Windows Powershell Workflow در Visual Studio Workflow Designer
Windows PowerShell فعالیت های از پیش آماده ای برای بیشتر cmdletها دارد.این فعالیت ها در بسته هایی با نام های مشابه ماژول مربوط به خود قرار گرفته اند. لیست زیر، مجموعه فعالیت های از پیش نصب شده است:

    Microsoft.PowerShell.Activities
    Microsoft.PowerShell.Core.Activities
    Microsoft.PowerShell.Diagnostics.Activities
    Microsoft.PowerShell.Management.Activities
    Microsoft.PowerShell.Security.Activities
    Microsoft.PowerShell.Utility.Activities
    Microsoft.WSMan.Management.Activities