Proxy ARP
Proxy Address Resolution Protocol یا به اختصار Proxy ARP
، تکنیکی است که در آن میزبان ( معمولا یک مسیریاب ) درخواست های ARP ای
را که برای میزبان دیگری است پاسخ می دهد . در واقع مسیریاب با جا زدن
خودش به جای مقصد اصلی ، عملیات مسیریابی را به عهده می گیرد .
Proxy ARP چگونه کار می کتد ؟
نحوه کار Proxy ARP را با یک مثال توضیح می دهم .
در این شبکه میزبان A (172.16.10.100/16) در زیرشبکه A می
خواهد با میزبان D ( 172.16.20.200/24 ) در زیرشبکه B ارتباط برقرار کند .
میزبان A با زیرشبکه 16 تصور می کند به صورت مستقیم با تمامی کلاینت ها در
شبکه 172.16.0.0 در ارتباط است و برای برقراری ارتباط یک درخواست ARP برای
بدست آوردن آدرس Mac مقصد به صورت Broadcast اسال می کند .
بنابراین در این شبکه هرگاه میزبان A بخواهد با میزبان D ارتباط برقرار کند تصور می کند که مستقیما
به میزبان D متصل است بنابراین درخواست ARP به سوی آن ارسال
می کند . میزبان A برای بدست آوردن آدرس MAC میزبان D درخواست ARP ای به
شکل زیر در زیرشبکه A به صورت Broadcast ارسال می کند .
|
Sender's MAC Address |
Sender's IP Address |
Target MAC Address |
Target IP Address |
|
00-00-0c-94-36-aa |
172.16.10.100 |
00-00-00-00-00-00 |
172.16.20.200 |
در این درخواست ARP، میزبان A از میزبان D درخواست آدرس
MAC آنرا می کند . بسته های درخواست ARP در فریم های اترنت با آدرس MAC
میزبان A به عنوان آدرس مبدا و آدرس Broadcast ( FFFF.FFFF.FFFF ) به
عنوان آدرس مقصد در شبکه ارسال می شود و به تمامی گره های زیرشبکه A از
جمله واسط شماره 0 مسیریاب ( e0 ) می رسد .
البته این بسته ها به میزبان D نمی رسد زیرا مسیریاب ها به صورت پیش فرض پیام های Broadcast را عبور نمی دهند .
چون مسیریاب می داند که میزبان D در زیرشبکه B واقع است و می
تواند به آن دسترسی داشته باشد به درخواست ARP میزبان A پاسخ می دهد .
البته با آدرس MAC خودش .
|
Sender's MAC Address |
Sender's IP Address |
Target MAC Address |
Target IP Address |
|
00-00-0c-94-36-ab |
172.16.20.200 |
00-00-0c-94-36-aa |
172.16.10.100 |
این تکنیک همان پاسخ Proxy ARP است که مسیریاب به میزبان
A ارسال می کند. بسته حاوی پاسخ Proxy ARP در فریم اترنت با آدرس مقصد A و
آدرس مبدا حاوی آدرس MAC مسیریاب ارسال می شود . بر اثر دریافت این پاسخ
میزبان A جدول ARP خود را به صورت زیر به روز می کند .
|
IP Address |
MAC Address |
|
172.16.20.200 |
00-00-0c-94-36-ab |
از این به بعد میزبان A تمامی پکت هایی را که می خواهند به
172.16.20.200 ( Host D) دسترسی داشته باشند را به سوی آدرس مک
00-00-0c-94-36-ab (مسیریاب) هدایت می کند . چون مسیزیاب از نحوه دستزسی
به میزبان D اطلاع دارد این پکت ها را به سوی D هدایت می کند .
بنابراین ARP Cache کلاینت های زیرشبکه A برای تمامی کلاین
های واقع در زیر شبکه B با آدرس مک مسیریاب پر می شود . و تمامی پکت های
زیرشبکه A که دارای مقصد کلاینتی در شبکه B باشند به سوی مسیریاب فرستاده
میشوند و مسیریاب آنها را به سوی کلاینت های مورد نظر در زیرشبکه B هدایت
می کند .
ARP Cache میزبان A در زیر نمایش داده شده است .
|
IP Address |
MAC Address |
|
172.16.20.200 |
00-00-0c-94-36-ab |
|
172.16.20.100 |
00-00-0c-94-36-ab |
|
172.16.10.99 |
00-00-0c-94-36-ab |
|
172.16.10.200 |
00-00-0c-94-36-bb |
توجه کنید که چندین آدرس آی پی دارای مک یکسان در جدول ARP هستند که بیان کننده استفاده از Proxy ARP است .
واسط مسیریاب سیسکو باید برای پاسخ به درخواست های Proxy ARP
پیکربندی شود . که این قابلیت در مسیریاب های سیسکو به صورت پیش فرض فعال
است . با استفاده از دستور no ip proxy-arp میتوان این قابلیت را غیر فعال
نمود . این دستور باید در واسط های مسیریاب که به اینترنت متصل هستند
اعمال گردد .
برای فعال کردن این قابلیت نیز می توان از دستور ip proxy-arp در واسط مورد نظر استفاده کرد.
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# interface ethernet 0
Router(config-if)# no ip proxy-arp
Router(config-if)# ^Z
Router#
منبع : http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a0080094adb.shtml