جستجو برای:
  • صفحه اصلی
  • دوره ها
    • حساب کاربری
    • سبد خرید
  • مقالات
 
  • دانلودها
  • تدریس در ساینت
ساینت
  • صفحه اصلی
  • دوره ها
    • آزمون ها
    • حساب کاربری
    • سبد خرید
    • پرداخت
  • مقالات
  • ساینت TV
  • لایسنس اسپلانک
  • درباره ما
  • اساتید
0
ورود / عضویت

بلاگ

ساینت مقالات شبکه و زیرساخت پروتکل ARP چیست؟ و چگونه کار می کند

پروتکل ARP چیست؟ و چگونه کار می کند

2021/09/08
ارسال شده توسط ساینت
شبکه و زیرساخت
2.51k بازدید
arp چیست
زمان مطالعه: ۶ دقیقه

نقش پروتکل ARP

Address Resolution Protocol به اختصار (ARP) یک پروتکل بسیار مهم در شبکه های کامپیوتری است. وقتی سیستم شخصی می خواهد پیامی را از طریق شبکه ارسال کند، باید داده ها را در لایه های مدل OSI قرار دهد. در هر لایه، باید تمام اطلاعات header مانند پورت های TCP/UDP را در header لایه ۴ ، آدرس و آدرس IP مقصد در سربرگ لایه ۳ و آدرس های MAC مبدا و مقصد را در سربرگ لایه ۲ پر کند. اگر خوب فکر کنید، همه این اطلاعات به جز آدرس MAC مقصد در دسترس مشتری نهایی است. پروتکل (ARP) برای تبدیل یک آدرس MAC بر اساس آدرس IP داده شده در یک شبکه محلی معرفی شده است.

بیایید به مثال نشان داده شده در شکل زیر نگاه کنیم.

ARP چگونه کار می کند

PC1 سعی می کند PC3 را که در همان شبکه محلی و همان زیر شبکه ۱۰.۱.۱.۰/۲۴ قرار دارد ، پینگ کند. هنگامی که کاربر دستور ping 10.1.1.3 را اجرا می کند،PC1 قبل از ارسال آن به شبکه شروع به کپسوله کردن درخواست ICMP (ping) در یک فریم اترنت می کند. بیایید به نحوه ساخت کامپیوتر واحد داده پروتکل (PDU) نگاه کنیم:

در لایه ۴: PC1 می داند که پینگ با ارسال ICMP Echo Request کار می کند و منتظر ICMP Echo Response است. بنابراین پروتکل را در لایه ۴ به عنوان ICMP با مجموعه فلگ Echo Request تنظیم می کند. بنابراین، همه چیز مورد نیاز در این لایه در دسترس است.

در لایه ۳: PC1 آدرس IP مقصد را می داند، توسط کاربر در دستور ping 10.1.1.3 به صراحت ذکر شده است، بنابراین آن را در قسمت IP مقصد قرار می دهد. PC1 آدرس IP پیکربندی شده خود را ۱۰.۱.۱.۱ می داند و آن را در قسمت منبع قرار می دهد. بنابراین ، همه چیز مورد نیاز در این لایه در دسترس است.

در لایه ۲: PC1 آدرس MAC پیکربندی شده خود را می داند و در قسمت منبع قرار می دهد. اما هیچ راهی برای PC1 وجود ندارد که بداند کدام مشتری نهایی در LAN 10.1.1.3 پیکربندی شده است و آدرس MAC آن چیست. بنابراین آدرس MAC مقصد در دسترس PC1 نیست و برای بدست آوردن آن باید از ARP استفاده کند.

پروتکل ARP چگونه کار می کند؟

ARP از ارتباط پخش (یک به همه) استفاده می کند تا از تمام کلاینت های نهایی در یک LAN بپرسد که آدرس فیزیکی یک IP مشخص چیست.

 

پیام های ARP

دو نوع اصلی بسته در عملیات پروتکل ARP وجود دارد:

  • درخواست ARP
  • پاسخ ARP

شکل زیر نمونه ای از هر دو نوع را نشان می دهد. می توانید مشاهده کنید که چهار قسمت در سربرگ ARP وجود دارد:

  • آدرس سخت افزار منبع (MAC)
  • آدرس پروتکل منبع (IP)
  • آدرس سخت افزار هدف (MAC)
  • آدرس پروتکل هدف (IP)

فریم ARP

 

