ARP – Address Resolution Protocol คืออะไร

ในการสื่อสารใดๆ ก็ตาม จำเป็นต้องมีการสื่อสารผ่านตัวกลางในระดับ Physical เสมอ ซึ่งเป็นระดับล่างสุดในการสื่อสาร สำหรับในโปรโตคอล TCP/IP ถือว่าเป็นชั้น Link Layer นั่นเอง การสื่อสารในระดับนี้เป็นการสื่อสารระหว่าง Hardware Interface ในเน็ตเวิร์คเดียวกัน ซึ่งมองข้อมูลเป็น Ethernet Frame เท่านั้น จะไม่สนใจว่าข้อมูลภายในเป็นอย่างไร มีต้นทางอยู่ที่ไหนหรือปลายทางไปหาใคร แต่สิ่งที่โปรโตคอลในชั้นนี้สนใจก็คือ ข้อมูลที่ Network Layer ส่งมาให้นั้น จะต้องส่งไปยัง Hardware Interface ไหน ซึ่งการระบุ Hardware Interface จะใช้เป็น MAC Address มีลักษณะเป็นเลขฐาน 16 ยาว 6 ไบต์ เช่น 23:43:AA:5B:32:2C ซึ่งจะไม่มีอุปกรณ์ที่มีหมายเลขนี้ซ้ำกันเด็ดขาด
ในกรณีที่มีการส่งข้อมูลจาก interface หนึ่ง ทุกๆ Interface ที่อยู่ในเน็ตเวิร์คเดียวกันจะได้รับข้อมูล แต่มีเพียงอินเทอร์เฟสเดี่ยวเท่านั้นที่มี MAC Address ตรงกับ MAC Address ของผู้รับที่ระบุในเฟรมข้อมูลเท่านั้น ที่จะนำข้อมูลนั้นไปประมวลผล ดังนั้นในการส่งข้อมูลจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง ฝั่งผู้ส่งจะต้องระบุ MAC Address ของผู้รับให้ถูกต้อง จึงจะสามารถส่งข้อมูลไปได้ สมมติว่า เครื่องคอมพิวเตอร์ IP 172.17.3.12 ต้องการติดต่อกับ IP 161.246.10.21 การทำงานในระดับ IP จะสั่งให้ ส่งข้อมูลไปยัง IP 172.17.3.1 ซึ่งเป็น Default Router แต่ IP 172.17.2.12 จะรู้ได้อย่างไรว่า 161.246.10.21 มี MAC Address หมายเลขอะไร ?

จุดนี้เองที่จะต้องมีการใช้ ARP ในการสอบถาม MAC Address จากเครื่องที่เราต้องการส่งข้อมูล เมื่อได้รับ MAC Address ของผู้รับมาแล้วจึงจะสามารถเชื่อมต่อกับ เครื่องอีกฝั่ง เพื่อการสื่อสารในระดับสูงขึ้นไปได้

1. สภาพปัญหาของระบบเครือข่ายเดิม

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

2. บทบาทของโพรโตคอล ARP

