ccna90

آشنایی با کاربرد سرویس DHCP

سرویس DHCP ( مخفف Dynamic Host Configuration Protocol ) از ملزومات هر شبکه ای می باشد. در شبکه به هر دیوایسی که بتواند تنظیمات IP address را دریافت کند Host گفته میشود. هر Host برای آنکه بتواند در یک شبکه به فعالیت بپردازد، به 4 تنظیم نیاز دارد:

  • IP address
  • Subnet Mask
  • Default Gateway Address
  • DNS IP address

پس باید روی تک تک host ها این تنظیمات وارد شود. اگر تعداد host ها کم باشد، مشکلی نخواهد داشت که بصورت دستی روی تک تک Host ها این تنظیمات را وارد کنیم. اما وقتی تعداد host ها زیاد شود اولا وارد کردن تنظیمات بصورت دستی بسیار وقتگیر خواهد بود و دوما هم احتمال ارائه IP تکراری به یک یا تعدادی از host ها بشدت بالا می رود. پس مکانیزمی طراحی گردید که این تنظیمات را بصورت خودکار به هر host که وارد شبکه میشود، ارائه و اعمال کند. این مکانیزم DHCP نامیده میشود.کاملا توصیه میشود که DHCP server بصورت ویندوزی یا لینوکسی در دامین پیاده سازی شود که نحوه ایجاد یک Microsoft DHCP Server در دوره MCSA آموزش داده میشود. اما این امکان وجود دارد ( و البته توصیه به استفاده نمی شود) که سرویس DHCP را روی روتر سیسکو پیاده سازی کنیم. در  دوره آموزشی سیسکو چگونگی پیاده سازی DHCP روی روترها و سوئیچ های سیسکو را فرا خواهید گرفت.

جهت شرکت در دوره های آموزشی سیسکو به صفحه دوره سیسکو مراجعه کنید.

برای اینکه host ها بتوانند بصورت خودکار از DHCP server شبکه ( حال چه سرور مایکروسافتی، چه لینوکسی و چه روتر سیسکو) تنظیمات IP را دریافت کنند، باید روی کارت شبکه host های فوق، وضعیت دریافت IP خودکار فعال باشد و بصورت دستی روی host ها تنظیمات IP وارد نشده باشند. البته غیر از کامپیوترهایی که قرار است نقش سرور را بازی کنند چون توصیه قوی وجود دارد که آدرس سرورهای گوناگون شبکه بصورت استاتیک تعیین شود.

     وقتی یک host که تنظیم دریافت IP آن روی حالت خودکار است وارد محیط شبکه می شود، برای اینکه بتواند فعالیت کند به تنظیمات IP نیاز دارد، پس سعی میکند تنظیمات فوق را دریافت کند. اینجا مکانیزم DORA رخ میدهد. عملیات DORA شامل چهار مرحله به شرح ذیل است:

  1. مرحله Discovery : ابتدا Host ( که در این لحظه دارای آدرس قراردادی 0.0.0 است) چون هیچ ذهنیتی از ساختار شبکه و آدرس DHCP server شبکه ندارد، یک بسته به نام Discover بصورت broadcast با آدرس 255.255.255.255 روی شبکه ول میدهد. معنی این بسته اینست که من احتیاج به تنظیمات IP دارم. یک نفر که توانایی ارائه این تنظیمات را دارد به من جواب دهد.
  2. مرحله Offer : ممکن است در محیط شبکه چند DHCP server داشته باشیم یا شاید هم فقط یکی. بهرحال این سرور (ها) به پیغام Discover واکنش نشان می دهند و در پاسخ بصورت broadcast یک بسته تنظیمات IP را روی شبکه رها میکند. این مرحله به مرحله Offer موسوم است.
  3. مرحله Request : پاسخ ارسالی از سوی اولین DHCP که به درخواست discovery پاسخ داده است، اولین پاسخی است که به host میرسد. از این پس host فقط با همین DHCP سر و کار خواهد داشت. گفته شد که پاسخ حاوی یک بسته تنظیمات IP است. Host وقتی بسته را دریافت کرد، توسط پروتکل ARP چک میکند که احیانا این IP در اختیار host دیگری نباشد. اگر پاسخی در واکنش به دستور ARP آمد به این معناست که این IP در این لحظه در اختیار یک host دیگر هست. پس host ما یک پاسخ decline به سوی DHCP server می فرستد و درخواست میکند که یک بسته تنظیمات جدید IP برایش فرستاده شود. اما اگر در پاسخ دستور ARP جوابی نیامد به این معناست که این بسته در اختیار هیج host قرار ندارد. لذا host یک پیغام به سوی DHCP server میفرستد و تقاضا میکند که همین IP به host اختصاص داده شود. این مرحله به مرحله Request معروف است.
  4. مرحله Acknowledgement : اکنون نوبت آخرین مرحله یعنی مرحله Acknowledgement است. در این مرحله DHCP Server موافقت میکند که IP پیشنهادی خودش که به تایید Host رسیده است را به مدت زمان مشخصی ( بسته به تنظیمات پیکربندی DHCP ) به host فوق اجاره دهد.

 

بحث DHCP Relay Agent

      همانطور که دیدید مراحل DORA بشدت متکی بر مکانیزم بسته های broadcast است. در بیشتر شبکه ها بیشتر از یک subnet داریم و طبعا بین subnet ها هم روتر قرار دارد. یکی از وظایف اولیه و ذاتی روترها هم که drop کردن بسته های broadcast است. در این حالت اگر بعنوان مثال دارای سه سابنت به نامهای A, B , C در شبکه خود باشیم و DHCP Server در سابنت B قرار داشته باشد، host های موجود در دو سابنت A و C هرگز موفق به برقراری ارتباط با DHCP Server و دریافت تنظیمات نخواهند شد.

     یک راه حل برای رفع این مشکل اینست که برای هر سابنت یک DHCP Server پیاده سازی کنیم. کار میکند ولی اصلا جالب و مهندسی نیست.

     در اینجا این ایده مطرح شد که روی هر روتر ، اینترفیس مرتبط با سابنت B دارای نقش وکیل DHCP سرور شبکه شود. در هر سابنت بسته های DORA کماکان بصورت broadcast رد و بدل میشود. کار DHCP relay agent هر سابنت اینست که این پیغامهای broadcast را دریافت کرده، آنرا بصورت پیغام unicast بسوی DHCP Server بفرستد. از طرفی، پاسخی که بصورت unicast از DHCP server دریافت میکند را روی سابنت متبوع خودش بصورت broadcast ول کند. در مباحث آینده نحوه پیاده سازی DHCP Relay Agent روی روتر را نیز فرا خواهید گرفت.

 

جهت شرکت در دوره های آموزشی سیسکو به صفحه دوره سیسکو مراجعه کنید.

1399-01-17

1 پاسخ به "آشنایی با کاربرد سرویس DHCP"

ارسال یک پیغام

کپی رایت آکادمی ITperfection.