ARP چیست؟

تعریف

پروتکل ARP یا Address Resolution Protocol یک پروتکل لایه دو است، که کار آن به دست آوردن آدرس لایه دو یا همان آدرس فیزیکی مقصد، معروف به MAC، از روی آدرس لایه سه‌-ای یعنی IP است.

فرض کنید کامپیوتر A که IP آن ۱۹۲.۱۶۸.۱.۱۰۰/۲۴ است، قصد دارد بسته‌ای به کامپیوتر B که IP آن ۱۹۲.۱۶۸.۱.۲۰۰/۲۴ است ارسال کند. آدرس فیزیکی یا همان MAC Address کامپیوتر A برابر با AA.AA.AA.AA.AA.AA است. هنگام تشکیل بسته در لایه دو نیاز به Destination-MAC یا همان آدرس MAC مقصد دارد. در ابتدا کامپیوتر A به جدول ARP خود که معروف به ARP Cache یا ARP Table است نگاه می‌کند. در این جدول آدرس‌های IP با آدرس‌های MAC متناظر یا Bind شده‌اند. یعنی MAC آدرسی برای این IP آدرس موجود است. کامپیوترها به کمک این جدول می‌توانند بسته‌های خود را کامل کرده و ارسال کنند.

حال اگر کامپیوتر A هیچ اطلاعی از آدرس MAC کامپیوتر B نداشته باشد، یعنی در جدول خود آدرس MAC کامپیوتر B را نداشته باشد باید چه کند؟

جواب ساده است. باید درخواست ARP ارسال کند و خواستار آدرس MAC کامپیوتر B شود.

پس یک بار دیگر با هم مرور می‌کنیم :

کامپیوتر A برای ارسال بسته به کامپیوتر B، آدرس IP آن یعنی ۱۹۲.۱۶۸.۱.۲۰۰ را دارد. ولی آدرس MAC کامپیوتر B را ندارد و هیچ فریمی تا کامل نشدن آن ارسال نمی‌شود. پس کامپیوتر A نگاهی به جدول ARP خود می‌کند تا آدرس MAC کامپیوتر B با آدرس IP برابر با ۱۹۲.۱۶۸.۱.۲۰۰ را پیدا کند. در صورت داشتن آن، فریم را کامل کرده و ارسال می‌کند و در صورت نداشتن آن باید به کمک پروتکل ARP درخواست خود را در شبکه ارسال کند.

کامپیوتر A قبل از ارسال بسته به کامپیوتر B باید ARP بزند. این بسته ARP به صورت Broadcast در شبکه پخش می‌شود تا کامپیوتری که آدرس آن ۱۹۲.۱۶۸.۱.۲۰۰ است آدرس مک خود را Reply کند.

مراحل ARP

ARP دو مرحله دارد:

مرحله‌ی اول ARP Request و مرحله‌ی دوم ARP Reply

مرحله‌ی اول: ARP Request

این مرحله معروف به Who has می‌باشد. این فریم به صورت Broadcast است. زیرا ما نمی‌دانیم که مقصد کجای شبکه است و به شکل زیر است:

جدول ARP Request​
Source-MAC: آدرس مک فرستنده که در مثال ما آدرس مک کامپیوتر A است.

Destination-MAC: آدرس مک گیرنده که در بسته‌های ARP Request از نوع Broadcast است.

Type: اشاره می‌کند در لایه بالایی یعنی لایه سه، بسته چه چیزی را حمل می‌کند. در بسته‌های ARP، پروتکل لایه سه ما ARP است و Ethertype آن برابر با 0x0806 است.

Sender-MAC: آدرس مک-ای که ARP Request را ارسال می‌کند.

Sender-IP: آدرس IP کسی که ARP می‌زند.

Target-IP: به صورت خیلی عامیانه یعنی دنبال آدرس مک این IP هستم. در مثال ما کامپیوتر A دنبال مک کامپیوتر B با آدرس ۱۹۲.۱۶۸.۱.۲۰۰ است.

 Target-MAC: 

۰۰.۰۰.۰۰.۰۰.۰۰.۰۰ یعنی من مک را ندارم.

حال این بسته به سوئیچ می‌رسد و سوئیچ این بسته را بر روی تمامی پورت‌های خود ارسال می‌کند. چون نوع این بسته برادکست است تمامی کامپیوترهای متصل به سوئیچ این بسته را دریافت می‌کنند و شروع به باز کردن و تحلیل بسته از لایه پایین یعنی هدر Ethernet می‌نمایند. چون مقصد بسته برادکست است، بسته را در لایه بالاتر یعنی هدر ARP بررسی می‌کنند و با نگاه کردن به قسمت Target-IP متوجه می‌شوند که آیا این بسته به دنبال مک آنها است یا خیر.

نهایتا تمامی کامپیوترها بسته ARP را دور می‌ریزند به غیر از کامپیوتر B که آدرس IP آن ۱۹۲.۱۶۸.۱.۲۰۰ است و با Target-IP داخل بسته برابر است. ابتدا کامپیوتر B آدرس مک کامپیوتر A را در جدول ARP خود یادداشت می‌کند. حال باید جواب ARP Request ای که کامپیوتر A ارسال کرده را بدهد که به آن ARP Reply می‌گویند.

