การทำงาน ARP Protocol (Address Resolution Protocol)

ARP หรือ Address Resolution Protocol เป็นโปรโตคอลที่ใช้ในการสื่อสาร ทำหน้าที่ในการจับคู่ระหว่างไอพีแอดเดรสทางลอจิคัล กับ แอดเดรสทางทางฟิสิคัล ลองฟังแบบนี้หลายๆคนคงงงว่ามันจับคู่กันอย่างไร เอาแบบนี้ครับคิดซะว่าไอพีแอดเดรสทางลอจิคัล ก็คือหมายเลขไอพี (IP) ที่ทำงานอยู่บน Layer 3 และฟิสิคัลแอดเดรสก็คือ MAC Address ที่อยู่บน Layer 2 ตามมาตรฐาน OSI Model

ในเมื่อเรารู้จักกับ ARP แล้วเรามาดูกันครับว่า ARP ทำงานอย่างไร?
การทำงานของ ARP จริงๆแล้วก็ไม่ได้สลับซับซ้อนอะไรมากมายครับ 
ลองจินตนาการคิดว่าเราจะเป็นผู้ส่งของไปหาปลายทางที่เราไม่รู้จักว่าเขาเป็นใครซึ่งอยู่ในห้องประชุมห้องเดียวกับเรา และเราก็มีข้อมูลแค่รหัสประจำตัวของผู้รับเท่านั้น แล้วเราจะทำกันอย่างไรเพื่อจะส่งของชิ้นนี้ให้ถึงมือผู้รับ วิธีง่ายๆเลยครับ  อันดับแรก เราก็ตระโกนทั่วห้องประชุมไปเลยบอกว่ารหัสประจำตัวนี้เป็นใคร จากนั้นเมื่อผู้ที่มีเลขประจำตัวตรงกับเราก็จะเป็นคนตอบรับเราเองว่า เขามีเลขประจำตัวนี้แล้วเราก็สามารถส่งของดังกล่าวให้กับผู้รับได้อย่างสบายใจ

ในกรณีของการส่งข้อมูลของบนพื้นฐานของ Network ก็ไม่มีอะไรต่างจากชีวิตจริงเท่าที่ควรครับ การใช้งาน ARP เป็นการจับคู่ระหว่างหมายเลข IP กับ MAC เพื่อให้อุปกรณ์ Layer 2 สามารถส่งข้อมูลไปยังปลายทางได้อย่างถูกต้องนั่นเอง เพราะอุปกรณ์ Layer 2 ไม่รู้จักหรอกครับว่า IP Address คืออะไร แต่มันจะรู้จักแค่ MAC Address เท่านั้นครับ โดยการส่งข้อมูลก็ทำการส่งอยู่บนอุปกรณ์ที่ชื่อว่า Switch นั่นแหละครับ โดยตัวอุปกรณ์ Switch จะมีตารางบอกแค่ว่า จะส่งข้อมูลไปยัง MAC Address นี้ต้องส่งข้อมูลไปยังพอร์ตใด แต่ Switch จะรู้ได้ไงก็เลยต้องอาศัยโปรโตคอลที่ชื่อว่า ARP นี่แหละครับ

การทำงานของ ARP ก็ไม่มีอะไรซับซ้อนมากครับ โดยขั้นตอนแรกเครื่องที่ต้องการสอบถาม MAC Address ก็จะส่ง ARP Request ซึ่งบรรจุ IP , MAC Address ของตนเอง และ IP Address ของเครื่องที่ต้องการทราบ MAC Address ส่วน MAC Address ปลายทางนั้น จะถูกกำหนดเป็น FF:FF:FF:FF:FF:FF ซึ่งเป็น Broardcast Address เพื่อให้ ARP packet ถูกส่งไปยังเครื่องทุกเครื่องที่อยู่ในเน็ตเวิร์คเดียวกัน
กระบวนการนี้ก็จะเหมือนกับการประกาศหาผู้รับของในห้องประชุมเลยครับ 

เมื่อเครื่องที่มี IP Address ตรงกับที่ระบุใน ARP Packet จะตอบกลับมาด้วย ARP Packet  โดยใส่ MAC Address และ IP Address ของตนเองเป็นผู้ส่ง และใส่ MAC Address และ IP Address ของเครื่องที่ส่งมาเป็นผู้รับ packet ที่ตอบกลับนี้เรียกว่า ARP Reply 


Credit :
http://www.cpsk69.com/lecture/lecturefile/204421Network/images/image19.png
https://sites.google.com/site/arpkku/home/-klki-kar-thangan-khxng-arp