توجه داشته باشید که در پیام ARP Request ، آدرس MAC مقصد آدرس broadcast معروف FFFF-FFFF-FFFF است. این به سوئیچ های LAN نشان می دهد که این ارتباط ارتباطی broadcast شده است و همه دستگاه های متصل در LAN باید یک کپی از فریم را دریافت و پردازش کنند. مقدار مهم دیگر که باید به آن توجه کنید Target MAC 0000-0000-0000 است. این به صاحب IP Target نشان می دهد که فرستنده در تلاش است آدرس فیزیکی این IP را مشخص کند.

توجه داشته باشید که در پیامهای ARP Reply ، آدرسهای MAC مبدا و مقصد، آدرسهای unicast هستند.

ARP چگونه کار می کند

وقتی این اتفاق می افتد چهار مورد مشخص به شرح زیر وجود دارد:

۱- میزبان می خواهد داده ها را به میزبان دیگری در همان شبکه ارسال کند. به عنوان مثال، PC2 پیامی را به PC3 ارسال می کند.

  • PC2 یک درخواست ARP در مورد آدرس IP PC3 192.168.1.3 ارسال می کند.
  • همه در شبکه LAN یک کپی از قاب ARP دریافت می کنند.
  • PC3 با آدرس فیزیکی خود BBBB-BBBB-BBBB پاسخ می دهد. همه میزبان های دیگر درخواست ARP را کنار می گذارند.

۲- میزبان می خواهد داده ها را به میزبان دیگری در شبکه دیگر ارسال کند. به عنوان مثال ، PC2 پیامی را به google.com ارسال می کند.

  • PC2 به جدول مسیریابی خود نگاه می کند.
  • آدرس IP دروازه پیش فرض خود را ۱۹۲.۱۶۸.۱.۱ پیدا می کند.
  • یک درخواست ARP در مورد آدرس IP پیش فرض دروازه ۱۹۲.۱۶۸.۱.۱ ارسال می کند.
  • همه در شبکه LAN یک کپی از قاب ARP از جمله Router1 دریافت می کنند.
  • روتر ۱ با آدرس فیزیکی خود DDDD-DDDD-DDDD پاسخ می دهد.

۳- یک روتر داده هایی را که برای یک میزبان در شبکه متصل محلی تعیین شده است دریافت می کند. روتر ۱ داده هایی را برای PC2 دریافت می کند.

  • روتر ۱ یک درخواست ARP در مورد آدرس IP مقصد ۱۹۲.۱۶۸.۱.۲ ارسال می کند.
  • همه در شبکه LAN یک کپی از قاب ARP دریافت می کنند.
  • PC2 با آدرس فیزیکی خود پاسخ می دهد. همه میزبان های دیگر درخواست ARP را کنار می گذارند.

۴- یک روتر داده هایی را که برای میزبان در شبکه دیگری تعیین شده است دریافت می کند. روتر ۲ داده هایی را که برای PC2 تعیین شده است دریافت می کند.

  • روتر ۲ جدول مسیریابی خود را بررسی می کند.
  • در می یابد که آدرس بعدی هاپ به سمت PC2 34.43.12.1 است.
  • یک درخواست ARP در مورد آدرس IP بعدی ۳۴.۴۳.۱۲.۱ ارسال می کند.
  • روتر ۱ یک کپی از درخواست ARP دریافت می کند.
  • روتر ۱ با آدرس فیزیکی خود AD12-43AB-F432 پاسخ می دهد.

جدول ARP (ARP Cache)

هنگامی که یک دستگاه آدرس MAC یک IP مشخص را با موفقیت بدست می آورد، اتصال IP-to-MAC را در جدولی به نام جدول ARP ذخیره می کند. ارتباطات بعدی به جای ارسال مجدد درخواست ARP از این اتصال ذخیره شده در حافظه cache استفاده می کنند. بیایید به جدول ARP روتر سیسکو نگاه کنیم.

Router#show arp

Protocol  Address          Age (min)  Hardware Addr   Type   Interface

Internet  ۱۰.۱.۱.۱                –   ۰۰E0.B076.9A02  ARPA   GigabitEthernet0/1

Internet  ۱۰.۱.۱.۲                ۹   ۰۰۳۰.A321.43E3  ARPA   GigabitEthernet0/1

Internet  ۱۹۲.۱۶۸.۱.۱             –   ۰۰E0.B076.9A01  ARPA   GigabitEthernet0/0

