Skip to main content

ARP Address Resolution Protocol


ARP Address Resolution Protocol ဆိုသည္မွာ IETF ရဲ႕ Standard Protocol တစ္ခုပဲျဖစ္ပါတယ္။ ၄င္း ARP Protocol ကို IETF မွ RFC-826 မွာ အက်ယ္တ၀င့္ ျပဌာန္းထားပါတယ္။
ARP Protocol ဟာ Local Area Network တစ္ခုအတြင္းရွိ PC ႏွစ္လံုး အျပန္အလွန္ခ်ိတ္ဆက္ရာမွာ Network Layer Address (IP Address) မွ Datalink layer Address (MAC Address) သို႔ ေျပာင္းလဲရာမွာ အသံုးျပဳႏုိင္တဲ့ Protocol တစ္ခုပဲၿဖစ္ပါတယ္။
Computer Network တစ္ခုရဲ႕ Data အခ်က္အလက္မ်ား ေပးပို႕မွႈသေဘာတရားကို ေလ့လာရာမွာ ARP ရဲ႕ လုပ္ေဆာင္မႈကို အေသးစိတ္ နားလည္ထားလွ်င္ ပိုမိုလြယ္ကူစြာ ေလ့လာႏိုင္ပါလိမ့္မယ္။ ARP ဟာ TCP/IP ရဲ႕ Link Layer Protocol တစ္ခုျဖစ္တဲ့အတြက္ Broadcast Domain တစ္ခုအတြင္းမွာသာ အလုပ္လုပ္ႏုိင္မွာျဖစ္ပါတယ္။
ဥပမာအားျဖင့္ PC1 ဟာ PC2 ရဲ႕ IPV4 Address ကိုသိရွိၿပီး PC2 ဆီကို IP Packet တစ္ခုေပးပို႕ခ်င္တဲ့အခါ ၄င္းရဲ႕ Ethernet NIC မွတဆင့္ ေပးပို႕ရမွာျဖစ္ပါတယ္။ ထုိ႕ေၾကာင့္ ၄င္း IP Packet ကို Ethernet Frame ထဲသို႕ Data Encapsulation ျပဳုလုပ္ရန္ ႀကိဳးစားတဲ့အခါ Frame Header ထဲမွာရွိရမယ့္ Source MAC Address မွာ PC1 ရဲ႕ MAC Address ကို ထည့္ႏုိင္ေသာ္လည္း Destination MAC Address ကိုထည့္ရန္ PC2 ရဲ႕ MAC Address ကိုသိဖို႕လိုမွာျဖစ္ပါတယ္။

အဲဒီအခါ PC1 ဟာ PC2 ရဲ႕ IP Address ကိုသိေသာ္လည္း MAC Address ကို မသိေသးတဲ့အတြက္ေၾကာင့္ ARP Request Message ကို ဦးစြာပို႕ေပးမွာျဖစ္ပါတယ္။ ARP Request Message ဟာ Ethernet Broadcast Message တစ္ခုျဖစ္ၿပီး Destination MAC Address (FFFF.FFFF.FFFF) ျဖင့္ ပို႕ေပးတဲ့အတြက္ LAN တစ္ခုအတြင္းရွိ Computer အားလံုးဆီသို႕ ေရာက္ရွိမွာျဖစ္ပါတယ္။

ARP Request Message ဟာ Message Body အတြင္းရွိ Target IP Address ေနရာမွာ PC2 ရဲ႕ IP Address ကိုထည့္ၿပီး ေမးတဲ့အတြက္ေၾကာင့္ PC1 ကေမးလိုက္တဲ့ ARP Broadcast Message ကို PC2 မွ ARP Reply Message နဲ႕ အေၾကာင္း ၿပန္မွာျဖစ္ပါတယ္။ ARP Reply Message ဟာ Unicast Frame တစ္ခုအေနနဲ႕ ျပန္ပို႕ေပးမွာျဖစ္ပါတယ္။ ARP Message ထဲမွာ သက္ဆုိင္ရာ PC2 ရဲ႕ IP Address နဲ႕ MAC Address တို႕ျပန္ပါလာမွာျဖစ္ပါတယ္။