โพรโตคอล ARP (Address Resolution Protocol) ทำหน้าที่ในการหาแอดเดรส โดยบทบาทของโพรโตคอล ARP มีความสำคัญมาก เพราะโพรโตคอล ARP ทำหน้าที่ในการจับคู่ระหว่างไอพีแอดเดรสทางลอจิคัล กับ แอดเดรสทางทางฟิสิคัล ทั้งนี้เนื่องจากระบบของการส่งข้อมูลในระบบไอพีนั้น เป็นระบบที่ไม่ขึ้นกับฮาร์ดแวร์ใดๆ ซึ่งหมายความว่าระบบไอพีไม่มีความสามารถในการเรียกใช้ฮาร์ดแวร์ในการส่งข้อมูลด้วยตัวเอง ทำให้เมื่อระบบไอพีต้องการส่งข้อมูล จะต้องร้องขอบริการจากระดับชั้นดาต้าลิงค์ แต่เนื่องจากระดับชั้นดาต้าลิงค์ไม่รู้จักแอดเดรสในระบบไอพี  ดังนั้นระบบไอพีจึงต้องทำการหาแอดเดรสที่ระดับชั้นดาต้าลิงค์รู้จัก ซึ่งก็คือฮาร์ดแวร์แอดเดรส เพื่อที่จะสร้างเฟรมข้อมูลในชั้นดาต้าลิงค์ได้ โดยโพรโตคอล ARP จะทำหน้าที่นี้การทำงานของ ARP เมื่อแพ็คเกตนำเข้าที่ระบุเครื่อง host ในระบบเครือข่ายมาถึง Gateway เครื่องที่ Gateway จะเรียกโปรแกรม ARP ให้หาเครื่อง Host หรือ MAC address ที่ตรงกับ IP Address โปรแกรม ARP จะหาใน ARP cache เมื่อพบแล้วจะแปลงแพ็คเกต เป็นแพ็คเกตที่มีความยาวและรูปแบบที่ถูกต้อง เพื่อส่งไปยังเครื่องที่ระบุไว้ แต่ถ้าไม่พบ โปรแกรม ARP จะกระจายแพ็คเกตในรูปแบบ บรอดคาสต์ ไปยังเครื่องทุกเครื่องในระบบ และถ้าเครื่องใดเครื่องหนึ่งทราบว่ามี  IP Address ตรงกันก็จะตอบกลับมาที่ ARP โปรแกรม ARP จะปรับปรุง ARP Cache และส่งแพ็คเกตไปยัง MAC Address หรือเครื่องที่ตอบมา โพรโตคอล ARP ได้ถูกกำหนดไว้เป็นมาตรฐานภายใต้ RFC 826 โดยการทำงานของ ARP จะมีรูปแบบการทำงานในแบบ บรอดคาสต์  ดังนั้นเครือข่ายที่ใช้งานกับโพรโตคอล  ARP ได้จึงต้องเป็นเครือข่ายที่มีการทำงานในแบบ บรอดคาสต์ ซึ่งระบบแลนส่วนใหญ่จะมีการทำงานเป็นแบบบรอดคาสต์อยู่แล้ว จึงสามารถทำงานร่วมกับโพรโตคอล ARPได้เป็นอย่างดี และนอกเหนือจากโพรโตคอล  ARP แล้วยังมีอีกโพรโตคอลหนึ่งที่ถือว่าเป็นโพรโตคอลคู่แฝดของ ARP โดยจะมีการทำงานที่ย้อนกลับกันกับโพรโตคอล ARP ดังนั้นจึงมีชื่อว่า RARP (Reverse ARP) โดยกำหนดไว้ภายใต้  RFC 903 โดยรูปแบบเฟรมของ ARP และ RARP จะมีลักษณะเหมือนกัน ดังรูปที่ 1

สำหรับรายละเอียดของแต่ละฟิลด์ภายในเฟรม ARP นั้น มีดังต่อไปนี้
– Hardware มีขนาด 16 บิต ทำหน้าที่ บอกถึงชนิดของฮาร์ดแวร์ที่เออาร์พีทำงานอยู่ เช่น 1 หมายถึง เครือข่ายอีเทอร์เน็ต, 4 หมายถึง เครือข่ายโทเคนริง เป็นต้น
– Protocol มีขนาด 16 บิต ทำหน้าที่บอกว่าเฟรม ARP นี้ถูกเรียกใช้จากโพรโตคอลใด
– HLEN มีขนาด 8 บิต ทำหน้าที่ระบุความยาวของฮาร์ดแวร์แอดเดรส ในกรณีของอีเทอร์เน็ตก็จะมีค่าเป็น 6
– PLEN มีขนาด 8 บิต ทำหน้าที่ระบุความยาวของแอดเดรสของโพรโตคอลที่เรียกใช้ ซึ่งในกรณีนี้ที่เรียกจากระบบไอพี ก็จะมีค่าเป็น 4
– Operation มีขนาด 16 บิตทำหน้าที่ระบุการทำงานของ ARP โดยจะมี 4 ค่า คือ
o1 หมายถึง  ARP  Request ใช้ในการค้นหาหมายเลขฮาร์ดแวร์แอดเดรส
o2 หมายถึง  ARP Replay ใช้ในการตอบกลับเพื่อบอกหมายเลขฮาร์ดแวร์แอดเดรส
o3 หมายถึง  RARP Request ใช้ในการค้นหาหมายเลขของโพรโตคอล
o4 หมายถึง RARP Replay ใช้ในการตอบกลับเพื่อบอกหมายเลขของโพรโตคอล
– Source Hardware Address ใช้ในการเก็บค่าฮาร์ดแวร์แอดเดรสของผู้ส่ง ไม่จำกัดความยาว
– Destination Hardware Address ใช้ในการเก็บค่าฮาร์ดแวร์แอดเดรสของผู้รับ ไม่จำกัดความยาว
– Source Protocol Address ใช้ในการเก็บค่าแอดเดรสของโพรโตคอลที่เรียกใช้ในฝั่งผู้ส่ง ไม่จำกัดความยาว
– Destination Protocol Address ใช้ในการเก็บค่าแอดเดรสของโพรโตคอลที่เรียกใช้ในฝั่งผู้รับ ไม่จำกัดความยาว
3. การทำงานของโพรโตคอล  ARP

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

