في تدوينتي لهذا اليوم سوف نستعرض سريعا احد العائلات المعروفة في الشبكات وهي عائلة الـ ARP Protocol والتى تضم عدة بروتوكولات أو أفضل أحيانا أن أقول عنها مصطلحات مثل الـ ARP, IARP, RARP, PARP, GARP والتى سوف نتناولها في فقرة سريعة من خلال هذه التدوينة
Address Resolution protocol ARP : قد يكون الحديث عن هذا البروتوكول مثل حديثنا عن الأحرف في لغة ما فهو أحد أهم البروتوكولات الموجودة في عالم الشبكات فهو هام جدا وفي نفس الوقت خطر جدا وتعود أهميته للوظيفة المحورية التى يقوم بها على الشبكة فهو يقوم بعملية تحديد العنوان الفيزيائي أو Mac Address لأيبي معلوم عندنا من قبل وأبسط مثال على ذلك هو الـ Gateway للشبكة فلو في حال أردنا الوصول إلى شبكات آخرى أو الأتصال مع الأنترنت يتوجب هذا علينا تحديد أيبي المنفذ الذي يربطنا مع الروتر والذي يطلق عليه Gateway لذا نقوم يدويا بتحديده أو يتم أرساله لنا أوتماتيكيا من خلال الـ DHCP ومن المؤكد أنك سوف تلاحظ أننا حددنا الأيبي فقط ولم نحدد الماك أدريس وطبعا بدونه سوف لن تتم عملية الأتصال مع المنفذ لذا يأتي دور بروتوكول الـ ARP لكي يقوم أوتماتيكيا بالبحث وتحديد الماك أدريس من خلال أرسال طلب خاص يسأل فيه الأجهزة الموجودة على الشبكة عن عنوان الماك أدريس لهذا الأيبي أما خطورته فهي تكمن في عملية تزوير مثل هذه الأنواع من الرسائل والتى تكلمت عنها في تدوينة سابقة تحت عنوان هجوم الـ ARP Spoofing وكيفية التصدي له ؟ .
يعد هذا البروتوكول أحد بروتوكولات الطبقة الثالثة وقد تتسائل معي عن سبب وضعه في الطبقة الثالثة مع أنه يؤدي وظيفة خاصة بالطبقة الثانية والسبب بسيط جدا وسوف أبسطه لكم من خلال هذا المثال البسيط : لنفرض أن لدينا طفل قمنا بتعليمه العد من الواحد إلى خمسة وبعد أن أنتهى من حفظها طلبنا منه فجأة أن يعد من واحد إلى عشرة والفكرة هنا ذاتها فنحن هنا نحتاج إلى معرفة ماك أدريس ينتمي للطبقة الثانية لأيبي ينتمي إلى الطبقة الثالثة وكما نعرف أن الطبقة الثانية لاتفهم شيء أسمه أيبي لذا يتوجب علينا أن نتجه للطبقة الثالثة وبالتالي نحن نقوم بتعليم الطفل العد من واحد إلى عشرة أي نتجه إلى الأعلى وبعدها نطلب منه أن يعد من واحد إلى خمسة لأنه عندها سوف يكون قادر على هذه المهمة وهي أجابتي لأحد الأشخاص الذي سألني عنها على الخاص .
هل تعلم أن هذا البروتوكول سوف ينتهي عمره قريبا لانه يستخدم مع الأيبي V4 فقط وهل تعلم أن موسوعة الويكيبيديا تحوي على شرح لهذا البروتوكول بكل لغات العالم تقريبا بأستثناء اللغة العربية
Inverse Address Resolution Protocol INARP: وهو بروتوكول شبيه لفكرة الـ ARP لكن مع أختلاف هام فهو يقوم بعكس العملية التى يقوم بها الآخير أود أن أنبه إلى خطأ كبير يقع فيه الكثير من الناس وهو تعريفهم بأن هذا البروتوكول يقوم بتحديد الأيبي لماك أدريس معلوم وهذا خطأ فادح لأن هذا البروتوكول يقوم بعكس عملية الـ ARP لكن ليس على مستوى الماك والأيبي بل على مستوى الطبقة الثانية والثالثة لذا أنا أعرفه بأنه بروتوكول يقوم بتحديد عنوان الطبقة الثالثة لي عنوان على الطبقة الثانية لأن الفائدة الحقيقية لهذا البروتوكول هي في شبكات الـ Frame Relay أو الـ ATM وتحديدا عند البحث عن أيبي لـ DLCI معروف عندنا .
Reverse Address Resolution Protocol
RARP: هو أيضا بروتوكول يعمل على نفس مبدأ بروتوكول الـ INARP لكن هنا يقوم بإيجاد الأيبي لعنوان فيزيائي معروف Mac Address وأستخدامه وفائدته سوف أتركها لتدوينة آخرى سوف أتكلم فيها عن مقارنة من نوع آخر وهو سوف يكون من بين أعضائها.
Proxy ARP
PARP: حقيقة هذا لايعد بروتوكولا بل هو طريقة أو أسلوب أو آلية تساعد بروتوكول الـ ARP فنحن نعلم أن الـ ARP لكي يرسل Broadcast يسأل فيه عن الماك أدريس لأحد الأيبيات لكن لنفرض أن الجهاز رقم واحد يحتاج إلى معرفة ماك أدريس لأيبي موجود في شبكة آخرى(جهاز أثنان) مع العلم أن الـ Gateway هنا غير محدد على الجهاز رقم واحد والحل كان من خلال تفعيل هذه الخاصية على الروتر لكي تقوم بالرد على طلبات الـ ARP المتوجه إلى شبكة آخرى بالماك أدريس الخاص بالمنفذ الموصول مع الجهاز رقم واحد .
أتمنى أن لا أكون قد عقدت الأمور وعلى كل حال هذا رابط من منتدى عرب هاردوير فيه شرح جميل لهذه الخاصية .
Gratuitous ARP GARP: لو قمنا بترجمة كلمة Gratuitous إلى العربية لوجدنا معناها الحرفي بلا سبب أي ARP بلا سبب فهل يعقل أن يكون هناك شيء بلا سبب ؟ بعد البحث والتقصي توصلت إلى ان هناك بعض الحالات التى يقوم فيها أحد الاجهزة الموجودة على الشبكة مثل روتر سويتش جهاز كمبيوتر بأرسال Request ARP لكن يطلب فيه شيء غريب ؟ فهو يقوم بأرسال الأيبي الخاص به ؟ وهو سبب تسميته بي ARP غير مبرر أو بلا سبب ولكن في الحقيقة هناك عدة أسباب يقوم فيها هذا الجهاز بأرسال هذا الطلب ومنها
عندما يستلم أحد الروترات دفة الامور في بروتوكول الـ HSRP يقوم بأرسال مثل هذا الطلب لكي يقوم بتحديث الـ Arp Cashe على باقي الاجهزة الموجودة على الشبكة ولنسبط الموضوع أكثر لنفرض أن أحد الاجهزة تم تغيير الماك أدريس فيه ويريد أعلام باقي الأجهزة بهذا التغيير لذا فهو يقوم بأرسال ARP request يضع فيه الماك أدريس الخاص به كا Source ويضع الأيبي الخاص به ويقوم بأرسال على شكل Broadcast لكي يتم أعلام كل النقاط الموجودة على الشبكة وهناك فائدة كبيرا جدا له وهي تحديد الـ Conflict للأيبيات الموجودة في الشبكة لأن لو عدنا إلى مثالنا السابق وتحديدا عند أطلاق البرودكاست للشبكة ماذا يجب أن يحدث لهذا الطلب ؟ والجواب طبعا هو تجاهله من خلال كل الاجهزة الموجودة لأن المرسل هو صاحب الأيبي وبالتالي لايوجد أحد عنده هذا الأيبي غير المرسل لكن لنفرض مثلا أن أحد الأجهزة قد رد على هذا الـ ARP عندها نعلم أن لدينا Conflict لهذا الأيبي على الشبكة وهي الطريقة التى يكتشف فيها نظام التشغيل أيا كان وجود conflict في الشبكة .
هذا ما لدي لكم أتمنى ان تكونوا قد استفدتوا من هذا الموضوع الهام جدا برائي أترككم برعاية الله وحفظه حتى أقرب فرصة وطبعا لانطلب منكم إلا الدعاء ودمتم بود