- ที่ทุกเครื่องจะมี ARP Cache สำหรับเก็บ IP ว่ามี MAC อาไร เก็บคู่กัน
- สมมุติ เครื่องไอพี A ต้องการติดต่อ เครื่องไอพี B เครื่อง A ต้องรู้ว่า B มี MAC อาไรเพื่อจะบรรจุข้อมูลลงใน packet ที่จะทำการส่งด้วย
- ซึ่ง A จะไปดู ARP cache ของตัวเองว่ามี การเก็บข้อมูลไอพี B อยู่ป่าว
- ถ้ามีข้อมูลไอพี B อยู่ใน ARP Cache ของ A แล้ว A ก็จะสงข้อมูลไปที่ B ได้เลยเพราะรู้ว่าไอพี B มี MAC เป็นอาไรแล้ว
- แต่ถ้าไม่มี A จะส่ง ARP Request แบบ Boradcast ไปถามทุกเครื่องใน ซับเนตนั้นว่าไอพี B เนี๋ยมี MAC เป็นอาไรซึ่งเปลีอง แบนวิดนะเนี๋ย
- ใน การส่ง ARP Request ของ A นั้นก็จะบอกให้ทุกเครื่องรู้ด้วยว่าไอพี A มี MAC เป็นอาไร ซึ่งทุกเครื่องที่ได้รับ ARP Request จาก A ก็จะเก็บ ข้อมูลของไอพี A ไว้ใน ARP Cache ของเครื่องๆ นั้นด้วย ถ้าเครื่องที่รับ Request จาก A ไม่ใช่ B ก็จะไม่ทำอาไรต่อแค่เก็บข้อมูล A แค่นั้น
- เมื่อ เครื่องไอพี B ได้รับ ARP Request จาก A เครื่อง B ก็จะทำการเก็บข้อมูล A ไว้ใน Cache ของ B แล้ว B ก็จะทำการส่ง ARP Reply ไปบอก A ว่า B มี MAC เป็นอาไร
- เมื่อ A ได้รับ Reply จาก B แล้ว A ก็จะเก็บข้อมูล B ไว้ใน ARP Cache ตัวเอง
- ต่อ มา เมื่อ B ต้องการติดต่อไปที่ A ซึ่งมีข้อมูลอยู่ใน ARP Cache ของ B อยู่แล้ว B ก็ไม่ต้องส่ง ARP Request แบบ Boardcast ไปถามในวงแลนด์
- ทำให้การติดต่อลดกระบวนการทำงานลงอย่างมาก
- ซึ่งนี่เองคือ จุดบกพร่องของ โพรโทคอลเนี๋ย
More
- http://www.sgc.co.th/arp.php
- หลังๆ จะเจอแบบนี้บ่อย
No comments:
Post a Comment