ARP Request Message ကိုပို႕လိုက္တဲ႔ PC2 ဟာ ARP Reply Message ကရရွိတဲ့ IP နဲ႕ MAC Address ကုိေနာက္တစ္ခ်ိန္ ျပန္လည္အသံုးျပဳရန္အတြက္ ၄င္းရဲ႕ ARP Table (ARP Cache) ထဲမွာ သိမ္းဆည္းထားမွာျဖစ္ပါတယ္။
ယခုအခါ PC1 ဟာ PC2 ရဲ႕ MAC Address ကို ARP Protocol ရဲ႕အကူအညီနဲ႕ ရယူၿပီးတဲ့အခါ PC2 ဆီသို႕ ေပးပိ္ု႕ခ်င္တဲ့ Frame ကို ေအာင္ျမင္စြာ တည္ေဆာက္ေပးပို႕ႏုိင္ၿပီျဖစ္ပါတယ္။ ဒါ့အျပင္ PC1 ဟာ PC2 ဆီသို႕ Ethernet Frame မ်ား ထပ္မံေပးပို႕လိုတဲ့အခါ ARP Table ထဲမွာ PC2 ရ႕ဲ IP Address နဲ႕ MAC Address တို႕ဟာ Cache အေနႏွင့္ ေမးထားၿပီးသားရွိေနပါက ARP Request Message ထပ္မံေပးပို႕စရာမလိုေတာ့ဘဲ Ethernet Frame ကို ခ်က္ခ်င္း တည္ေဆာက္ေပးပို႕ႏုိင္မွာပဲ ျဖစ္ပါတယ္။
သို႕ေသာ္ တစ္ခုသတိျပဳရမွာကေတာ့ ARP Table ထဲမွာရွိတဲ့ Cache Entry မ်ားဟာ ARP Table Aging Timeout ျဖစ္သြားလ်င္ေသာ္လည္းေကာင္း၊ Computer Reboot ျဖစ္လ်င္ေသာ္လည္းေကာင္း ပ်က္သြားႏုိင္ေၾကာင္းကိုလည္း သိထားရမွာျဖစ္ပါတယ္။

** ARP Protocol အတြက္ Ethernet Header ထဲရွိ Ether-type တန္ဖိုးမွာ 0x0806 ျဖစ္ပါတယ္။

** Compurter မ်ား Ethernet Frame လက္ခံရာတြင္ ၄င္း code ကိုၾကည့့္ျခင္းအားျဖင့္ Ethernet Frame ထဲတြင္ ARP Message ပါလာသည္ကုိ သိရွိႏုိင္မွာျဖစ္ပါတယ္။

** ARP Table သည္ IP packet တစ္ခုကို Ethernet Frame ထဲသို႕ Encapsulation ျပဳလုပ္တဲ့အခါတိုင္း Lookup ျပဳလုပ္ရမယ့္ Table တစ္ခုပဲျဖစ္ပါတယ္။
** ဒီေနရာမွာ တစ္ခု ေမးခ်င္တာက **
??? Network layer Protocol ဟာ IPv6 ျဖစ္ၿပီး datalink Layer Protocol ဟာ Ethernet ျဖစ္ခဲ့ပါက IPv6 packet ကို Neighbor Computer ဆီကို Frame ေဆာက္ၿပီး ေပးပို႕ဖို႕အတြက္ (Neighbor Computer IPv6 Address ကိုသိၿပီး MAC Address ကို မသိတဲ့အခါ) ARP Protocol ကိုပဲ သံုးၿပီး ေမးလိမ့္ဦးမည္ဟု သင္ ထင္ပါသလား ?
(သို႕မဟုတ္)အျခားဘယ္ Protocol သံုးလိမ့္မည္ဟု ထင္ပါသလဲ ???

ယခု Topic နဲ႕ပတ္သက္ၿပီး အဆင္မေျပတာ (သို႕မဟုတ္) သိလိုတာမ်ား၊ ျဖည့္စြက္ ေဆြးေနြးလိုတာမ်ားရွိခဲ့ရင္ေတာ့ Comment မွာျဖစ္ေစ၊ ACH Facebookpage မွျဖစ္ေစ ၀င္ေရာက္ေဆြးေႏြး ေမးျမန္း အႀကံျပဳႏုိင္ပါတယ္။
၀င္ေရာက္ေလ့လာဖတ္ရွဴေပးတဲ့အတြက္ ေက်းဇူးပါခင္ဗ်ား။


Best Regards,
Aung Cho Htwe