สมมติว่าคอมพิวเตอร์ A ต้องการติดต่อกับคอมพิวเตอร์ B จึงส่งแพ็กเกจ ARP เข้าไปในเครือข่ายแบบบรอดคาสต์ ซึ่งทุกเครื่องที่อยู่ในเครือข่ายก็จะได้รับแพ็กเกจนี้ทั้งหมดโดยรายละเอียดของฟิลด์ต่างๆ ในแพ็กเกจจะมีค่าตามรูปที่ 5 โดยมีรายละเอียดดังนี้
1. ฟิล์ด Hardware มีค่าเท่ากับ 1 หมายความว่า เป็นเครือข่ายอีเทอร์เน็ต
2. ฟิลด์ Protocol มีค่าเท่ากับ 0800h หมายถึง ถูกเรียกจากโพรโตคอลไอพี
3. ฟิลด์ HLEN มีค่าเท่ากับ 6 หมายถึง ฮาร์ดแวร์แอดเดรสของเครือข่ายอีเทอร์เน็ตยาว 6 ไบต์
4. ฟิลด์ PLEN มีค่าเท่ากับ 4 หมายถึง ความยาวของแอดเดรสของโพรโตคอลที่เรียกใช้ ซึ่งก็คือไอพีแอดเดรส มีความยาว 4 ไบต์
5. ฟิลด์ Operation เป็น 1 หมายถึง เป็นการส่งแบบ ARP Request
6. ฟิลด์ Source Hardware Address คือฮาร์ดแวร์แอดเดรสของผู้ส่ง
7. ฟิลด์ Source IP Address คือหมายเลขไอพีของผู้ส่ง
8. ฟิลด์ Destination Hardware Address คือฮาร์ดแวร์แอดเดรสของผู้รับนั้น จะมีค่าเป็น 00:00:00:00:00:00 เนื่องจากยังไม่ทราบว่าผู้รับมีฮาร์ดแวร์แอดเดรสเป็นเท่าไร
9. ฟิลด์ Destination IP Address คือ หมายเลขไอพีแอดเดรสของผู้รับ ซึ่งฟิลด์นี้จะเสมือนกับเป็นคำถามว่าเครื่องที่มีไอพีแอดเดรสนี้   มีฮาร์ดแวร์แอดเดรสเป็นเท่าใดคอมพิวเตอร์ทุกเครื่องในเครือข่ายล้วนได้รับแพ็กเกจนี้  เพราะเป็นการส่งแบบบรอดคาสต์ แต่จะมีเพียงเครื่องเดียวที่มีหมายเลขไอพีแอดเดรสตรงกับที่ระบุไว้ในฟิลด์หมายเลขไอพีของผู้รับเท่านั้น ที่จะรับเอาแพ็กเกจนี้ไปประมวลผลแล้วตอบกลับมา ดังนั้นเมื่อเครื่องคอมพิวเตอร์ได้รับแพ็กเกจดังกล่าวแล้ว จะต้องเปรียบเทียบกับหมายเลขไอพีแอดเดรสของตนเองว่าตรงหรือไม่ หากไม่ตรงก็จะทิ้งแพ็กเกจนั้นไป  หากตรงก็จะรับเข้ามาแล้วตอบกลับในแบบยูนิคาสต์

