آشنايي با پروتكل ARP

آشنايي با پروتكل ARP:

در اين مقاله قصد دارم پروتكل بسيار پركاربردي ARP يا Address Resolution Protocol را براي شما عزيزان شرح دهم. براي توضيح راحت تر اين پروتكل از مثال استفاده خواهم كرد.

مثال: يك شبكه را فرض كنيد كه داراي 10 عدد كامپيوتر مي‌باشد. همانطور كه مي دانيد در يك شبكه همه ديوايس‌ها (دستگاه ها) داراي دو آدرس هستند:

1- Mac Address يا آدرس Mac: آدرس لايه دويي كه بر روي كارت شبكه همه كامپيوترها و سرورها موجود است. اين آدرس 48 بيتي است و به صورت فيزيكي بر روي كارت شبكه هك شده است و قابل تغيير نيست (البته مي توان از قسمت تنظيمات كارت شبكه آدرس Mac ديگري براي كارت شكبه Set كرد. اگر اين كار انجام شود، كارت شبكه، آدرس Macاي كه به صورت دستي Set شده است را در نظر خواهد گرفت. در هر صورت آدرس Macاي كه بر روي كارت شبكه هك شده است از بين نخواهد رفت.)

2- IP Address: هر كامپيوتر در شبكه داراي يك آدرس لاجيكي است كه به آن آدرس IP مي گويند. اين آدرس، آدرس لايه سه اي مي باشد كه 32 بيتي نيز هست. آدرس IPي هر كامپيوتر در شبكه منحصر به فرد است و نمي تواند تكراري باشد. آدرس IP را مدير شبكه تنظيم مي كند. اين آدرس مانند آدرس Mac به صورت فيزيكي نيست.

قصد من در اين مقاله تشريح آدرسها نيست. براي مطالعه مقاله هاي مربوط به آدرس هاي Mac و IP از قسمت موضوعات وبلاگ، موضوع آموزش شبكه را انتخاب و مقاله مورد نظر را مطالعه نماييد.

 پروتكل ARP چيست؟

پروتكلي است كه آدرس لايه دويي (Mac address) مجهول را به كمك آدرس لايه سه‌اي (IP address) به دست مي‌آورد. مثلا كامپيوتر A مي خواهد اطلاعاتي را به كامپيوتر B ارسال نمايد. كامپيوتر A آدرس IP كامپيوتر B را دارد اما آدرس Mac كامپيوتر B را ندارد. همانطور كه مي دانيد اگر كامپيوتر A آدرس Mac مربوط به كامپيوتر B را نداشته باشد نمي تواند هيچ فايلي (بسته اي) را به كامپيوتر B ارسال نمايد، لذا بايد آدرس Mac مقصد را (كامپيوتر B ) را بدست آورد. كامپيوتر A با استفاده از پروتكل ARP مي تواند آدرس Mac كامپيوتر B را بدست آورد.

نكته: هر كامپيوتري بخواهد بسته اي را به كامپيوتر ديگري در شبكه ارسال نمايد بايد مبدا براي اينكه بتواند بسته را به مقصد ارسال نمايد بايد آدرسهاي مقصد (IP , Mac) را داشته باشد.

براي توضيح بيشتر مثال زير را ببينيد:

مثال:

فرض كنيد در شبكه ما، كامپيوتر A قصد دارد فايلي را به كامپيوتر B بفرستد. اين اولين باري است كه كامپيوتر A و B مي خواهند ارتباط برقرار نمايند. در ضمن كامپيوتر A آدرس IP كامپيوتر B را دارد اما آدرس Mac كامپيوتر B را ندارد (مسلما كامپيوتر A آدرس IP و Mac خود را مي داند). تا زماني كه كامپيوتر A آدرس Mac كامپيوتر B را نداشته باشد نمي تواند فايلها را به كامپيوتر B ارسال نمايد. پس كامپيوتر A، بسته اي كه مي سازد به صورت زير آدرس دهي مي‌شود:

آدرس IP مبدا= آدرس IP كامپيوتر A (اين آدرس مشخص است)

آدرس IP مقصد= آدرس IP كامپيوتر B (اين آدرس مشخص است)

آدرس Mac مبدا= آدرس Mac كامپيوتر A (اين آدرس مشخص است)