Unicode Version
ARP Address Resolution Protocol
ARP ဆိုသည်မှာ IETF ရဲ့ Standard Protocol တစ်ခုပဲဖြစ်ပါတယ်။ ၄င်း ARP Protocol ကို IETF မှ RFC-826 မှာ အကျယ်တဝင့် ပြဌာန်းထားပါတယ်။
ARP Protocol ဟာ Local Area Network တစ်ခုအတွင်းရှိ PC နှစ်လုံး အပြန်အလှန်ချိတ်ဆက်ရာမှာ Network Layer Address (IP Address) မှ Datalink layer Address (MAC Address) သို့ ပြောင်းလဲရာမှာ အသုံးပြုနိုင်တဲ့ Protocol တစ်ခုပဲဖြစ်ပါတယ်။
Computer Network တစ်ခုရဲ့ Data အချက်အလက်များ ပေးပို့မှှုသဘောတရားကို လေ့လာရာမှာ ARP ရဲ့ လုပ်ဆောင်မှုကို အသေးစိတ် နားလည်ထားလျှင် ပိုမိုလွယ်ကူစွာ လေ့လာနိုင်ပါလိမ့်မယ်။ ARP ဟာ TCP/IP ရဲ့ Link Layer Protocol တစ်ခုဖြစ်တဲ့အတွက် Broadcast Domain တစ်ခုအတွင်းမှာသာ အလုပ်လုပ်နိုင်မှာဖြစ်ပါတယ်။
ဥပမာအားဖြင့် PC1 ဟာ PC2 ရဲ့ IPV4 Address ကိုသိရှိပြီး PC2 ဆီကို IP Packet တစ်ခုပေးပို့ချင်တဲ့အခါ ၄င်းရဲ့ Etherner NIC မှတဆင့် ပေးပို့ရမှာဖြစ်ပါတယ်။ ထို့ကြောင့် ၄င်း IP Packet ကို Ethernet Frame ထဲသို့ Data Encapsulation ပြုုလုပ်ရန် ကြိုးစားတဲ့အခါ Frame Header ထဲမှာရှိရမယ့် Source MAC Address မှာ PC1 ရဲ့ MAC Address ကို ထည့်နိုင်သော်လည်း Destination MAC Address ကိုထည့်ရန် PC2 ရဲ့ MAC Address ကိုသိဖို့လိုမှာဖြစ်ပါတယ်။
အဲဒီအခါ PC1 ဟာ PC2 ရဲ့ IP Address ကိုသိသော်လည်း MAC Address ကို မသိသေးတဲ့အတွက်ကြောင့် ARP Request Message ကို ဦးစွာပို့ပေးမှာဖြစ်ပါတယ်။ ARP Request Message ဟာ Ethernet Broadcast Message တစ်ခုဖြစ်ပြီး Destination MAC Address (FFFF.FFFF.FFFF) ဖြင့် ပို့ပေးတဲ့အတွက် LAN တစ်ခုအတွင်းရှိ Computer အားလုံးဆီသို့ ရောက်ရှိမှာဖြစ်ပါတယ်။
ARP Request Message ဟာ Message Body အတွင်းရှိ Target IP Address နေရာမှာ PC2 ရဲ့ IP Address ကိုထည့်ပြီး မေးတဲ့အတွက်ကြောင့် PC1 ကမေးလိုက်တဲ့ ARP Broadcast Message ကို PC2 မှ ARP Reply Message နဲ့ အကြောင်း ပြန်မှာဖြစ်ပါတယ်။ ARP Reply Message ဟာ Unicast Frame တစ်ခုအနေနဲ့ ပြန်ပို့ပေးမှာဖြစ်ပါတယ်။ ARP Message ထဲမှာ သက်ဆိုင်ရာ PC2 ရဲ့ IP Address နဲ့ MAC Address တို့ပြန်ပါလာမှာဖြစ်ပါတယ်။
ARP Request Message ကိုပို့လိုက်တဲ့ PC2 ဟာ ARP Reply Message ကရရှိတဲ့ IP နဲ့ MAC Address ကိုနောက်တစ်ချိန် ပြန်လည်အသုံးပြုရန်အတွက် ၄င်းရဲ့ ARP Table (ARP Cache) ထဲမှာ သိမ်းဆည်းထားမှာဖြစ်ပါတယ်။
ယခုအခါ PC1 ဟာ PC2 ရဲ့ MAC Address ကို ARP Protocol ရဲ့အကူအညီနဲ့ ရယူပြီးတဲ့အခါ PC2 ဆီသို့ ပေးပိ်ု့ချင်တဲ့ Frame ကို အောင်မြင်စွာ တည်ဆောက်ပေးပို့နိုင်ပြီဖြစ်ပါတယ်။ ဒါ့အပြင် PC1 ဟာ PC2 ဆီသို့ Ethernet Frame များ ထပ်မံပေးပို့လိုတဲ့အခါ ARP Table ထဲမှာ PC2 ရဲ့ IP Address နဲ့ MAC Address တို့ဟာ Cache အနေနှင့် မေးထားပြီးသားရှိနေပါက ARP Request Message ထပ်မံပေးပို့စရာမလိုတော့ဘဲ Ethernet Frame ကို ချက်ချင်း တည်ဆောက်ပေးပို့နိုင်မှာပဲ ဖြစ်ပါတယ်။
သို့သော် တစ်ခုသတိပြုရမှာကတော့ ARP Table ထဲမှာရှိတဲ့ Cache Entry များဟာ ARP Table Aging Timeout ဖြစ်သွားလျင်သော်လည်းကောင်း၊ Computer Reboot ဖြစ်လျင်သော်လည်းကောင်း ပျက်သွားနိုင်ကြောင်းကိုလည်း သိထားရမှာဖြစ်ပါတယ်။
** ARP Protocol အတွက် Ethernet Header ထဲရှိ Ether-type တန်ဖိုးမှာ 0x0806 ဖြစ်ပါတယ်။