จะเห็นได้ว่าคอมพิวเตอร์ B จะส่งแพ็กเกจ ARP กลับมายังคอมพิวเตอร์ A ในแบบยูนิคาสต์ ทั้งนี้เนื่องจากคอมพิวเตอร์ B ทราบอยู่แล้วว่าคอมพิวเตอร์ A มีหมายเลขฮาร์ดแวร์แอดเดรส
เป็นอะไร จากแพ็กเกจ ARP ที่ส่งมาก่อนหน้านี้ โดยมีรายละเอียดของฟิลด์ คือ ฟิล์ด Hardware มีค่าเท่ากับ 1 หมายความว่าเป็นเครือข่ายอีเทอร์เน็ต ฟิลด์โพรโตคอลมีค่าเท่ากับ 0800h หมายถึง
ถูกเรียกจากโพรโตคอลไอพี ฟิลด์ HLEN มีค่าเท่ากับ 6 หมายถึงฮาร์ดแวร์แอดเดรสยาว 6 ไบต์ ฟิลด์ PLEN เท่ากับ 4 หมายถึงความยาวของไอพีแอดเดรส  4 ไบต์ ฟิลด์ Operation เป็น 2 หมายถึงเป็น ARP Reply จากนั้นจะเป็นฮาร์ดแวร์แอดเดรสของผู้ส่งหมายเลขไอพีของผู้ส่ง ฮาร์ดแวร์แอดเดรสของผู้รับ และหมายเลขไอพีแอดเดรสของผู้รับจากรูปที่ 2 และ 5 นั้นเป็นตัวอย่างของการติดต่อภายในเครือข่ายเดียวกัน (Local Network) แต่หากเป็นการติดต่อกันข้ามเครือข่าย (Remote Network) แล้ว การทำงานจะต่างออกไปจากในรูปเล็กน้อย แต่การทำงานที่ต่างออกไปนั้น มิใช่ต่างออกไปเพราะโพรโตคอล  ARP เอง แต่ต่างออกไปเพราะเมื่อระบบไอพีทราบว่าคอมพิวเตอร์ที่ติดต่อด้วย เป็นแอดเดรสที่เป็นเครือข่ายอื่น มันจะทำการติดต่อไปยังอุปกรณ์เลือกเส้นทาง แทนที่จะส่งไปยังเครื่องนั้นโดยตรง  จากการทำงานของโพรโตคอล ARP ที่ผ่านมานั้น จะเห็นถึงประโยชน์ของโพรโตคอลนี้แล้ว
แต่ในสภาพการใช้งานจริงนั้น  จะต่างจากนี้เล็กน้อย กล่าวคือ  ในการค้นหาฮาร์ดแวร์แอดเดรสนั้น จะไม่ค้นหาในทุกๆ ครั้งของการส่งข้อมูลในระบบไอพี ทั้งนี้เนื่องจากในการส่งข้อมูลแต่ละครั้ง เช่น การส่งไฟล์ 1 ไฟล์นั้น โดยส่วนใหญ่จะไม่สามารถส่งให้เสร็จสิ้นในแพ็กเกจเดียวได้ ดังนั้นหากต้องการส่งข้อมูล 1 แพ็กเกจ จะต้องไปหาฮาร์ดแวร์แอดเดรส 1 ครั้งแล้ว ก็หมายความว่าหากต้องการส่ง 10 แพ็กเกจ ก็จะต้องไปหาฮาร์ดแวร์แอดเดรส 10 ครั้งด้วย ซึ่งนั่นหมายความว่าระบบไม่มีประสิทธิภาพแล้ว ดังนั้นเพื่อป้องกันปัญหานี้ ระบบปฏิบัติการที่ใช้ไอพี จึงสร้างแคช ARP (ARP Cache) เอาไว้ เพื่อทำหน้าที่เก็บค่าของฮาร์ดแวร์แอดเดรสที่ได้ค้นหาก่อนหน้านี้เอาไว้ เพื่อที่เมื่อจะส่งข้อมูลในครั้งต่อไป ไปยังคอมพิวเตอร์เครื่องเดิม จะได้ไม่ต้องส่งแพ็กเกจ ARP ไปถามอีก สามารถใช้จากแคช ARP ได้เลย สำหรับการเรียกดูข้อมูลจาก ARP Cache นั้น สามารถใช้คำสั่ง arp –a หรือ arp –g เรียกดูได้ อย่างไรก็ตามข้อมูลในแคชนั้นจะไม่เก็บอย่างถาวร โดยจะมีค่า Time Out ที่ขึ้นอยู่กับระบบปฏิบัติการ Network Security

สำหรับโพรโตคอล RARP นั้น มีหน้าที่ตรงข้ามกับ ARP คือ ทำหน้าที่ค้นหาไอพีแอดเดรส จากค่าฮาร์ดแวร์แอดเดรส โดยส่วนใหญ่โพรโตคอล  RARP จะใช้กรณีที่มีการขอหมายเลขไอพีแอดเดรส เช่น ในเครื่องประเภทที่เป็นแบบ Diskless ซึ่งไม่มีการกำหนดไอพีแอดเดรสเอาไว้เครื่องประเภทนี้ เมื่อบูตแล้วก็จะใช้โพรโตคอล  RARP  เพื่อขอหมายเลขไอพีแอดเดรสมาใช้งาน

