میلاد اسحاقی
کارشناس سرویس های شبکه مایکروسافت

آموزش راه اندازی DHCP Failover در ویندوز سرور به زبان ساده

در این آموزش با یکی از ویژگی های بسیار کاربردی و جدید در سرویس DHCP سرور 2012 به نام DHCP Fail over آشنا خواهیم شد. همانطور که در مقالات قبلی در سایت وزین توسینسو مطالعه کردید ، برای انکه در ساختار DHCP بتوانیم از قابلیت های Fail over و Load balance استفاده کنیم 

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

می توانید از مدل DHCP Relay Agent استفاده کرده و یا با ساختن Split Scope و بک آپ گیری مستمر از جانب ارائه سرویس مهم DHCP در شبکه اطمینان حاصل کنید . البته برای اینکه از هرکدام این سناریو ها استفاده کنید قطعا کمبود هایی خواهید داشت که باید نکات ویژه ای را برای طراحی و استفاده از آنها رعایت کنید .

1

یکی از راهکار های که از قدیم برای استفاده از قابلیت Fail over در شبکه وجود داشته است استفاده از ساختار های Fail Over cluster وStorage های مرکزی برای ارائه سرویس های Fail over cluster بوده است ، و خوشبختانه سرویس DHCP هم که یکی از اساسی ترین سروها در بستر شبکه های مایکروسافتی بوده وامکان استفاده از این سرویس و این بستر را داشته است یا به عبارت دیگر Cluster Aware Service بوده است .

همانطور که در مقالات بسیار عالی استاد نصیری در سایت توسینسو مشاهده کردید برای راه اندازی این امکان نیاز به آشنایی با نکات فراوان و استفاده از نرم افزار هاو سخت افزار های خاصی وجود خواهد داشت که قطعا برای پیاده سازی و راه اندازی آن نیاز به صرف وقت کافی و تجهزیات خاصی خواهد بود . اکنون هدف ما در این آموزش این است که بدون نیاز به استفاده از ساختار های Fail over Cluster بتوانیم برای سرویس DHCP خود امکان Fail over و Load balance را پیااده سازی کنیم .

2

این ویژگی از جمله امکانات اضافه شده در سرور 2012 بوده و در ورژن های پایین تر قابل استفاده نیست ، بنابر این بهتر است هر چه زودتر سرویس DHCP موجود خود را ارتقا دهید و از این امکان به بهترین شکل استفاده کنید . برای شروه به کار باید بدانید برای پیاده سازی این قابلیت شما نیاز به دامین خواهید داشت و برای هر Scope در DHCP می توانید این ویژگی را پیاده سازی کنید . در واقع اگر یکی از Scope های شما در سرور 2012 به هر دلیل از کار افتاد .

به سادگی و بدون اتلاف زمان می توانید ارائه خدمات و رنج موجود در این Scope را از طریق یک DHCP سرور دیگر که آن هم میزبان و ارائه دهنده Scope مذکور است ادامه دهید ! در این جا نکته ای که نباید فراموش کرد این است که این ویزگی خیلی ساده تر بر روی DHCP سرویس های Authorize قابل انجام است ، بنابر این برای این طراحی DHCP سرو های شما جوین یک دامین بوده و هردو Authorize باشند با اینکه این طراحی در workgroup هم قابل پیاده سازیست ولی دیگر DHCP های ما امکان Authorize شدن نخواهند داشت !

می توان در تکمیل توضیحات به این نکته اشاره کرد که این ویژگی بر روی دو عدد DHCP قابل انجام است ( البته برای یک Scope مشخص ، یعنی برای هر Scope دو DHCP مشخص ! پس میتوان چندین DHCP داشت که 2 به 2 برای ارائه Scope ها کانفیگ شده اند ) و این سرورها میتوانند ارائه آی پی و آپشن های مربوطه را برای یک Subnet و یا Scope به طور همزمان ارائه کنند . حسن این طراحی در این است که وقتی Fail over رخ بدهد و یکی از DHCP سرور ها به هر دلیلی از ارئه سرویس DHCP باز بماند .

DHCP دیگر که در طراحی Fail Over مشارکت داشته ، از وضعیت Lease Information ها به طور کامل مطلع بوده و می تواند مکانیسم renew کردن را برای IP های ارائه شده توسط DHCP قبلی که اکنون در دسترس نیست را به همان صورت ادامه دهد و اختلالی در LeaseDuration ارائه شده به کامپیوتر ها به وجود نیاید . برای ارائه این سرویس می توان 2 عدد DHCP مشارکت کننده در طرح Fail over را در دو مود Hot Standby و Load Sharing طراحی کرد :