آدرس Mac مقصد= آدرس Mac كامپيوتر B (اين آدرس مشخص نيست)

همانطور كه مي بينيد آدرس Mac مقصد (در بالا) مشخص نيست. يعني كامپيوتر A آدرس Mac كامپيوتر B را ندارد. همچنين اين را مي دانيم كه اگر در يك بسته يكي آدرسهاي مبدا يا مقصد مشخص نباشد، قطعا آن بسته ارسال نخواهد شد. لذا كامپيوتر A بايد آدرس Mac مقصد (كامپيوتر B) را بدست آورد تا بتواند اطلاعات را به سمت او ارسال نمايد.

نكته: با توجه به اينكه كامپيوتر A آدرس Mac مقصد را ندارد، بنابراين نمي تواند بسته را به سمت كامپيوتر B ارسال نمايد. قبل از ارسال بسته، كامپيوتر A با كمك پروتكلي به نام ARP اقدام به كشف آدرس Mac مقصد مي كند.


نكته: روش كار پروتكل ARP:

پروتكل ARP براي كشف آدرس Mac مربوط به مقصد، بايد آدرس IP مقصد را داشته باشد. (كه در اين مثال دارد). اين پروتكل براي بدست آوردن آدرس Mac مقصد (كامپيوتر B) يك بسته به نام بسته ARP مي سازد كه در آن هيچ گونه اطلاعات خاصي وجود ندارد و فقط در آن نوشته شده: آدرس IPي چه كسي X مي باشد لطفا آدرس Mac خود را به بنده اعلام نمايد. بعد از اينكه بسته ARP تهيه شده (توسط مبدا يعني كامپيوتر A) و در شبكه ارسال شد و به مقصد (كامپيوتر B) رسيد، مقصد در جواب اين بسته، يك بسته تهيه مي كند كه در آن، آدرس Mac خود را نوشته است. يعني نوشته: آدرس Mac بنده Y مي باشد. خوب با اين روش، مبدا، آدرس Mac مربوط به مقصد را بدست مي آورد و حالا مي‌تواند اطلاعات اصلي را به سمت مقصد ارسال نمايد.


كامپيوتر A با كمك پروتكل ARP و به صورت زير، آدرس Mac كامپيوتر B را بدست مي‌آورد:

پروتكل ARP در كامپيوتر A يك بسته تهيه مي كند كه در آن بسته، آدرس ها به صورت زير درج شده اند:

آدرس IP مبدا= آدرس IP كامپيوتر A (اين آدرس مشخص است)

آدرس IP مقصد= آدرس IP كامپيوتر B (اين آدرس مشخص است)

آدرس Mac مبدا= آدرس Mac كامپيوتر A (اين آدرس مشخص است)

آدرس Mac مقصد= آدرس همه كامپيوترهاي شبكه (ffff.ffff.ffff)

همانطور كه مي بينيد آدرس Mac مقصد در اين بسته به صورت ffff.ffff.ffff درج شده است. آدرس ffff.ffff.ffff به معني همه دستگاه هاي شبكه مي باشد. يعني اگر در يك بسته، آدرس Mac مقصد به صورت ffff.ffff.ffff درج شود، اين بسته به همه كامپيوترها و دستگاه هاي شبكه ارسال خواهد شد.

خلاصه:

كامپيوتر A مي خواهد يك بسته به كامپيوتر B ارسال نمايد. كامپيوتر A، آدرس IP و آدرس Mac خود را دارد. (همه دستگاه هاي موجود در شبكه، آدرسهاي خودشان را مي دانند). در ضمن، آدرس IP مقصد(كامپيوتر B) را نيز دارد اما آدرس Mac مقصد را ندارد. مبدا (كامپيوتر A) ، بايد آدرس Mac مقصد (كامپيوتر B) را نيز داشته باشد تا بتواند بسته را به سمت آن ارسال نمايد. مبدا، به كمك پروتكل ARP اقدام مي كند تا آدرس Mac مقصد را پيدا كند. مبدا (پروتكل ARP مبدا) يك بسته مي سازد كه در آن آدرس IP و Mac مبدا (كامپيوتر A) نوشته شده است. آدرس IP مقصد (كامپيوتر B) نيز نوشته شده است. اما آدرس Mac مقصد (كامپيوتر B) به صورت ffff.ffff.ffff نوشته شده است كه يعني: " آدرس همه ".