4. กลไกการทำงานของ ARP

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

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

5. ARP Cache

จะเห็นว่ากระบวนการ ARP จะเกิดขึ้นทุกครั้งที่มีการส่ง IP Datagram และกระบวนการ ARP ก็กินเวลารับส่งข้อมูลและทรัพยากรในเน็ตเวิร์คพอสมควร โดยเฉพาะในจุดที่ต้องมีการ Broadcast ARP Request ซึ่งหากเป็นเช่นนั้น แบนวิธ์อันมีค่าของเน็ตเวิร์คคงหมดไปกับ ARP Packet ที่วิ่งพล่านในสายเคเบิ้ลแน่ๆ จึงมีการออกแบบบัฟเฟอร์เป็นตารางจับคู่ ระหว่าง ARP กับ IP Address เพื่อไม่ต้องส่ง ARP Request / Reply ทุกครั้งที่จะทำการส่ง IP datagram แต่ IP Address นั้นเป็นสิ่งที่ผู้ใช้กำหนดขึ้น เป็น Logical ซึ่งสามารถเปลี่ยนแปลงได้ ดังนั้น ข้อมูลในตารางนี้จึงต้องมีอายุการใช้งาน โดยทั่วไป กำหนดให้เป็นเวลา 20 นาที เมื่อหมดเวลาแล้ว หากจะส่ง IP Datagram ครั้งต่อไป จะต้องทำการส่ง ARP Request ใหม่ ท่านสามารถเรียกดู ARP Cache ในระบบปฏิบัติการ Linux ได้ด้วยคำสั่ง #ARP[Enter]

6. ประโยชน์และการนำไปประยุกต์ใช้ในทางสร้างสรรค์

การนำอุปกรณ์ที่เกี่ยวข้องในการเชื่อมต่อระหว่างเครือข่ายที่ติต่อสื่อสารกันในโพรโตคอล ARP เพื่อนำไปติดตั้งในการควบคุมการทำงานต่างๆ เช่น การควบคุมสัญญาณไฟจราจร, การติดตั้งเครื่องควบคุมอัตราเร็วของรถยนต์ที่วิ่งบนท้องถนนเพื่อช่วยลดอุบัติเหตุบนท้องถนนได้, การส่งสัญญาณควบคุมความเร็วของรถยนต์ในแต่ละคันโดยมีการจำกัดความเร็วของรถด้วยการติดตั้งระบบเชื่อมต่อ เช่นการติดตั้งฮาร์ดแวร์ในรถแต่ละคันที่สามารถส่งเฟรมข้อมูลเชื่อมต่อเครือข่ายของการทำงานของโพรโตคอล ARP โดยที่รถแต่ละคันจะมีหมายเลขโพรโตคอลประจำรถเพื่อที่จะสามารถติดต่อกับสัญญาณของรถที่ทำผิดกฎหมาย หรือทำความผิดอย่างใดอย่างหนึ่ง เพื่อง่ายต่อการติดตามควบคุมรถคันนั้นได้ บางทีอาจนำอุปกรณ์เชื่อมต่อเครือข่ายเหล่านี้มาช่วยในเรื่องการก่อเหตุอาชญากรรม เพื่อช่วยไม่ให้เกิดอาชญากรรมขึ้น
การใช้อุปกรณ์เกี่ยวกับโพรโตคอล ARP มาใช้กับอุปกรณ์ไฟฟ้าภายในบ้าน ที่ใช้โพรโตคอล ARP ในการค้นหาหมายเลขของอุปกรณ์เครื่องใช้ไฟฟ้าที่ทำรหัสติดตั้งไว้ แล้วส่งสัญญาณการควบคุมเครื่องใช้ไฟฟ้าต่างๆ   เช่น การใช้คอมพิวเตอร์เครื่องหนึ่งสั่งให้โทรทัศน์ทำงาน เปิด เปลี่ยนสัญญาณ ,สั่งให้เครื่องซักผ้าทำงานเองโดยติดตั้งฮาร์ดแวร์เพื่อควบคุมเครื่องซักผ้าให้ทำงานตามคำสั่ง ที่ได้ติดตั้งข้อมูลไว้ เตาไมโครเวฟ  เครื่องทำนํ้าอุ่น และอุปกรณ์อื่นๆอีกมากมาย ให้ทำงานตามคำสั่งได้  ด้านการพัฒนาเทคโนโลยีให้เจริญก้าวหน้าขึ้นไปเรื่อยๆ และทางการแพทย์สามารถใช้เชื่อมเครือข่ายในตัวอุปกรณ์ที่ติดตั้งเพื่อรักษาหรือบำบัดผู้ป่วย หรือใช้เพื่อการวิจัยโรคที่เกิดขึ้นให้มีความสะดวกรวดเร็วและมีประสิทธิภาพยิ่งๆ ขึ้นไป
จะเห็นได้ว่าโพรโตคอล ARP สามารถเป็นตัวกลางในการเชื่อมต่ออุปกรณ์อื่นๆให้ทำงานร่วมกันได้สามารถติดต่อสื่อสารระหว่างระบบเครือข่ายได้โดยอาศัยตัวกลางคือโพรโตคอล ARP ที่ทำหน้าที่ค้นหาหมายเลขจากฮาร์ดแวร์ โดยส่งข้อมูลเป็นแพกเก็จไปยังไอพีแอดเดรส และทำการเชื่อมโยงเครือข่ายส่งข้อมูลสื่อสารกันได้