Hot standby در Failover سرور DHCP

در این طراحی یک از سرورها در حالت Primary و دیگری در حالت Secondary خواهد بود و سرور Primary در حال ارائه آیپی از Scope مورد نظر و ارائه آپشن های تنظیم شده خواهد بود . در این حالت سرور Secondary فقط وقتی به ارائه نقش خواهد پرداخت که سرور Primary در دسترس نباشد . در این طراحی ادمین باید یک درصدی از Scope را برای ارائه توسط Secondary Server در نظر بگیرد و در هنگام طراحی کانفیگ کند.

این بازه در مدت زمانی که به اسم MCLT یا Maximum Client Lead time شناخته میشود و برای وقتی که سرور Primary در دسترس نیست قابل ارائه است . مقدار پیش فرض برای MCLT در واقع 5 درصد از Scope است . نهایتا سرور Secondary وقتی که مقدار زمان MCLT به پایان برسد ( زمان MCLT توسط ادمین

و در حین راه اندازی این سرویس قابل کانفیگ است و انشا الله در آموزش بعدی به صورت تصویری و گام به گام قابل بررسی خواهد بود ) این امکان را دارد که کل بازه Scope را ارائه کرده و در واقع جایگزین سرور Primary که از کارافتاده خواهد شد . در حین راه اندازی با مفهومی به نام Switch over Interval هم آشنا خواهیم شد .

Load Sharing در Failover سرور DHCP

در این مود که به طور پیش فرض در نظر گرفته شده است ، هر دو سرور به طور همزمان در حال ارائه آیپی و آپشن های مربوط به یک scope می باشند .و اینکه کدام یک از سرور ها به چه میزان پاسخگوی در خواست کلاینت ها باشند به تنظیماتی که ادمین برای این کانفیگ انجام داده بر میگیردد .

به طور پیش فرض این مقدار 50 // 50 خواهد بود . همچنین باید دقت کرد که DHCP از پورت TCP 647 برای گوش کردن به ترافیک Fail Over استفاده می کند و در استفاده از Firewall باید به این پورت و نکته توجه خاصی کنید تا هر دو سرور بتوانند از UP بودن و یا DOWN شدن یکدیگر به موقع خبر دار شوند .

در نهایت نکته ای که حائز اهمیت است این نکته میباشد که شما برای پیاده سازی این طراحی هیچ نیازی به وجود سخت افزار خاص یا تنظیمات مرتبط با Fail over cluster و یا NLB Cluster نخواهید داشت و خب از این بابت پیاده سازی و طراحی ساده و در عین حال کاربردی را در عمل خواهیم داشت و انشاالله در آموزش مرحله بعد به صورت تصویر به راه اندازی آن خواهیم پرداخت .اکنون و در این آموزش طبق وعده قبلی می خواهیم به شرایط راه اندازی و نکات لازم اشاره کنیم و مراحل را به با یکدیگر گام به گام بررسی کنیم .

بنابر این پیشنهاد میکنم کمربند های خود را بسته و از گوشی های همراه استفاده نکنید ( نمیدونم چرا این توضیحات را موقع سوار شدن به هواپیما هم میگن !!! ) برای این کار همانطور که گفتیم باید 2 عدد DHCP سرور Authorize داشته باشیم تا بتوانیم این ساختار را برای Scope مورد نظر پیاده سازی کنیم ، بنابر این من ابتدا بر روی DHCP سرور Primary خودم ( در واقع DHCP که در حال حاضر Scope مورد نظر را در خود دارد ) می روم و بر روی گزینه Fail Over Cluster کلیک میکنم :

1

در پنجره باز شده از بین Scope های موجود Scope مورد نظر را انتخاب کنید ، این نکته را هم فراموش نکنید که شما برای هر Scope می توانید به طور مستقل این امکان را فراهم کنید و مانعی برای این که بر روی یک سرور این امکان را برای چند Scope فراهم کنید وجود ندارد . فقط فراموش نکنید که این امکان در ازای هر scope فقط امکان fail over شدن بین 2 سرور را داراست و نه بیشتر !!

2

در مرحله بعدی نوبت به انتخاب Partner Server میرسد ، در واقع شما باید سرور که قرار است به عنوان DHCP دوم به سرور اصلی خود اضافه کنید را انتخاب کنید :