Internet  ۱۹۲.۱۶۸.۱.۲             ۲۳  ۰۰۴۰.۰BAD.3852  ARPA   GigabitEthernet0/0

Internet  ۱۹۲.۱۶۸.۱.۳             ۵۹  ۰۰E0.F760.8C2D  ARPA   GigabitEthernet0/0

Internet  ۱۹۲.۱۶۸.۱.۴             ۰   ۰۰E0.B01D.B1E7  ARPA   GigabitEthernet0/0

Internet  ۱۹۲.۱۶۸.۱.۶۴            ۲   ۰۰۶۰.۲FE4.6DB0  ARPA   GigabitEthernet0/0

هر ورودی در جدول به طور پیش فرض ۲۴۰ دقیقه (۴ ساعت) نگه داشته می شود. این مقدار با عنوان ARP Timeout شناخته می شود و می تواند در هر اینترفیس روی مقدار متفاوتی تنظیم شود. می توانید با نگاهی به خروجی رابط نمایش آن را بررسی کنید.

Router#sh int GigabitEthernet 0/1

GigabitEthernet0/0/1 is up, line protocol is up (connected)

  Hardware is ISR4331-3x1GE, address is 00e0.b076.9a02 (bia 00e0.b076.9a02)

  Internet address is 10.1.1.1/24

  MTU 1500 bytes, BW 1000000 Kbit, DLY 100 usec,

     reliability 255/255, txload 1/255, rxload 1/255

  Encapsulation ARPA, loopback not set

  Keepalive not supported

  output flow-control is on, input flow-control is on

  ARP type: ARPA, ARP Timeout 04:00:00,

  Last input 00:00:08, output 00:00:05, output hang never

  Last clearing of “show interface” counters never

  Input queue: 0/375/0 (size/max/drops); Total output drops: 0

  Queueing strategy: fifo

  Output queue :0/40 (size/max)

  ۵ minute input rate 4 bits/sec, 0 packets/sec

  ۵ minute output rate 4 bits/sec, 0 packets/sec

     ۴ packets input, 512 bytes, 0 no buffer

     Received 0 broadcasts (0 IP multicasts)

     ۰ runts, 0 giants, 0 throttles

     ۰ input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

     ۰ watchdog, 1017 multicast, 0 pause input

     ۰ input packets with dribble condition detected

     ۴ packets output, 512 bytes, 0 underruns

     ۰ output errors, 0 collisions, 1 interface resets

     ۰ unknown protocol drops

     ۰ babbles, 0 late collision, 0 deferred

     ۰ lost carrier, 0 no carrier

     ۰ output buffer failures, 0 output buffers swapped out

با اجرای arp -a در پنجره خط فرمان ، می توان ARP Cache سیستم عامل های ویندوز یا یونیکس را بررسی کرد:

C:\>arp -a

  Internet Address      Physical Address      Type

  ۱۹۲.۱۶۸.۱.۱           ۰۰e0.b076.9a01        dynamic

  ۱۹۲.۱۶۸.۱.۲           ۰۰۴۰.۰bad.3852        dynamic

  ۱۹۲.۱۶۸.۱.۴           ۰۰e0.b01d.b1e7        dynamic

  ۱۹۲.۱۶۸.۱.۶۴          ۰۰۶۰.۲fe4.6db0        dynamic

جمع بندی:

  • پروتکل (ARP) مکانیزمی برای تبدیل آدرس فیزیکی (MAC) به آدرس منطقی داده شده (IP) در اتصال LAN: IP-to-MAC است.
  • یک درخواست ARP در یک broadcast frame قرار می گیرد. بنابراین این ارتباط یک به یک است و هر میزبان در LAN یک نسخه از درخواست ARP را دریافت می کند. فقط مالک IP هدف پاسخ می دهد.
  • پاسخ ARP در یک قاب unicast است. بنابراین این یک ارتباط یک به یک بین درخواست کننده و ارسال کننده است.
  • هنگامی که دستگاه آدرس فیزیکی IP را دریافت می کند، یک ورودی در ARP Table خود (ARP Cache) ایجاد می کند. هر ارتباط بعدی از ورودی ذخیره شده استفاده می کند.
  • هر ورودی در جدول ARP به طور پیش فرض ۴ ساعت نگه داشته می شود. به این ARP Timeout گفته می شود.