ادامه:

بسته ساخته شده توسط پروتكل ARP به سوئيچ ارسال مي شود. سوئيچ اين بسته را نگاه مي كند و مي بيند كه آدرس Mac آن به صورت ffff.ffff.ffff نوشته شده است. سوئيچ با ديدن اين آدرس متوجه مي شود كه بايد آنرا به همه كامپيوترهايي كه به آن وصل هستند (به جز كامپيوتر ارسال كننده، يعني كامپيوتر A) ارسال نمايد. سوئيچ اين بسته را به همه كامپيوترهاي متصل به خود ارسال مي كند.

تا اينجا همه كامپيوترهاي شبكه، بسته ارسال شده از سوي كامپيوتر A را دريافت كرده اند. همه كامپيوترها (به جز كامپيوتر B) بسته را دور مي اندازند (زيرا آدرس IPي موجود در بسته مربوط به آنها نيست) و تنها كامپيوتري كه بسته را دور نمي اندازد، كامپيوتر B مي باشد.

حالا كامپيوتر B، يك بسته ARP از كامپيوتر A دريافت كرده و بايد جواب آن را بدهد. بنابراين كامپيوتر B، بسته اي به صورت زير مي سازد و به كامپيوتر A ارسال مي‌كند:

آدرس IP مبدا= آدرس IP كامپيوتر B (اين آدرس مشخص است)

آدرس IP مقصد= آدرس IP كامپيوتر A (اين آدرس مشخص است)

آدرس Mac مبدا= آدرس Mac كامپيوتر B (اين آدرس مشخص است)

آدرس Mac مقصد= آدرس Mac كامپيوتر A (اين آدرس مشخص است)

همانطور كه مي بينيد، در اين بسته آدرس Mac مربوط به كامپيوتر B، به عنوان آدرس Mac مبدا نوشته شده است، لذا كامپيوتر A بعد از گرفتن اين بسته (از كامپيوتر B) مي فهمد كه آدرس Mac كامپيوتر B چيست. حال كامپيوتر A مي تواند بسته هاي اصلي را به سمت كامپيوتر B ارسال نمايد.

پس وقتي كامپيوتر B جواب بسته ARP اي كه از سوي كامپيوتر A ارسال شده بود را مي دهد، كامپيوتر A، از روي اين جواب، آدرس Mac مربوط به كامپيوتر B را كشف مي كند.



مطالب مشابه :


نحوه تنظیم و پیکربندی EtherChannel در سوئیچ های سیسکو

آموزش و نصب شبكه،دوربین مداربسته،سانترال - نحوه تنظیم و پیکربندی EtherChannel در سوئیچ های سیسکو




آشنایی با دستور Netsh - نحوه تنظیم کارت شبکه از طریق Command Prompt

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آشنایی با دستور Netsh - نحوه تنظیم کارت شبکه از




آشنايي با پروتكل VTP يا Vlan Trunking Protocol

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آشنايي با پروتكل VTP يا Vlan Trunking Protocol - مجری نصب




معرفی دوره CCNA (آشنایی با سیلابس دوره CCNA)

آموزش و نصب شبكه،دوربین مداربسته،سانترال - معرفی دوره ccna (آشنایی با سیلابس دوره ccna) - مجری




آشنایی با تجهیزات پسیو شبکه (آشنایی با کابل شبکه، کیستون، رک، پچ کورد، پچ پنل و ...)

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آشنایی با تجهیزات پسیو شبکه (آشنایی با کابل شبکه




آموزش کاربا گوشی سانترال سری TDA-TDE

Panasonic - آموزش کاربا گوشی سانترال سری TDA-TDE - Panasonic Panasonic راهنمای آموزش اپراتوری مراکز




آشنايي با مفهوم Access List

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آشنايي با مفهوم Access List - مجری نصب انواع شبکه




آموزش کامل Subneting یا زیر شبکه (آموزش آدرس IP)

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آموزش کامل Subneting یا زیر شبکه (آموزش آدرس IP) - مجری




آشنايي با پروتكل ARP

آموزش و نصب شبكه،دوربین مداربسته،سانترال - آشنايي با پروتكل arp - مجری نصب انواع شبکه، دوربین




برچسب :