3

یک پیشنهاد دوستانه دارم و آن هم این است که سور دوم را از گزینه و با توجه به DHCP Authorize List انتخاب کنید تا با این کار از Authorize بودن سرور خود اطمینان حاصل کنید :

4

و اما میرسیم به مرحله مهم و اساسی در این مرحله ما تنظیمات مربوط به MCLT ، Mode ،LBP ، Switch Over و نهایتا Authentication را بررسی خواهیم کرد :

5

بسیار خب در اینجا ابتدا برای Fail Over Relation خود یک نام را انتخاب کنید ، این نام تاثیری در تنظیمات ما نخواهد داشت :

6


سپس مقدار MCLT را مشخص کنید ، نکته ای که واجب میدانم در مورد آن توضیح دهم این است که متاسفانه این مقدار در بسیاری از مقالات به اشتباه با مقدار Swith over یکسان در نظر گرفته میشود اما اگر دقیق تر بررسی کنیم می توانیم بگوییم این مقدار مدت زمانیست که کلاینت ما در ابتدای دریافت ایپی از DHCP دریافت میکند ، و خب شاید برای شما این سوال پیش بیاید که خب این مقدار چه فرقی با Lease Duration خواهد داشت !؟

واقعیت این است که این مقدار برای این است که شاید شما Lease Duration را به طور پیش فرض 8 روز انتخاب کرده باشی اما وقتی ساختار Fail over را برای DHCP و Scope خود انتخاب می کنید در ابتدا مقدار MCLT در اختیار کلاینت قرار میگیرد و مثلا مقدار 1 ساعت می شود مدت اعتبار آیپی که به کلاینت داده میشود ، و اما حسن این کار کجاست؟

در واقع چون وقتی DHCP Primary برای مثال ( می تواند توسط DHCP Secondary هم این اتفاق رخ دهد !) به یک کلاینت IP را ارئه می کند ، باید بلافاصله به Partner خود اعلام کند که این IP را در اختیار یک کلاینت قرار داده تا DHCP دوم از ارائه این آیپی به دیگران خود داری کند !

اما دوستان عزیز توسینسویی حالا پیدا کنید پرتقال فروش را !! خب این موضوع یعنی اطلاع دادن چه ربطی به MCLT دارد ؟ در واقع وقتی MCLT ارائه میشود مقدار زمانی که IP به یک کلایت داده میشود بسیار کوتاه تر از مقدار Lease duration است و باعث میشود که اگر مثلا وقتی DHCP سرور اول آیپی را ارائه کرد

و در همان لحظه به دلیل از کار کردن باز ایستاد و نتوانست به DHCP دوم این موضوع را اطلاع دهد ، مدت زمان زیادی طول نکشد تا کلاینت مورد نظر برای تمدید آیپی خود دوباره در خواست DHCP Request و نهایتا هم Discovery دهد و این درخواست به DHCP شریک برسد و آن هم متوجه شود که این آیپی توسط DHCP اصلی داده شده بوده

اما به هر دلیل DHCP اول نتوانسته این موضوع را به DHCP Partnet اطلاع دهد ، پس مدت زمانی که ممکن است DHCP شریک از ارائه همچنین آیپی به یک کلاینت بی اطلاع باشد بسیار کوتاه تر شده و احتمال IP confilict بسیار کمتر خواهد شد ! و البته اگر DHCP سرور اصلی به صحت و سلامت به کار خود رسیدگی کند 

کلاینت در مدت زمان کوتاهی (MCLT) بعد از گرفت آیپی به سراغ DHCP سرور اصلی رفته و چون DHCP Server اصلی مشغول به کار است و ارائه این آیپی به کلاینت مذکور را هم به DHCP Partner ارائه کرده ، اکنون مدت زمان کامل Lease Duration را به کلاینت ارائه کرده و ماجرا بدین صورت ادامه پیدا میکند .

7

و سپس در گزینه Mode هم میتوانید اساس عملکرد این دو DHCP را تعیین کنید ، اگر می خواهید Load Balance داشته باشید و ترافیک Scope را بین این دو سرور به اشتراک بگذارید ، گزینه Load Balance را انتخاب کنید و اگر میخواهی یکی از DHCP ها نقش Primary را داشته و زیر بار باشد و DHCP دیگر به صورت Back up و برای کواقع ضروری که DHCP اول کار نمیکند تنظیم شود گزینه Hot Standby را انتخاب کنید .

8