7. การนำใช้ในทางไม่สร้างสรรค์

เช่น การใช้โปรแกรมเน็ตคัท เพื่อตัดการใช้งานอินเทอร์เน็ตของผู้อื่น ถ้าเราลองไปจับ packet ในเครือข่ายที่ส่งโดยเน็ตคัทดูจะเห็นว่ามี  packet ARP  เยอะมาก   ไม่รู้ส่งอะไรไปบ้าง  แต่ถ้าลองดูรายละเอียดดี ๆ Netcut  มันจะสร้าง  Packet  ปลอมขึ้นมา ARP (Reply) เพื่อส่งไปให้เครื่องที่ถูกยิง  โดย  packet  นั้นจะมี  Mac Address  ที่มั่วๆ ของ  gateway  อยู่  ทำให้ packet ของเครื่องที่ถูกยิงวิ่งออก gateway  ไม่ถูกก็จะทำให้ไม่สามารถใช้งานอินเทอร์เน็ตได้
9. RARP (Reverse Address Resolution Protocol)
RARP (Reverse Address Resolution Protocol) เป็นโปรโตคอล ซึ่งเครื่องทางกายภาพ ในเครือข่าย LAN สามารถขอเรียนรู้ IP Address จากเครื่องแม่ข่าย gateway หรือตาราง Address Resolution Protocol ผู้บริหารเครือข่ายสร้างตารางใน gateway router ของเครือข่าย LAN ที่ใช้จับคู่ address ของเครื่องทางกายภาพ (หรือ Media Access Control address) ที่ตรงกับ Internet Protocol Address เมื่อมีการติดตั้งเครื่องใหม่ โปรแกรมลูกข่ายของ RARP จะขอ RARP server จาก router ให้ส่ง IP address มาให้ สมมติว่ามีการตั้งค่าในตาราง router แล้ว RARP server จะส่งกลับ IP address ไปที่เครื่องซึ่งจะเก็บไว้สำหรับการใช้ต่อไป RARP มีให้กับเครือข่าย LAN แบบ Ethernet, Fiber Distributed-Data Interface และ Token Ring

8. บทสรุป


ARP คือ โพรโทคอลที่ใช้ในการสอบถามหมายเลขแม็คแอดเดรสของเครื่องปลายทางว่ามีหมายเลขอะไรโดยการส่ง ARP Request ออกไป เครื่องปลายทางจะตอบกลับมาด้วย ARP Reply เมื่อเครื่องต้นทางทราบหมายเลขแม็คแอดเดรสของเครื่องปลายทางแล้ว เครื่องต้นทางจึงทำการส่งข้อมูลไปยังเครื่องปลายทางต่อไป และใช้บัฟเฟอร์ในการเก็บตารางจับคู่ ระหว่าง MAC Address กับ IP Address เพื่อไม่ต้องส่ง ARP Request และ ARP Reply ทุกครั้ง แต่เรียกใช้ข้อมูลในบัฟเฟอร์แทนโดย ARP Protocol ทำงานอยู่ในชั้น Link Layer ภายใต้โพรโทคอล TCP/IP

เอกสารอ้างอิง
[1] Realdev.truehits.net
Available : http://realdev.truehits.net/tcpip/charpter3.php

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s