مرحله‌ی دوم: ARP Reply

در این مرحله ARP Reply به فرستنده Request به صورت Unicast ارسال می‌شود که به شکل زیر است:

ARP Reply Table
همان طور که مشاهده می‌کنید بسته‌های ARP Reply به صورت Unicast است. وقتی این بسته به سوئیچ می‌رسد، سوئیچ این بسته را فقط روی پورتی که متصل به کامپیوتر A است ارسال می‌کند تا بسته به کامپیوتر A برسد. حال کامپیوتر A آدرس مک کامپیوتر B را دارد و در جدول ARP خود یادداشت می‌کند.

بعد از این که ARP کار خود را تمام کرد کامپیوتر A و کامیپوتر B می‌توانند به یکدیگر بسته ارسال کنند. زیرا هر دو کامپیوتر از آدرس های MAC یکدیگر خبر دارند و در جدول ARP خود یادداشت کرده‌اند.

نکته ۱: وقتی مقصد کامپیوتر A در لایه سه خارج از شبکه باشد یعنی مقصد بسته‌ها خارج از شبکه ۱۹۲.۱۶۸.۱.۰/۲۴ باشد، باید بسته به روتر یا Gateway برسد. زیرا روتر می‌تواند بسته ها را مسیریابی کند و برای این که در یک بستر Ethernet بسته از کامپیوتر A به روتر برسد کامپیوتر A باید در قسمت Destination-MAC بسته‌ها، آدرس مک روتر را قرار دهد. اگر آدرس مک روتر یا GW را نداشته باشد باید GW خود را ARP بزند.

نکته ۲: پروتکل ARP به شدت آسیب‌پذیر است. یعنی Attacker ها با استفاده از ضعف این پروتکل به راحتی می‌توانند صدمات سنگینی وارد کنند. به طور مثال فرض کنید Attacker خود را به جای روتر قرار دهد و آدرس مک خود را به عنوان آدرس مک روتر به کامپیوتر A ارسال کند. کامپیوتر A در تمام بسته‌های خود آدرس مک مقصد را آدرس مک Attacker قرار می‌دهد و تمامی بسته‌های ارسالی کامپیوتر A با اینترنت از Attacker عبور می‌کند.

به این تهاجم MITM یا همان Man in the Middle می‌گویند. به حملاتی که Attacker آدرس مک خود را جعل می کند به اصطلاح ARP Spoofing می‌گویند که به راحتی با ابزارهای مانند Arpspoof و Ethercap در کالی امکان‌پذیر است. برای مصون ماندن از این حملات باید از مکانیزم‌های امنیتی مانند DAI در سوئیچ استفاده کرد.

GARP چیست؟

وقتی شما آدرس IP خود را عوض می‌کنید، ARP Table تمام کامپیوترهای دیگر به اصطلاح بیات هست و باید آپدیت شوند. در این هنگام کامپیوتری که آدرس IP خود را عوض کرده GARP ارسال می‌کند. در این حالت کامپیوتر آدرس IP خود را ARP می‌زند تا جدول بقیه را آپدیت کند. این اتفاق زمانی که کارت شبکه فعال شده و یا آدرس IP از DHCP Server دریافت می‌کند نیز می‌افتد تا از Duplicate IP جلوگیری کند. البته Attacker ها از این قابلیت برای حملات ARP Spoofing استفاده می‌کنند.

جواب سوال خود را نیافتید؟ یا آنچه که در بالا گفته شد کافی نبود؟

آدرس ایمیل خود را برای ما بگذارید تا اطلاعات بیشتری را برای شما ارسال کنیم. تلاش خواهیم کرد پاسخ بهتری برای مسائل فنی شما ارائه کنیم. 

این صفحه را به اشتراک بگذارید
اشتراک گذاری در facebook
اشتراک گذاری در twitter
اشتراک گذاری در linkedin
اشتراک گذاری در telegram
مطالب مرتبط
آخرین نوشته ها

بیشتر بخوانید

داریوش ابراهیمی

آشنایی با شرکت و محصولات Ubiquiti Networks

مقدمه Ubiquiti Networks یک شرکت آمریکایی است که در زمینه فناوری‌های مرتبط با شبکه‌های کامپیوتری فعالیت می‌کند. تجهیزات Ubiquiti محدوده‌ای از کسب و کارهای کوچک و متوسط (Enterprise) تا شرکت‌های

ادامه مطلب »
معصومه حسین آبادی

سوئیچ سیسکو SF350-24P

سوئیچ SF350-24P به صورت قابل نصب در رک (Rackmount) است. این قابلیت را دارد تا ۹.۵۲ میلیون پکت بر ثانیه را از خود عبور دهد. همچنین ظرفیت سوئیچینگ این دستگاه برابر با ۱۲.۸Gbps می‌باشد.

ادامه مطلب »
معصومه حسین آبادی

سوئیچ سیسکو SF350-24

سوئیچ SF350-24 به صورت قابل نصب در رک (Rackmount) است. این قابلیت را دارد تا ۹.۵۲ میلیون پکت بر ثانیه را از خود عبور دهد. همچنین ظرفیت سوئیچینگ این دستگاه برابر با ۱۲.۸Gbps می‌باشد.

ادامه مطلب »
اسکرول به بالا
× گفتگوی آنلاین