پر واضح است که مقدار Load Balance Percentage مقدار مشارکت هر یک از این سرور ها را در ارئه آیپی تعین خواهد کرد :

9

وباانتخاب مقدار hot Standby شما اولا تعیین میکند نقش Partner DHCP Server به چه صورتی باشد، یعنی در حالت ACTIVE باشد و آیپی دهد و یا در نقش Standby بوده و وقتی سرور اصلی ( DHCP Primary ) از کارافتاد شروع به فعالیت کند . البته وقتی این سرور شروع به فعالیت کند می تواند به اندازه ای که شما در Addresses Reserved گفتید ارائه آیپی کند

و اگر اطمینان حاصل کرد که دیگر DHCP Server Primary یا همان Active دیگر قادر به ارائه آیپی نیست ( این اطمینان را از مقدار Switchover interval و MCLT بدست خواهد آورد !!توضیح خواهم داد !) ، در آن صورت مالک کل Scope شده و می تواند تمامی بازه IP ها را ارائه کند .

10

و اما نکته مهم دیگر بحث Switch Over interval هست که باید تعیین شود ، شما به کمک این زمان به سرور Partner می فهمانید که عملا بعد از چه مدتی که ارتباط با سرور DHCP اصلی را از دست داده ، سرور مذکور را مرحوم یا مرحومه لحاظ کند و خودش عملا کل scope را سرویس دهد ! الته نکته ظریفی که وجود داد این است

که این مقدار در نهایت با مقدار MCLT جمع شده و سپس بعد از اتمام این زمان سرور دوم از حالت Communication Interrupt ( زمانی که سرور Partner ارتباط با DHCP اصلی را از دست داده اما هنوز امید به بازگشت آن را دارد ) به حالت Partner Down State تبدیل کند و عملا خودش به تنهایی مسئول ارائه آیپی از کل Scope را بر عهده بگیرد .

11

در نهایت می توانید برای انجام Authentication و در واقع بالابر امنیت اطلاعاتی که بین سرور ها رد و بدل میشه می توانید بین سرورهای شرکت کرده در این Fail Over قابلیت Message Authentication را فعال کرد و یک Shared secret برای این کار در نظر بگیرید که پیشنهاد میکنم حد اقل از 14 رم تشکیل شده باشد

12

در نهایت گزارشی از کار های انجام شده را خواهید دید و زدن گزینه Finish کار به پایان خواهد رسید :

13
14

اکنون بر روی سرور Partner رفته و خواهیم دید که scope مورد نظر ساخته شده و تمامی Lease IP ها و تنظیمات ارائه شده در سرور DHCP اصلی در سرور Partner اضافه شده و کاملا با سرور اصلی Sync شده و در ارتباط خواهد بود :

15

در ضمن میتوانید اگر خواستید به صورت دستی هم به Replicate بین سرور ها بپردازید ، کافیست بر روی Scope خود راست کلیک کرده و گزینه Replicate Scope را انتخاب کنید تا این عملیات به صورت دستی هم انجام شود :

16


قطعا برای غیر فعال کردن این امکان کافیست بر روی Scope مورد نظر راست کلیک کرده و گزینه Deconfigure Fail over را انتخاب کنید :

17

همچنین اگر روی Scope مورد نظر راست کلیلک کرده و گزینه properties را انتخاب کنید می توانید در تب Fail over وضعیت Scope ها و شرایط انها را به خوبی رصد کنید :

18

و در نهایت اگر بر روی خود DHCP سرور و در قسمت IPV4 راست کلیک کنید و Properties را انتخاب کنید ، می توانید از تب Fail over وضعیت تنظیمات اعمال شده خود را به خوبی ببینید و بررسی کنید و تغییرات لازم را اعمال و بررسی کنید .

19

امیدوارم این آموزش مورد توجه شما قرار گرفته باشد ، در آموزش بعدی با بحث IPAM با ما همراه باشید .


میلاد اسحاقی
میلاد اسحاقی

کارشناس سرویس های شبکه مایکروسافت

میلاد اسحاقی ، مدرس و مشاور شبکه های مبتنی بر مایکروسافت ، مدیر IT خبرگزاری دانشجو ، بیش از 6 سال سابقه تدریس مستمر در موسسات معتبر و مراکز دولتی ، عاشق یادگیری و آموزش ، عاشق مایکروسافت و سرویس های وابسته ، دارای مدارک بین المللی MCSE 2012 در حوزه مایکروسافت

نظرات