بروتوكول ARP
لكل جهاز كمبيوتر متَّصل على الشبكة عناونين، العنوان الأول: هو عنوان الـ “IP” أي ما يسمَّى بالـ (IP address).
أمَّا العنوان الثانى: فهو العنوان الفيزيائي لكرت الشبكة أي ما يسمَّى بال (mac address).
بالنسبة للـ IP address أو عنوان ال IP : فهو ذلك ال IP المكون من 4 خانات على هذا الشكل “0.0.0.0”، وجميعنا يتعامل معه، فإذا سألت أحدهم ما هو “IP” الخاص بك على الشبكه؟
سوف يُجيبك ويقول مثلاً “192.168.1.2”، وقد يقول آخر “10.0.0.5”
أيّاً كان “IP” فهو دائما يأخذ شكل الأربع خانات كما وضّحنا من قبل، ويطلق عليه ال “IPv4”.
أمّا بالنسبة للعنوان الفيزيائي لكرت الشبكة أي ال “mac address”
فهو نوع أخر من العناوين، يختلف كلياً عن عنوان الـIP، فهو يأخذ شكل آخر يتمثل في 6 خانات مكتوبه بأرقام، تسمَّى بالنظام السَّت عشري (hexadecimal).
ويأخذ الشكل التالي:
00-00-00-00-00-00
أمثلة لبعض العناوين الفيزيائية لكروت الشبكة:
00-1A-4D-8D-CE-AB
00-21-85-15-13-C6
00-0B-6A-CB-B7-EE
ويمكننا تلخيص ما سبق فى نقاط بسيطة كالتالي
- أولاً: مستخدم الجهاز هو الذى يحدِّد عنوان ال (IP address) بنفسه أو عن طريق مدير الشبكة.
- ثانياً: يتكون ال (IP address) وخصوصاً (IPV4) من 4 خانات تفصل كل خانه عن الأخرى بنقطة.
- ثالثاً: يتم تحديد عنوان ال (mac address) مسبقاً من الشركة المصنِّعة لكرت الشبكة.
- رابعاً: يتكون ال (mac address) من 6 خانات، يفصل بين كل خانة بشرطة (-).
ملحوظة: كلمة (mac) هي اختصار للأحرف الأولى من جملة (Media Access Control).
قمت بذكر هذه المقدمة ليستطيع الجميع المتخصِّص وغير المتخصِّص بفهم موضوع بروتوكول الـ “ARP “.
قبل الخوض في بروتوكول ARP، وهو اختصار لـ (Address Resolution Protocol)، لا بدَّ من إلقاء نظرةٍ على الشبكات، حيث تُعتبر الشبكات من الأمور الأساسية في العصر الحديث، ولا يمكن الاستغناء عن التواصل والإنترنت، ولا يمكن تنفيذ أيُّ شيءٍ يتعلَّق بالربط من دون وجود شبكةٍ تربط بين جهازين على الأقل، وإلى جانب أن التقنيات والبروتوكولات التي يقدمها عِلم الشبكات قد وفّرت على البشرية كمّاً هائلاً من الوقت لا يقدَّر بثمنٍ. بالمختصر.. إنَّ الشبكات من المقومات الأساسية التي تقوم عليها البشرية الآن.
دعونا نعرف بعض أساسيات الشبكات، ومن ثمَّ سيكون الحديث عن واحدٍ من أهم تقنياتها، ألا وهو بروتوكول إيجاد العنوَنة الفيزيائية أو كما يسمَّى بروتوكول ARP .
ماذا يعني بروتوكول
يمكن تعريف البروتوكول بأنّه مجموعةٌ من القواعد الثابتة التي تقوم بدورها في تحديد وتنسيق البيانات حتى تتمكن أجهزة الكمبيوتر من استقبالها أو استلامها، وذلك بين الخادم (Server) والموجِّه (Router) إلى النقطة المطلوبة.
عندما يقوم شخصان بإجراء مُحادثة، سيحتاجان إلى استخدام نفس اللغة، ولكنَّهما يفهمان بعضهما البعض بدون الحاجة إلى العودة إلى القواعد الأساسية للغة الرسمية. على الجانب الآخر، فإنَّ الحواسيب، يجب عليها أن تمتلك كل شيء مُعرّف ومبني مسبقاً.
إذا أرادت الحواسيب أن تتواصل مع بعضها البعض، يجب عليهم أن يعرفوا بطريقة مُتقدمة كيفية تبادل المعلومات وماهية الصَّيغة التي ستكون عليها.
لذلك يتم استخدام طرق أساسية لتبادل ومُعالجة الأنواع المُختلفة من المعلومات وسُميت بالبروتوكولات. فالبروتوكولات قد تمَّ تأسيسها بواسطة اتفاقيات دولية للتأكُّد من إمكانية تواصل كل جهاز حاسب مع الجهاز الآخر.
ماذا يعني IP
هو العلامة الرقمية المخصَّصة لكل جهازٍ شبكيٍّ متصلٍ على الشبكة مثال: (كمبيوتر، هاتف نقال، طابعة)، حيث أنَّه يقوم بوظيفةٍ أساسيّةٍ وهي تحديد الهوية الأساسيّة للجهاز.
ما هو بروتوكول ARP؟
وهو اختصار ل (Address Resolution Protocol). بحسب الشركة العالمية سيسكو CISCO، هو بروتوكول يستخدم لمعرفة العنوان الفيزيائي للجهاز عبر الIP المخصَّص لجهازٍ آخرٍ متصلٍ عبر الشبكة يعمل ضمن الشبكات المحلية (LAN).
وتتلخَّص وظيفة هذا البروتوكول فى معرفة ال (mac address) لجهاز من خلال ال (IP address) الخاص به عندما يريد أن يتصل جهازٌ بالآخر؛ لنوضح بمثالٍ بسيطٍ: ليكن لدينا 4 أجهزة A، B، C، D ، الجهاز A يريد الاتصال بالجهاز B، بالتالي يجب على الجهاز A معرفة العنوان الفيزيائي لكي تتم العملية وهذا يتم عبر بروتوكول (ARP) .
إنَّ الطلب الذي يستخدمه بروتوكول ARP يكون بصيغة معينة بالنسبةِ للعنوانِ الفيزيائي فتكون كالتالي “FF:FF:FF:FF:FF”، مربوطاً مع عنوان “IP 255.255.255.255″، حيث أنّه بالعنوان السابق يغطِّي كافة الطبقات وكافة التصنيفات التي قد يدعمها أيُّ تجهيز شبكي.
مبدأ عمل بروتوكول “ARP”
لنفرض أنَّ الجهاز A يريد التواصل مع الجهاز B وهو يتعرَّف الـIP ولكن لا يتعرَّف على العنوان الفيزيائي للجهاز B، فيقوم الجهاز A بإرسال طلب عبر بروتوكول ARP يضع فيه الـ IP للجهاز B، ويكون عنوان الوجهة هو العنوان العام (FF:FF:FF:FF:FF).
وهنا يأتي دور المبدّل Switch في إرسال الطلب إلى كافة الأجهزة المتصلة معه عدا الجهاز الذي تمَّ إرسال الطلب منه، ولن يرد على هذه الرسالة إلّا الجهاز المطلوب أي الجهاز B هنا، والذي بدوره سيقوم باستقبال الرسالة ويقوم بإرسالها إلى الجهاز A مصحوبة بالعنوان الفيزيائي المخصَّص للجهاز.
كما أنَّ جميع الأنظمة الحاسوبيّة والشبكيّة تُنشئ جدولًا ضمن ذاكرة التخزين المؤقَّت لديها، ويتم فيه وضع كافة العناوين الفيزيائية للأجهزة الموصولة على الشبكة المحلية، مطابقةً مع عناوين IP المخصَّصة للتجهيزات ضمن الشبكة، ويوجد الجدول في معظم التجهيزات مثل الكمبيوتر و الموجه (Router) والخادم (Switch). والجدير بالذكر أنَّ العناوين تبقى في الذاكرة لبضع دقائقٍ، ويمكنك عبر أحد الأجهزة المتصلة معرفة العناوين الفيزيائية للأجهزة المتصلة معك عبر كتابة الأمر التالي في موجِّه الأوامر”CMD”:
arp –a كما هو موضح في الشكل التالي:
ملاحظة: تم تنفيذ هذه التعليمة وفق نظام Windows.
العناوين الموضَّحة بالشكل السابق هي عناوين الأجهزة المتَّصلة عبر الشبكة المحلية الموصول عليها الجهاز التي تمَّ تنفيذ الأمر السابق عليه.
ماذا يعني (ARP poisoning)؟
هو أحد أشهر أنواع الهجمات الشهيرة في عالم الشبكات، حيث يقوم المهاجم بإنشاء طلب ARP مزيف عبر الشبكة المحلية يتصل بالمخدم الأساسي للأجهزة المضيفة ضمن الشبكة، وبعد وصول الطلب.
يبدأ المهاجم في تلقي البيانات المخصَّصة للمستخدم الأساسي الذي قام بالهجوم عليه، وعندها يمتلك الصلاحية الكاملة في البيانات من حيث التعديل، الحذف، أو إيقاف حركة البيانات ضمن الشبكة.