** Compurter များ Ethernet Frame လက်ခံရာတွင် ၄င်း code ကိုကြည့့်ခြင်းအားဖြင့် Ethernet Frame ထဲတွင် ARP Message ပါလာသည်ကို သိရှိနိုင်မှာဖြစ်ပါတယ်။

** ARP Table သည် IP packet တစ်ခုကို Ethernet Frame ထဲသို့ Encapsulation ပြုလုပ်တဲ့အခါတိုင်း Lookup ပြုလုပ်ရမယ့် Table တစ်ခုပဲဖြစ်ပါတယ်။

** ဒီနေရာမှာ တစ်ခု မေးချင်တာက **

## Network layer Protocol ဟာ IPv6 ဖြစ်ပြီး datalink Layer Protocol ဟာ Ethernet ဖြစ်ခဲ့ပါက IPv6 packet ကို Neighbor Computer ဆီကို Frame ဆောက်ပြီး ပေးပို့ဖို့အတွက် (Neighbor Computer IPv6 Address ကိုသိပြီး MAC Address ကို မသိတဲ့အခ) ARP Protocol ကိုပဲ သုံးပြီး မေးလိမ့်မည်ဟု သင် ထင်ပါသလား ?


ယခု Topic နဲ့ပတ်သက်ပြီး အဆင်မပြေတာ (သို့မဟုတ်) သိလိုတာများ၊ ဖြည့်စွက် ဆွေးနွေးလိုတာများရှိခဲ့ရင်တော့ Comment မှာဖြစ်စေ၊ Facebook page မှဖြစ်စေ ဝင်ရောက်ဆွေးနွေး မေးမြန်း အကြံပြုနိုင်ပါတယ်။
ဝင်ရောက်လေ့လာဖတ်ရှူပေးတဲ့အတွက် ကျေးဇူးပါခင်ဗျား။


Best Regards,
Aung Cho Htwe





Comments

Popular Posts

Cisco ASA Firewall Configuration (Part-2)

Cisco ASA Firewall Configuration (Part-2)     OSPFv2 Dynamic IP Routing on the Cisco ASA Firewall ကဲဒီေန႔ေတာ့ ASA Firewall နဲ႔ OSPFv2 တြဲစမ္းၾကတာေပါ့ .... အေပၚကပုံမွာျပထားတဲ့  OSPF Configuration Commands ေတြအတိုင္း လက္ေတြ႕လုပ္ႏွိုင္ၿပီျဖစ္ပါတယ္။ Cisco ASA Firewall နဲ႔ OSPF Routing Protocol အေျခခံအနည္းငယ္ေတာ႔သိထားရမွာျဖစ္ပါတယ္။ ospfv2 verification commands for cisco asa firewall ASA1# show interface ip brief ASA1# show route ASA1# show ospf interface ASA1# s how ospf neighbor ASA1# show ospf database Supported Routing Protocols for ASA Firewall Dynamic IP Routing •Enhanced Interior Gateway Routing Protocol (EIGRP) Enhanced Interior Gateway Routing Protocol (EIGRP) is an advanced distance-vector routing protocol that is used on a computer network to help automate routing decisions and configuration. The protocol was designed by Cisco Systems as a proprietary protocol, available only on Cisco routers. Partial functionality of EIGRP was converted to