اشتراک گذاری:
برچسب ها: Address Resolution Protocolپاسخ ARPپروتکل ARPپیام های ARPدرخواست ARP
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
مطالب زیر را حتما بخوانید
  • ترانک چیست
    ترانک (Trunk) چیست؟ و چگونه کار می کند.

    2.67k بازدید

  • IPv6 چیست؟ و چگونه کار می کند

    1.92k بازدید

  • Spanning-Tree چیست؟ و چگونه کار می کند

    1.85k بازدید

  • vtp چیست
    VTP چیست؟ و چگونه کار می کند

    1.99k بازدید

  • vlan چیست
    VLAN چیست؟ و چگونه کار می کند

    1.98k بازدید

  • پروتکل ISIS چیست
    پروتکل مسیریابی ISIS چیست و چگونه کار می کند

    1.94k بازدید

قدیمی تر IPv6 چیست؟ و چگونه کار می کند
جدیدتر ترانک (Trunk) چیست؟ و چگونه کار می کند.

2 دیدگاه

به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.

  • Hamid Ghp گفت:
    2021/11/30 در 10:27 ق.ظ

    با سلام و احترام
    استاد ارجمند واقعا لازم دانستم تشکر کنم بابت نشر مطلب ارزنده.
    سرسبز باشید

    برای پاسخ دادن وارد شوید
    • ساینت گفت:
      2021/12/01 در 1:55 ق.ظ

      سلام
      ممنون از حمایت شما. واقعا این دیدگاه ها باعث دلگرمی ماست.
      شاد و پیروز باشید

      برای پاسخ دادن وارد شوید

دیدگاهتان را بنویسید لغو پاسخ

برای نوشتن دیدگاه باید وارد بشوید.

جستجو برای:
جدیدترین نوشته ها
  • امنیت اینترنت اشیا IOT Security
  • چارچوب Mitre’s ATT&CK چیست؟ و چگونه به تیم امنیت کمک می کند.
  • آشنایی با تحلیلگر امنیت سایبری +CompTIA CySA
  • طرح تداوم کسب و کار (Business Continuity Plan) چیست و چگونه کار می کند؟
  • Sysmon چیست و چگونه در جمع آوری لاگ به شما کمک میکند
  • چگونه یک متخصص امنیت سایبری شویم؟ نقشه راه و دوره های مورد نیاز
  • رشد سریع کلاه برداری های SMSای در ایران
  • حمله CSRF چیست؟ و راهکارهای مقابله با آن
  • ترانک (Trunk) چیست؟ و چگونه کار می کند.
  • پروتکل ARP چیست؟ و چگونه کار می کند
محصولات
  • دوره آموزش CISSP2021
    دوره آموزش CISSP
  • دوره آموزش CEH
    دوره آموزش CEH V11
  • دوره آموزش FortiGate
    دوره آموزش فایروال FortiGate
  • دوره آموزش Security+
    دوره آنلاین آموزش CompTIA Security+
  • آموزش eve
    آموزش کامل شبیه ساز شبکه EVE-NG
دوره سکیوریتی پلاس
درباره ساینت

مجموعه آموزشی ساینت ارائه دهنده بروز ترین آموزشهای ویدئویی در زمینه امنیت شبکه با بالاترین کیفیت میباشد.

اطلاعات تماس:
  • info@cynetco.com

دوره های امنیت

  • آموزش امنیت شبکه
  • مقالات امنیت شبکه
  • آموزش Security+
  • آموزش CISSP
  • آموزش eve
  • آموزش FortiGate
  • آموزش CEH
  • امنیت سایبری
  • آموزش امنیت
  • امنیت شبکه
  • امنیت لایه ۲
  • مدارک سیسکو
  • دوره CEH
اطلاع از فروش‌های ویژه!
برای اطلاع از جدیدترین دوره‌ها کارگاه‌ها و محصولات آموزشی و فروش‌های ویژه، همین الان ایمیل‌تان را وارد کنید تا به شما خبر بدهیم!

مجوزها
ساینت در زمینه آموزش امنیت و شبکه، تحت قوانین جمهوری اسلامی ایران فعالیت می‌کند. استفاده از مطالب با ذکر منبع و لینک مستقیم مجاز است.
ورود
استفاده از موبایل
استفاده از آدرس ایمیل
آیا هنوز عضو نیستید؟ اکنون عضو شوید
ورود با گوگل
بازنشانی رمز عبور
استفاده از موبایل
استفاده از آدرس ایمیل
عضویت
قبلا عضو شدید؟ اکنون وارد شوید
ورود با گوگل

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت