سلام به همه
مدتی هست که کم و بیش می بینم سوالات مختلفی در زمینه نحوه عملکرد DHCP پرسیده میشه. بد ندیدم که در یک تاپیک و شاید در قالب یکی دو پست این مبحث رو تا حدی توضیح بدم. البته با اجازه اساتید . سعی هم می کنم کاربردی بگم ولی ذکر برخی نکات ضروری ست.

تعریف IP Address:
آدرسی که در لایه سوم مدل OSI مفهوم پیدا می کنه و به Logical Address هم معروف هست(کمتر شنیده میشه) . دلیل استفاده از واژه Logic هم خواهید فهمید. این آدرس از چهار بخش تشکیل میشه که عددی بین 0 تا 255(مجموعا 256 رقم) را شامل می شوند. یعنی هر بخش 8 بیت و در مجموع 32 بیت . این آدرس بسته به منطق شما و نحوه معماری شبکه شما قابل تغییر و تعریف هست,

صرفه نظر از کلاس IP ها که خواهش می کنم بیرون از تاپیک مطالعه کنید، سه رنج از آدرس های IP را می توان در طراحی شبکه محلی استفاده نموده و بسته به نیاز به رنج های مختلف شکاند( Subnet بندی):

10.0.0.0 الی 10.255.255.255
172.16.0.0 الی 172.31.255.255
192.168.0.0 الی 192.168.255.255

بله! همانطور که دیدید حالا متوجه می شیم که چرا شبکه های LAN که تا به حال دیده ایم شبیه این آدرس ها هستند! اما سوالیی که ذهن بعضی ها رو قلقلک میده اینه که اگر از آدرس دیگری در شبکه خودمان استفاده کنیم چه مشکلی پیش خواهد آمد!؟
جواب مشخص است. آدرس هایی که در این سه دسته قرار نگیرند آدرس هایی هستند که در سطح اینترنت مورد استفاده قرار می گیرند و به آدرس های Public معروف هستند. در صورتی که آنها را در شبکه خود قرار دهید ممکن است در مسیریابی های خارج از شبکه به مشکل بخورید.
فرض کنید شما شبکه خود را در رنج 2.2.3.0 قرار دهید و این در حالی است که آدرس 2.2.3.25 مثلا آدرس یک سایت اینترنتی است. حالا وقتی درخواست شما برای رفتن به این آدرس به روترهای مرزی شبکه شما می رسد، یه جای بیرون رفتن از طریف Default Route یا هر مکانیسم دیگر، بسته به دلیل هم رنج بودن آدرس مبدا و مقصد به خارج از شبکه هدایت نمی شود!!!! بله! شما رفتید تو دیوار دوستان.

بر عکس این جریان هم وجود داره! این سه رنج اشاره شده قابل ست شدن در دنیای اینترنت نیست و البته اصلا قابل مسیر یابی هم نیست. چون هیچ روتری وظیفه هدایت بسته به این مقاصد رو نداره! یعنی بلد نیست!! شما هم وقتی به اینترنت میرید با این آدرس ها نمیرید. از طریق مکانیسمی تحت عنوان NAT آدرس شما موقع خروج از شبکه به آدرسی که ISP به شما اختصاص داده تغییر می کنه تا جواب های اینترنتی قابل برگشت به شما باشه. ( برای NAT بعدا تاپیک میزنیم)

حالا که به ارزش این آدرس پی بردید تا حدودی، بد نیست بدونیم که چطور در شبکه های LAN می شود این آدرس را به کامپیوتر ها و سرور ها و تجهیزات اختصاص داد.

روش اول: روش اول تخصیص آدرس های IP به شکل ایستا(Static) هست. در این روش شما یک آدرس تغییر ناپذیر بر اثر گذر زمان و یا روشن و خاموش و ریست شدن به کامپیوتر، سرور و یا تجهیزات اختصاص می دید. مزیت این است که شما همیشه آدرس آن عنصر رو در شبکه بلد هستید .
روش دوم: تخصیص آدرس اتوماتیک و تغییر پذیر بر اثر گذر زمان، ریست شدن و هر عملی که موجب ارسال یک درخواست جدید بشود(Dynamic).
خب!!!! همینجا ترمز می کنیم! موضوع بحث ما اینجاست .
اول بد نیست یکی دو تا ایراد اساسی از ایرادات روش Static رو بدونید. فرض کنید که رنج تعریفی شما دیگه ظرفیتش پر شده باشه ویا به هر دلیلی قرار باشه آدرس ها تغییر کنه و سازمان شما هم 200 تا کامپیوتر داره!! بله باید فاتحه برای خودتون بخوانید(دور از جون البته). فکر کن یک سالی سر کار باشید! هر تغییری یعنی یک تغییر عمده برای کل شرکت. ضمن اینکه ممکنه یه جا یه اشتباه کاربری رخ بده و برای رفعش کلی زمان از دست بدید.

چاره کار؟؟ روش دوم تخصیص آدرس است . سرویسی که این وظیفه رو ایجاد می کنه DHCP یا Dynamic Host Configuration Protocol نام داره. البته شما هم مثل من DHCP رو یاد بگیرید و از حفظ کامل این چرندیات دوری کنید(سلیقه من اینجوره که با این چیزا کاری ندارم. ترجیه میدم کارشو یاد بگیرم و درک کنم تا اسمش رو)

این سرویس کارش اینه که بشینه و منتظر بشه هر وقت درخواست دریافت IP بهش رسید یه IP از بانک خودش به اون اختصاص بده. به این بانک IP میگن Address Pool . به کامیپوتری یا ماشین مجازی یا سوئیچی که این سرویس رو اجرا می کنه هم میگن DHCP Server. بله بله بله! تعجب نداره که بدونید بسیاری از سوئیچ ها هم این سرویس رو می توانند بدهند. مودم ADSL شما هم این روزا این کار رو میکنه.

اما نحوه عملکرد DHCP:
1. ماشین در خواستی تحت عنوان DHCP Request می فرسته( از کجا می فهمند که این DHCP Request هست؟ از اونجا که وقتی هدر بسته رو باز می کنند می بینند Source IP برار هست با چهار تا 0 کله گنده! یعنی من Ip ندارم، IP می خوام).

2.حالا بسته یا از طریق Broadcast یا از طریق DHCP Relay Agent می رسه به دست DHCP Server. او هم در پاسخ DHCP Offer می فرسته. یعنی بهش IP و سایر Option ها مثل دیفالت گیتوی و ... رو پیشنهاد میده

3. بسته می رسه دست کامپیوتری که اول بازی رو شروع کرده و آدرس رو می گیره و در پاسخ پیغامی می فرسته تحت نام Request. یه جورایی میگه آقا من اینو پسندیدم ، بی زحمت برای من کادوش کن!

4. سرور پیغام رو می گیره و در جواب acknowledge می فرسته. میگه زدم به نامت ! مال خودته آقا قابلتو نداره و بدون که من اینو دادم به شما.

اینم عکس مراحل از سایت Technet شرکت Microsoft:


در ارسال بعد خواهیم آموخت:

1. Relay Agent چیست؟
2. Option های همراه IP یعنی چی؟
3. IP lease Duration چیست ؟
4. تخصیص آدرس از رنج های مختلف توسط DHCP Server به شکل اتوماتیک.

امیدوارم تا اینجا مفید بوده باشه



موضوعات مشابه: