پروتکل arp چیست و انواع آن
یکی از کارکردهای شبکه، چه به صورت محلی و چه به صورت سراسری انتقال پیام بین دو یا چند دستگاه است. همانطور که میدانیم هر کامپیوتر یک آدرس سخت افزاری به نام MAC (مک آدرس) دارد که از طریق آن شناسایی میشود. حال برای این که پیامی بین دو سیستم منتقل شود، فرستنده و گیرنده باید حتما از مک آدرس یکدیگر مطلع باشند. فرض کنید در یک شبکه فرستنده از آدرس IP گیرنده آگاه است اما مک آدرس آن را ندارد. در این صورت فرستنده بدون پروتکل arp عملا عیچ پیامی را نمیتواند به گیرنده برساند. این یکی از پروتکلهای مهم لایه شبکه است و وظیفه یافتن مک آدرس گیرنده را بر عهده دارد و بدون آن عملا هیچ انتقال دادهای در شبکه ممکن نیست. در ادامه همراه ما باشید تا با این پروتکل و جزئیات مربوط به آن آشنا شویم.
پروتکل ARP چیست؟
پروتکل ارتباطی «Address Resolution Protocol» یا به اختصار پروتکل arp برای یافتن آدرس MAC سیستمهای شبکه، توسط آدرس IP به کار گرفته میشود. Arp یکی از مهمترین پروتکلهای لایه سوم مدل OSI، یعنی لایه شبکه است که در اوایل دهه ۸۰ میلادی توسعه یافت و امروز با برخی از فناوریهای مهم مثل IPv4، X.25، فریم رله و ATM پیادهسازی میشود.
وظیفه اصلی arp تبدیل آدرسهای ۳۲ بیتی IP به آدرسهای ۴۸ بیتی MAC و تعیین آدرس MAC دستگاههای شبکه است. در واقع هنگامی که یک دستگاه شبکه میخواهد با یک دستگاه دیگر ارتباط برقرار کند، فعالیت این پروتکل آغاز میشود.
این پروتکل یک پروتکل اتصالگراست که توسط پروتکل اینترنت برای نگاشت بین IP و مک آدرس استفاده میشود. در نهایت نتیجه این نگاشت در تمام سیستمهای موجود در شبکه ذخیره میشود.
بیشتر بخوانید: بررسی جامع لایههای شبکه
پروتکل ARP چطور کار میکند؟
میدانیم در مدل OSI برای ارتباط بین هر دستگاه در لایه شبکه از آدرس IP استفاده میشود و برای ارتباط در لایههای زیرین شبکه، مثل لایه پیوند داده، به آدرس سختافزاری سیستمها نیاز داریم. هنگامی که ما دادهها را به یک سیستم دیگر در شبکه ارسال میکنیم، این کار را از طریق آدرسهای IP انجام میدهیم. اما برای ارتباط فیزیکی بین دو سیستم حتما به MAC نیاز است. در این شرایط، پروتکل arp برای تبدیل این آدرسهای IP به آدرسهای فیزیکی نقش مهمی ایفا میکند.
مک آدرس یک آدرس فیزیکی غیر قابل تغییر است که روی کارت شبکه دستگاهها نوشته شده است. برای انتقال پیام در شبکههای محلی، یک پیام درخواست ARP توسط سیستم مبدا ارسال میشود. پس از بررسی اینکه آیا IP مناسب به سیستم مقصد اختصاص داده شده است یا خیر، سیستم مقصد یک پیام پاسخ ARP را ارسال میکند که در آن مک آدرس گیرنده قرار دارد.
در سیستم عاملها یک حافظه کش برای ذخیرهسازی پاسخهای ARP در نظر گرفته شده است. به این ترتیب برای انتقال پیامهای بعدی نیاز به ارسال پیام درخواست ARP نیست و هر زمان مبدا پیام پاسخ ARP را دریافت کند، ارتباط IP-MAC را در حافظه پنهان ARP خود بروز خواهد کرد.
انواع پروتکل ARP چیست و برای چه مواردی استفاده میشوند؟
چهار نوع پروتکل Arp داریم که در ادامه این بخش با آنها آشنا میشویم.
۱. پروکسی ARP
چنانچه دو سیستمی که میخواهند با هم ارتباط برقرار کنند در یک شبکه محلی نباشند، از سرورهای پروکسی برای نگاشت آدرسهای IP به آدرسهای سختافزاری استفاده میشود. یعنی شبکه دیگری با استفاده از این سرورهای پروکسی میتواند به درخواستهای ARP پاسخ دهد.
۲. ARP رایگان
در این نوع arp، یک هاست یک درخواست arp را برای شناسایی آدرسهای IP تکراری ارسال میکند. در واقع دستگاههای شبکه برای بهروزرسانی جدول arp از Gratuitous ARP استفاده میکنند و احتیاجی به ارسال پیام درخواست ARP برای ارسال داده نیست. همچنین این پروتکل بررسی میکند که آیا میزبان کامپیوتر از آدرس IP اصلی خود استفاده میکند یا از یک آدرس IP تکراری.
۳. ARP معکوس
پروتکل شبکه ARP معکوس از یک میزبان کامپیوتری برای استخراج اطلاعات مربوط به پروتکل اینترنت خود (IPv4) از شبکه کامپیوتری استفاده میکند. این یک پروتکل TCP/IP است که کاربر میتواند به کمک آن اطلاعات آدرس IP را از یک سرور شبکه به دست آورد.
۴. ARP وارونه
پروتکل ARP وارونه، معکوس پروتکل ARP بوده و کاربرد آن یافتن آدرس IP دستگاه توسط آدرس MAC است و عمدتا در رلههای فریم و شبکههای خودپرداز استفاده میشود.
مطالعه مقاله Mac Address چیست؟ آدرس فیزیکی و تمام جزئیاتش از دست ندهید.
مهمترین هدف پروتکل ARP چیست؟
در حین فرایند انتقال در شبکههای محلی، مبدا پیام با داشتن مک آدرس گیرنده، پیام را مستقیما به مقصد ارسال میکند. در شبکههای سراسری مک آدرس گیرنده معمولا در گره دروازه (Gate Node) ذخیره میشود. بنابراین سیستم مبدا موقع ارسال پیام چه در شبکههای محلی و چه در شبکههای سراسری، باید آدرس فیزیکی گیرنده را بداند. مبدا میتواند به کمک پیام درخواست ARP که در شبکه پخش میکند، مک آدرس مقصد را به دست آورد.
پروتکل ARP چطور کار میکند؟
عملکرد پروتکل arp را میتوان در چند مرحله توضیح داد.
- وقتی فرستنده میخواهد با گیرنده ارتباط برقرار کند، ابتدا حافظه پنهان ARP را بررسی میکند تا ببیند آیا آدرس مک گیرنده قبلا ذخیره شده است یا خیر؟
- اگر آدرس مک گیرنده از قبل در حافظه پنهان arp ذخیره شده باشد، فرستنده میتواند با استفاده از آن با گیرنده ارتباط برقرار کند.
- چنانچه آدرس مک گیرنده در حافظه ذخیره نباشد، یک پیام درخواست ARP توسط دستگاه فرستنده ایجاد میشود. این پیام حاوی آدرس MAC فرستنده، آدرس IP فرستنده و آدرس IP گیرنده است. فیلد حاوی آدرس MAC گیرنده هنگام جستجو خالی میماند.
- دستگاه فرستنده این پیام را از طریق LAN پخش میکند. همه دستگاهها آدرس IP گیرنده را از این پیام درخواست به دست میآورند تا با آدرس IP خود مطابقت دهند. چنانچه آدرس IP پیام با آدرس آنها مطابقت داشت یک پیام پاسخ arp تولید میکند و برای فرستنده میفرستد.
- به محض اینکه دستگاه فرستنده پیام ARP خود را دریافت کرد، حافظه پنهان ARP را با اطلاعات جدید (آدرس مک گیرنده) به روز میکند.
- اکنون بستهها را میتوان بدون هیچ زحمتی به آدرس مک گیرنده ارسال کرد.
مزایای پروتکل ARP
دو مورد از مهمترین مزیتهای پروتکل arp عبارت است از:
- با کمک این پروتکل میتوانیم به راحتی آدرس MAC هر دستگاهی را در شبکه پیدا کنیم.
- این پروتکل، نیازی به پیکربندی گرههای پایانی برای یافتن آدرس MAC ندارد.
پکت لاس چیست؟ آشنایی با مفهوم Packet Loss در شبکه
اهمیت پروتکل ARP در شبکه
برای انتقال یک پیام بین دو سیستم در شبکه به آدرس مک هر دو سیستم نیاز داریم. در واقع بدون داشتن آدرس فیزیکی گیرنده، ابدا نمیتوان پیامهای داده را برای آن فرستاد. حال اگر به آدرس مک گیرنده دسترسی نداشته باشیم باید از طریق آدرس IP، آن را به نوعی به دست آوریم. برای این منظور از این پروتکل استفاده میشود. به عبارت سادهتر ARP یک جزء حیاتی در لایه شبکه است و بدون این پروتکل انتقال پیام در شبکه ممکن نخواهد بود.
فرمت پیام پروتکل ARP
پیام arp که برای یافتن آدرس MAC به تمام دستگاههای موجود در شبکه LAN پخش میشوند، دارای جزئیات زیر است:
- نوع سختافزار: اندازه این قسمت ۲ بایت است و نوع سختافزار مورد استفاده برای ارسال پیام را مشخص میکند. رایجترین نوع سخت افزار اترنت است.
- نوع پروتکل: این فیلد میگوید که از کدام پروتکل برای ارسال پیام استفاده شده است که اغلب از پروتکل IPv4 استفاده میشود.
- طول آدرس سخت افزار: طول آدرس سخت افزار را بر حسب بایت نشان میدهد. مک آدرسهای اترنت دارای اندازه ۶ بایت هستند.
- طول آدرس پروتکل: این فیلد به آخرین آدرس IP اشاره دارد. اندازه آدرس IP 4 بایت است.
- کد OP: این فیلد نوع پیام را نشان میدهد. اگر مقدار این فیلد ۱ باشد، پیام درخواست و اگر مقدار آن ۲ باشد، پیام پاسخ است.
- آدرس سخت افزار فرستنده: این قسمت، آدرس MAC دستگاهی است که میتوان پیام پاسخ را به آن ارسال کرد.
- آدرس پروتکل فرستنده: این قسمت آدرس IP دستگاه برای ارسال پیام پاسخ است.
- آدرس سختافزار مقصد: این قسمت در پیام های درخواست خالی است و حاوی آدرس MAC دستگاه گیرنده است.
- آدرس هدف پروتکل: این قسمت حاوی آدرس IP دستگاه دریافت کننده است.
هشدار! احتمال حملات Spoofing پروتکل arp
یک مهاجم میتواند به کمک IP Spoofing پیامهای در حال ارسال در شبکه را ردیابی کرده و جریان انتقال را متوقف کند. معمولا حملات اسپوفینگ سکوی پرتاب حملات دیگری است که در شبکههای محلی اتفاق میافتد.
در حین انتقال پیام درخواست و پاسخدهی سیستمها، ممکن است حملهای در ARP اتفاق بیافتد و آلوده شود. در این حالت مهاجم میتواند با تغییر دادهها روند انتقال را مختل کند. چنانچه مهاجم پیام پاسخ ARP را جعل کند، سیستمهای شبکه حافظه کش ARP را با پیام جعلی مهاجم به روز میکنند و اتفاق ناگواری رخ میدهد!
ARP یک پروتکل بدون حالت است و در آن برای دریافت پیام نیازی به درخواست نیست. میزبان پیامهای پاسخ ARP دریافتی را در حافظه خود ذخیره میکند و همین این مسئله منجر به جعل پیام ARP و در نتیجه حملات اسپوفینگ در شبکه میشود.
smtp چیست؟ برای اطلاعات بیشتر می توانید مقاله مورد نظر را مطالعه نمایید.
خلاصه
در این مقاله با پروتکل arp و جزئیات مربوط به آن آشنا شدیم و اهمیت آن برای انتقال پیام در شبکه را مرور کردیم. وظیفه ARP ترجمه آدرسهای لایه شبکه به آدرس لایه اینترنت است و بالعکس. از آنجا که برای ارسال پیام به آدرس فیزیکی گیرنده نیاز داریم، عملا انتقال پیام بدون این پروتکل ممکن نخواهد بود.
شما چه اطلاعات دیگری درباره این پروتکل دارید؟ چه دانستههای دیگری دارید که در این مقاله از قلم ما افتاده است؟ خواهشمندیم نظرات و تجربیات خود را در بخش دیدگاهها با ما به اشتراک بگذارید.
دیدگاهتان را بنویسید