ما هو بروتوكول DHCP؟ شرح مبسط لكيفية توزيع عناوين IP تلقائيًا على الأجهزة (Dynamic Host Configuration Protocol)
السلام عليكم ورحمة الله وبركاته، أهلاً بك. في المقال ده هنتكلم عن واحد من أهم البروتوكولات في عالم الشبكات وهو DHCP، وهنعرف وظيفته وكيف بيساعد الأجهزة تتصل بالشبكة بدون إدخال عنوان IP وإعدادات الاتصال يدويًا.
قبل كده اتكلمنا عن ما هو IP Address وشرحنا أهمية عنوان IP في الاتصال بين الأجهزة. لكن تخيّل لو عندك شبكة فيها 20 أو 50 أو 200 جهاز، هل منطقي تكتب إعدادات IP يدويًا لكل جهاز؟ هنا بييجي دور بروتوكول DHCP – Dynamic Host Configuration Protocol.
|
| وظيفة DHCP في الشبكات وطريقة تخصيص عناوين IP للأجهزة بشكل تلقائي |
بروتوكول DHCP ببساطة بيسمح لجهازك يحصل على عنوان IP وإعدادات شبكة مناسبة تلقائيًا من الراوتر أو خادم DHCP. وده اللي بيحصل عادةً لما توصل الموبايل أو اللابتوب بشبكة Wi-Fi وتكون إعدادات الحصول على IP مضبوطة على الوضع التلقائي.
ما هو DHCP؟
كلمة DHCP اختصار لـ Dynamic Host Configuration Protocol ومعناها بالعربية بروتوكول التهيئة الديناميكية للمضيف.
وظيفة البروتوكول إنه يوفر إعدادات الشبكة للأجهزة تلقائيًا من خادم مخصص، بدل ما يضطر المستخدم لإدخال الإعدادات يدويًا.
- توزيع عناوين IP المناسبة للأجهزة.
- تحديد Subnet Mask في شبكات IPv4.
- توفير عنوان Default Gateway عند ضبط هذا الخيار.
- توفير عناوين DNS Servers.
- إرسال إعدادات إضافية حسب احتياجات الشبكة.
يعني بدل ما تدخل عنوان IP وقناع الشبكة والـGateway والـDNS يدويًا لكل جهاز، بيقدر DHCP يوفر الإعدادات المطلوبة بطريقة تلقائية. وده نفس الدور الذي توضحه وثائق Microsoft الرسمية عن DHCP Server.
في معظم الشبكات المنزلية الراوتر نفسه بيشتغل كخادم DHCP، بينما الشركات والمؤسسات ممكن تستخدم خادمًا مستقلًا أو أجهزة شبكات متخصصة لإدارة توزيع العناوين.
لماذا نحتاج إلى DHCP بدل إعداد IP يدويًا؟
من الممكن تشغيل شبكة باستخدام عناوين IP يتم ضبطها يدويًا، لكن إدارة عشرات أو مئات الأجهزة بهذه الطريقة بتكون أصعب، خصوصًا مع إضافة أجهزة جديدة أو تغيير إعدادات الشبكة.
- كل جهاز جديد يحتاج إدخال الإعدادات الصحيحة.
- الخطأ في عنوان IP أو Subnet Mask قد يمنع الاتصال.
- تخصيص العنوان نفسه لأكثر من جهاز قد يسبب IP Conflict.
- تغيير إعدادات الشبكة يدويًا على أجهزة كثيرة يستغرق وقتًا.
DHCP بيساعد في تقليل الأخطاء وتسهيل الإدارة وتوزيع العناوين من نطاق محدد. لكن العنوان الموزع تلقائيًا مش شرط يتغير في كل مرة؛ ممكن الجهاز يحتفظ بنفس العنوان خلال تجديد الحجز طالما الخادم يسمح بذلك.
وهنا لازم نفرّق بين طريقة الحصول على عنوان تلقائي وطريقة تثبيته يدويًا، وده شرحناه بالتفصيل في مقال الفرق بين Static IP وDynamic IP.
كيف يعمل DHCP؟ شرح مراحل DORA
عندما يحصل جهاز على عنوان IPv4 جديد من خادم DHCP، تمر العملية المعتادة بأربع رسائل رئيسية يُشار إليها باختصار DORA.
وهي: Discover – Offer – Request – Acknowledge.
|
| المراحل الأربع التي يستخدمها DHCPv4 لتوزيع عنوان IP |
| المرحلة | الاسم | ماذا يحدث؟ |
|---|---|---|
| 1 | Discover | الجهاز يبحث عن خادم DHCP متاح. |
| 2 | Offer | الخادم يعرض عنوان IP وإعدادات مناسبة. |
| 3 | Request | الجهاز يطلب استخدام العرض الذي اختاره. |
| 4 | Acknowledge | الخادم يؤكد تخصيص العنوان ومدة الحجز. |
1. مرحلة Discover – الاستكشاف
في البداية يرسل الجهاز رسالة استكشاف DHCPDISCOVER للبحث عن خادم DHCP. في الحالة المعتادة من DHCPv4 تُرسل الرسالة كبث عام Broadcast على الشبكة المحلية، لأن الجهاز لم يحصل بعد على عنوان IPv4 مناسب.
2. مرحلة Offer – العرض
يرد خادم DHCP برسالة DHCPOFFER تتضمن عرضًا لعنوان IP متاح ومدة الحجز ومعلومات إعداد أخرى حسب ضبط الشبكة.
3. مرحلة Request – الطلب
يرسل الجهاز رسالة DHCPREQUEST يحدد فيها العرض الذي يريد استخدامه. وقد يتلقى الجهاز أكثر من عرض إذا وُجد أكثر من خادم DHCP على الشبكة.
4. مرحلة Acknowledge – التأكيد
يرسل الخادم المختار رسالة DHCPACK لتأكيد تخصيص العنوان والإعدادات ومدة الحجز Lease Time. وبعد اكتمال العملية يستطيع الجهاز استخدام الإعدادات الجديدة للاتصال بالشبكة.
|
| مخطط رسائل Discover وOffer وRequest وACK في DHCP |
مراحل DORA السابقة تخص عملية الحصول الأولية على عنوان في DHCPv4. أما تجديد العنوان فقد يتم برسائل مختلفة دون تكرار المراحل الأربع بالكامل. كذلك يستخدم DHCPv6 رسائل وآليات مختلفة. ولمن يريد التفاصيل التقنية الدقيقة، يمكن مراجعة المواصفة الرسمية DHCP RFC 2131 التي تشرح عمل البروتوكول ورسائله.
إذا فشل الجهاز في الحصول على عنوان IPv4 من DHCP، فقد يستخدم Windows عنوانًا محليًا تلقائيًا يبدأ بـ 169.254 في حالة تفعيل APIPA. وده غالبًا يدل على مشكلة في الحصول على الإعدادات المطلوبة، لكنه مش دليلًا وحده إن خادم DHCP متوقف تمامًا.
أهم مصطلحات DHCP التي يجب أن تعرفها
- Scope: نطاق عناوين IP المسموح للخادم بتوزيعها، مثل 192.168.1.50 إلى 192.168.1.200.
- Lease Time: المدة التي يحصل خلالها الجهاز على حق استخدام عنوان IP المخصص له.
- Reservation: حجز عنوان معين لجهاز محدد حتى يحصل عليه من DHCP عند اتصاله.
- Exclusion: استبعاد عناوين معينة من التوزيع التلقائي.
- Default Gateway: البوابة المستخدمة للوصول إلى الشبكات الأخرى، وغالبًا تكون الراوتر.
- DNS Server: الخادم الذي يساعد في تحويل أسماء النطاقات إلى عناوين IP.
هل يتغير عنوان IP بعد انتهاء Lease Time؟
ليس بالضرورة. غالبًا يحاول الجهاز تجديد الحجز قبل انتهاء مدته، وقد يحتفظ بعنوان IP نفسه بعد التجديد. وفي حالات أخرى قد يحصل على عنوان مختلف إذا تغيرت إعدادات الخادم أو انتهى الحجز وأُعيد تخصيص العنوان.
ما الفرق بين DHCP وStatic IP؟
الفرق الأساسي أن DHCP يقوم بتوزيع إعدادات العنوان تلقائيًا، بينما Static IP يعني أن عنوان الجهاز محدد بصورة ثابتة. لكن يوجد تفصيل مهم: يمكن حجز عنوان ثابت لجهاز معين داخل DHCP نفسه، وبالتالي الحصول عليه تلقائيًا في كل مرة.
|
| الفرق بين التوزيع التلقائي للعناوين وضبط IP بصورة ثابتة |
| العنصر | DHCP | Static IP يدوي |
|---|---|---|
| طريقة التعيين | تلقائي من خادم DHCP | يدوي على الجهاز |
| الاستخدام | الأجهزة المنزلية والمكتبية | أجهزة تحتاج إعدادًا ثابتًا |
| إدارة الشبكة | أسهل في الشبكات الكبيرة | تحتاج ضبطًا ومتابعة يدويين |
| تغيير العنوان | قد يتغير، وليس بالضرورة | يبقى ثابتًا حتى تغييره |
ولو محتاج تعرف إمتى تختار كل نوع في شبكتك، راجع الشرح المتخصص عن استخدام Static IP وDynamic IP.
طرق تخصيص العناوين في DHCP
توضح المواصفة الأساسية لـ DHCP ثلاثة أساليب لتخصيص العناوين:
- Automatic Allocation: تخصيص عنوان بصورة دائمة للعميل وفق سياسة الخادم.
- Dynamic Allocation: تخصيص العنوان لمدة محددة قابلة للتجديد.
- Manual Allocation: تحديد العنوان إداريًا ثم استخدام DHCP لتوصيله للجهاز.
النوع الأخير مرتبط بفكرة الحجز الإداري للعناوين، ولا يعني بالضرورة إدخال إعدادات IP يدويًا داخل نظام تشغيل الجهاز.
|
| طرق تخصيص عناوين IP باستخدام DHCP |
مثال عملي: DHCP في الراوتر المنزلي
في أغلب المنازل، الراوتر هو المسؤول عن توزيع عناوين IP الداخلية على الأجهزة المتصلة بالواي فاي أو بكابل Ethernet.
لو فتحت إعدادات الراوتر، غالبًا هتلاقي قسم باسم LAN Settings أو DHCP Server.
ومن خلاله يمكن، حسب نوع الراوتر، التحكم في:
- تشغيل أو إيقاف DHCP Server.
- تحديد نطاق عناوين IP المتاحة.
- ضبط مدة الحجز Lease Time.
- حجز عنوان IP لجهاز معين.
- بعض إعدادات DNS والشبكة الداخلية.
لو عندك طابعة شبكة أو كاميرا مراقبة أو جهاز NAS وعايز عنوانه يفضل ثابت، ممكن تستخدم DHCP Reservation من إعدادات الراوتر. ده غالبًا أسهل في الإدارة من ضبط عنوان ثابت يدويًا على الجهاز، بشرط دعم الراوتر للميزة وإعداد الحجز بصورة صحيحة.
DHCP في الشبكات الكبيرة والشركات
الشركات والمؤسسات ممكن تستخدم خوادم DHCP مستقلة بدل الاعتماد على راوتر منزلي. فمثلًا يوفر Windows Server خدمة DHCP Server لإدارة العناوين ونطاقات التوزيع وحجوزات الأجهزة، ويمكن للمسؤول ضبطها ومراقبتها من مكان مركزي.
أما في Linux، فمن الخيارات الحديثة Kea DHCP الذي تطوره مؤسسة ISC. وكان برنامج ISC DHCP القديم المعروف باسم dhcpd أو isc-dhcp-server مستخدمًا على نطاق واسع، لكنه انتهى دعمه وصيانته من ISC في 2022. لذلك من الأفضل استخدام حل مدعوم مثل Kea DHCP عند إنشاء بيئة جديدة.
وفي المؤسسات، مسؤول الشبكة ممكن يحدد Scope لكل شبكة فرعية أو VLAN، ويستخدم DHCP Relay لتمرير الطلبات إلى خادم DHCP موجود في شبكة مختلفة، بدل الحاجة إلى تشغيل خادم مستقل داخل كل شبكة.
مميزات وعيوب استخدام DHCP
أولًا: مميزات DHCP
- تقليل الأخطاء الناتجة عن إدخال إعدادات IP يدويًا.
- سهولة إدارة الشبكات التي تضم أجهزة كثيرة.
- إمكانية تغيير إعدادات التوزيع من مكان مركزي.
- دعم حجز عناوين محددة للأجهزة المهمة.
- تسهيل اتصال الأجهزة الجديدة بالشبكة.
ثانيًا: عيوب وتحديات DHCP
- إذا تعطل خادم DHCP فقد تفشل الأجهزة الجديدة في الحصول على عنوان.
- قد تتأثر الأجهزة التي تنتهي حجوزاتها إذا تعذر تجديدها، بينما قد تستمر أجهزة أخرى في العمل مؤقتًا بإعداداتها الحالية.
- وجود خادم DHCP غير مصرح به قد يؤدي إلى توزيع إعدادات غير صحيحة.
- يحتاج مسؤولو الشبكات الكبيرة إلى مراقبة نطاقات العناوين وحمايتها من سوء الإعداد.
ومن المشكلات الأمنية المعروفة Rogue DHCP، وهي وجود خادم DHCP غير مصرح به يوزع عناوين أو إعدادات مختلفة. قد يحدث ذلك مثلًا عند توصيل راوتر إضافي بالشبكة مع تشغيل DHCP عليه بصورة غير مقصودة. وفي الشبكات الاحترافية يمكن استخدام خصائص مثل DHCP Snooping عند دعم أجهزة الشبكة لها، مع ضبط المنافذ الموثوقة بصورة صحيحة.
ماذا تفعل إذا لم يحصل جهازك على IP من DHCP؟
إذا كان الجهاز متصلًا بالشبكة لكن الإنترنت لا يعمل، أو وجدت عنوان IPv4 يبدأ بـ169.254 بدل العنوان المتوقع من الراوتر، اتبع الخطوات التالية بالترتيب:
- تأكد من توصيل كابل الشبكة أو الاتصال بشبكة Wi-Fi الصحيحة.
- افصل الاتصال بالشبكة ثم اتصل بها مرة أخرى.
- إذا كانت المشكلة موجودة على كل الأجهزة، راجع الراوتر وحالة DHCP Server.
- تأكد أن إعداد IPv4 على الكمبيوتر مضبوط على Obtain an IP address automatically إذا كانت الشبكة تستخدم DHCP.
- على Windows افتح Command Prompt ثم نفذ أمر ipconfig /all لفحص عنوان IPv4 والـGateway وخادم DHCP.
- إذا استمرت المشكلة، جرّب تجديد إعدادات DHCP بالأوامر الموضحة أدناه.
- استخدم Network Reset كخيار لاحق إذا فشلت الخطوات الأبسط، مع مراعاة أنه قد يعيد إعداد محولات الشبكة وبعض إعداداتها.
على Windows، يمكنك تشغيل Command Prompt ثم تنفيذ:
ipconfig /all
ipconfig /release
ipconfig /renew
أمر ipconfig /release يحرر إعدادات DHCP الحالية، وقد يؤدي إلى انقطاع الاتصال مؤقتًا، بينما يحاول ipconfig /renew الحصول على إعدادات جديدة أو تجديدها. لا تستخدم هذه الأوامر بشكل عشوائي على جهاز تتصل به عن بُعد، لأن الاتصال قد ينقطع.
أما الأمر التالي فهو لتنظيف ذاكرة DNS المحلية، وليس لإجبار خادم DHCP على توزيع عنوان:
ipconfig /flushdns
إذا كانت المشكلة في فتح المواقع بأسمائها مع وجود اتصال بالشبكة، اقرأ طريقة عمل Flush DNS في Windows. أما لو استمرت مشاكل إعدادات الاتصال بعد الخطوات الأبسط، فيمكن مراجعة شرح إعادة تعيين إعدادات الشبكة Reset Network مع الانتباه إلى أن إعادة الضبط قد تزيل بعض إعدادات الشبكة المخصصة.
ولو مش عارف تحدد عنوان IP الحالي لجهازك قبل التشخيص، يمكنك متابعة طريقة معرفة IP Address الكمبيوتر ثم مقارنة العنوان بنطاق الشبكة الموجود في إعدادات الراوتر.
وفي الشبكات الكبيرة قد تحتاج المشكلة إلى فحص Scope أو امتلاء نطاق العناوين أو وجود DHCP Relay غير مضبوط. تشرح إرشادات Microsoft الرسمية لتشخيص مشاكل DHCP خطوات إضافية لفحص العميل والخادم عند التعامل مع Windows Server.
الأسئلة الشائعة حول بروتوكول DHCP
ما هو بروتوكول DHCP باختصار؟
DHCP هو بروتوكول يسمح للأجهزة بالحصول على عناوين IP وإعدادات الشبكة تلقائيًا من خادم DHCP دون إدخالها يدويًا.
هل يمكن تشغيل الشبكة بدون DHCP؟
نعم، يمكن استخدام عناوين IP ثابتة يتم إدخالها يدويًا، لكن إدارة الأجهزة بهذه الطريقة تصبح أصعب مع زيادة عددها.
هل الأفضل تشغيل DHCP في الراوتر أم إيقافه؟
في معظم الشبكات المنزلية يُفضّل ترك DHCP مفعّلًا على الراوتر. أما إذا كانت الشبكة تحتوي على خادم DHCP آخر مسؤول عن التوزيع، فيجب تنسيق الإعدادات لمنع التعارض.
متى أحتاج Static IP بدل DHCP؟
قد تحتاج عنوانًا ثابتًا لأجهزة مثل السيرفرات والطابعات والكاميرات. ويمكن تحقيق ذلك بضبط Static IP يدويًا أو باستخدام DHCP Reservation حسب طبيعة الشبكة.
هل DHCP يؤثر على سرعة الإنترنت؟
DHCP لا يزيد سرعة الإنترنت مباشرةً، لكنه مسؤول عن توزيع إعدادات الاتصال. وقد تسبب الإعدادات غير الصحيحة مشاكل في الوصول للشبكة أو الإنترنت.
ما سبب ظهور عنوان IP يبدأ بـ169.254؟
في Windows قد يكون عنوان APIPA، ويظهر عادةً عندما تكون إعدادات IPv4 تلقائية ولا يتمكن الجهاز من الحصول على عنوان مناسب من DHCP.
هل يتغير عنوان IP في كل مرة يتصل فيها الجهاز بالشبكة؟
لا، فقد يحتفظ الجهاز بالعنوان نفسه عند تجديد حجز DHCP، وقد يتغير في ظروف أخرى وفق إعدادات الخادم وحالة العنوان.
الخلاصة
بروتوكول DHCP من أهم الخدمات المستخدمة في الشبكات، لأنه يسهّل توزيع عناوين IP وإعدادات الاتصال تلقائيًا، ويقلل الحاجة إلى ضبط كل جهاز بصورة يدوية.
فهم طريقة عمل DHCP ومراحل DORA ومدة الحجز Lease Time والفرق بين DHCP وStatic IP هيساعدك في فهم الشبكات المنزلية والشركات، وتشخيص بعض مشاكل الاتصال بطريقة أكثر دقة.