โปรโตคอลการระบุที่อยู่ (ARP): ส่วนหัวคืออะไร?

⚡ สรุปอย่างชาญฉลาด

โปรโตคอลการแก้ไขที่อยู่ (ARP) ทำหน้าที่แปลงที่อยู่ IPv4 32 บิตเป็นที่อยู่ MAC 48 บิต เพื่อให้อุปกรณ์ต่างๆ สามารถสื่อสารกันบนเครือข่ายท้องถิ่นได้ โดยใช้คำขอแบบกระจายเสียง การตอบกลับที่แคชไว้ และฟิลด์ส่วนหัวเพื่อเชื่อมต่อระหว่างเลเยอร์เครือข่ายและเลเยอร์ลิงก์ข้อมูล

  • 🔗 วัตถุประสงค์: ARP แปลงที่อยู่ IP ที่ทราบแล้วให้เป็นที่อยู่ MAC ที่จำเป็นสำหรับการส่งเฟรมในเครือข่ายท้องถิ่น
  • 🗂️ แคช ARP: แผนที่ที่แก้ไขแล้วpingค่าต่างๆ จะถูกเก็บไว้ในแคช ARP โดยมีการกำหนดเวลาหมดอายุ เพื่อป้องกันการออกอากาศซ้ำสำหรับโฮสต์ที่รู้จัก
  • 📡 ความละเอียด: โฮสต์จะส่งคำขอ ARP ออกไป และอุปกรณ์ที่เป็นเจ้าของ IP นั้นจะส่งคำตอบกลับมาพร้อมที่อยู่ MAC ของตนเอง
  • 🧩 ประเภทของ ARP: ตัวแทน, ไม่คิดค่าใช้จ่าย, Reverse (RARP) และ ARP แบบผกผัน (InARP) ตอบสนองความต้องการด้านการกำหนดที่อยู่เฉพาะทาง
  • 🧾 ช่องข้อมูลส่วนหัว: ส่วนหัวของ ARP ประกอบด้วยประเภทฮาร์ดแวร์ ประเภทโปรโตคอล ความยาวที่อยู่ รหัสการทำงาน และที่อยู่ผู้ส่งและผู้รับ
  • 🛡️ การรักษาความปลอดภัย: ARP ไม่มีระบบตรวจสอบความถูกต้อง ทำให้เสี่ยงต่อการปลอมแปลง ดังนั้นการตรวจสอบด้วย AI จึงช่วยตรวจจับการโจมตีได้

โปรโตคอลการแก้ไขที่อยู่ (ARP) ในระบบเครือข่าย

เออาร์พีคืออะไร?

โปรโตคอลการแก้ไขที่อยู่ (ARP) เป็นโปรโตคอลที่สำคัญของเลเยอร์เครือข่ายในโมเดล OSI ซึ่งช่วยในการค้นหาที่อยู่ ที่อยู่ MAC (Media Access Control) ของอุปกรณ์จาก ที่อยู่ IPหน้าที่หลักของ ARP คือการแปลงที่อยู่ IP 32 บิต (สำหรับ IPv4) ให้เป็นที่อยู่ MAC 48 บิต

โดยหลักแล้วจะใช้เมื่ออุปกรณ์หนึ่งต้องการสื่อสารกับอุปกรณ์อื่นบนเครือข่ายท้องถิ่น ชื่อเต็มของ ARP คือ Address Resolution Protocol

Address Resolution Protocol (ARP) ทำงานอย่างไร

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

แผนภาพด้านล่างแสดงให้เห็นว่าโฮสต์ทำการแปลงที่อยู่และส่งต่อแพ็กเก็ตผ่านเราเตอร์ตัวกลางอย่างไร จนกว่าจะถึงปลายทาง:

ARP ทำหน้าที่แปลงที่อยู่ MAC และส่งแพ็กเก็ตจากโฮสต์ P ผ่านเราเตอร์ T1 และ T2 ไปยังโฮสต์ U

พิจารณาตัวอย่างต่อไปนี้:

  • โฮสต์ P จะแปลงที่อยู่โปรโตคอลสำหรับโฮสต์ U เมื่อแอปพลิเคชันบน P ส่งข้อความไปยัง U
  • หาก P ไม่สามารถระบุที่อยู่โปรโตคอลสำหรับโฮสต์ U ได้โดยตรง P จะใช้เลเยอร์อินเทอร์เน็ตในการส่งแพ็กเก็ตไปยัง U โดยการกำหนดเส้นทางผ่าน T1 และ T2
  • โฮสต์ P แก้ไขที่อยู่ฮาร์ดแวร์ T1
  • เลเยอร์เครือข่ายบนโฮสต์ P จะส่งแพ็กเก็ตซึ่งมีที่อยู่โปรโตคอลปลายทางสำหรับ U ไปยัง T1 เพื่อส่งต่อไปยังปลายทาง
  • T1 ส่งแพ็กเก็ตไปยัง T2 ซึ่ง T2 จะส่งต่อแพ็กเก็ตไปยังโฮสต์ U ต่อไป

ข้อกำหนด ARP ที่สำคัญ

ต่อไปนี้เป็นคำศัพท์สำคัญที่เกี่ยวข้องกับโปรโตคอลการแก้ไขที่อยู่ (Address Resolution Protocol):

  • แคช ARP: หลังจากระบุที่อยู่ MAC ได้แล้ว ARP จะจัดเก็บที่อยู่ MAC นั้นไว้ในตาราง (แคช) เพื่อใช้เป็นข้อมูลอ้างอิงในอนาคต ทำให้การสื่อสารครั้งต่อไปสามารถใช้ที่อยู่ MAC นั้นซ้ำได้โดยไม่ต้องกระจายสัญญาณอีกครั้ง
  • หมดเวลาแคช ARP: นี่คือระยะเวลาที่ที่อยู่ MAC ที่ได้รับการแก้ไขแล้วสามารถคงอยู่ในแคช ARP ก่อนที่จะถูกลบออก
  • คำขอ ARP: แพ็กเก็ตถูกส่งกระจายไปทั่วเครือข่ายเพื่อตรวจสอบว่าผู้ส่งสามารถค้นหาที่อยู่ MAC ปลายทางสำหรับที่อยู่ IP ที่กำหนดได้หรือไม่
  • ARP การตอบสนอง/การตอบกลับ: การตอบกลับด้วยที่อยู่ MAC ที่ต้นทางได้รับจากปลายทาง ซึ่งช่วยในการสื่อสารข้อมูลต่อไป

วิธีการแก้ไขที่อยู่

ความสัมพันธ์ระหว่างที่อยู่โปรโตคอลและที่อยู่ฮาร์ดแวร์เรียกว่าการผูก (binding) โดยมีเทคนิคสามอย่างที่ใช้เพื่อจุดประสงค์นี้:

  • การค้นหาในตาราง: ข้อมูลการผูกมัดจะถูกจัดเก็บไว้ในหน่วยความจำโดยใช้ที่อยู่โปรโตคอลเป็นคีย์ เลเยอร์ดาต้าลิงก์จะตรวจสอบที่อยู่โปรโตคอลเพื่อค้นหาที่อยู่ฮาร์ดแวร์ที่ตรงกัน
  • แบบไดนามิก: วิธีการส่งข้อความนี้ใช้สำหรับการแก้ไขปัญหาแบบ "ทันท่วงที" โดยเลเยอร์ดาต้าลิงก์จะส่งข้อความร้องขอที่อยู่ฮาร์ดแวร์ และปลายทางจะตอบกลับ
  • การคำนวณในรูปแบบปิด: ในวิธีการนี้ ที่อยู่โปรโตคอลจะอิงตามที่อยู่ฮาร์ดแวร์ ดังนั้นเลเยอร์ดาต้าลิงก์จึงสามารถอนุมานที่อยู่ฮาร์ดแวร์ได้โดยตรงจากที่อยู่โปรโตคอล

ประเภทของ ARP

ต่อไปนี้คือโปรโตคอลการแก้ไขที่อยู่ (Address Resolution Protocol) ทั้งสี่ประเภท:

  • ผู้รับมอบฉันทะ
  • ARP ฟรี
  • Reverse อาร์พี (อาร์อาร์พี)
  • ARP ผกผัน (InARP)

ภาพประกอบด้านล่างนี้สรุปประเภทของ ARP ทั้งสี่ประเภท ก่อนที่เราจะมาพิจารณาแต่ละประเภทโดยละเอียด:

แผนภูมิสรุปประเภทของ ARP ทั้งสี่ประเภท: Proxy, Gratuitous, Reverseและผกผัน

ผู้รับมอบฉันทะ

ในวิธีการ Proxy ARP อุปกรณ์เลเยอร์ 3 สามารถตอบสนองต่อคำขอ ARP ในนามของโฮสต์อื่นได้ เราเตอร์ที่กำหนดค่าไว้จะตอบสนองต่อที่อยู่ IP เป้าหมายและแมปที่อยู่ MAC ของตนเองกับที่อยู่ IP เป้าหมายนั้น ทำให้ทราฟฟิกของผู้ส่งไปถึงปลายทางที่ต้องการผ่านเราเตอร์

ARP ฟรี

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

Reverse อาร์พี (อาร์อาร์พี)

Reverse ARP หรือเรียกอีกอย่างว่า RARP เป็นโปรโตคอลเครือข่ายที่ระบบไคลเอ็นต์ในเครือข่าย LAN ใช้เพื่อขอที่อยู่ IPv4 ของตนเองจากตารางเราเตอร์ ARP โดยปกติแล้วผู้ดูแลระบบเครือข่ายจะสร้างตารางในเราเตอร์เกตเวย์ที่แมปที่อยู่ MAC แต่ละรายการกับที่อยู่ IP เฉพาะ

ARP ผกผัน (InARP)

Inverse ARP หรือเรียกอีกอย่างว่า InARP ใช้ในการค้นหาที่อยู่ IP ของโหนดจากที่อยู่เลเยอร์ดาต้าลิงก์ InARP ถูกใช้อย่างแพร่หลายในเครือข่าย ATM และ Frame Relay ซึ่งการกำหนดแอดเดรสวงจรเสมือนเลเยอร์ 2 ได้มาจากการส่งสัญญาณเลเยอร์ 2

ส่วนหัว ARP

ส่วนหัว ARP ประกอบด้วยฟิลด์ที่ทั้งคำขอและการตอบกลับใช้ในการส่งข้อมูลที่อยู่ รูปด้านล่างแสดงโครงสร้างของส่วนหัว ARP:

โครงสร้างส่วนหัว ARP แสดงประเภทฮาร์ดแวร์ ประเภทโปรโตคอล ความยาวที่อยู่ รหัสการทำงาน และที่อยู่ผู้ส่งและผู้รับ

  • ประเภทฮาร์ดแวร์: เป็น 1 สำหรับอีเธอร์เน็ต
  • ประเภทโปรโตคอล: เป็นโปรโตคอลที่ใช้ในเลเยอร์เครือข่าย
  • ความยาวของที่อยู่ฮาร์ดแวร์: เป็นความยาวในหน่วยไบต์ ดังนั้นสำหรับอีเธอร์เน็ตจะเป็น 6 ไบต์
  • ความยาวของที่อยู่โปรโตคอล: ค่าของมันคือ 4 ไบต์
  • Operaการ Code: ระบุว่าแพ็กเก็ตนั้นเป็นคำขอ ARP (1) หรือการตอบสนอง ARP (2)
  • ที่อยู่ฮาร์ดแวร์ผู้ส่ง: นี่คือที่อยู่ฮาร์ดแวร์ของโหนดต้นทาง
  • ที่อยู่โปรโตคอลผู้ส่ง: นี่คือที่อยู่เลเยอร์ 3 ของโหนดต้นทาง
  • Target ที่อยู่ฮาร์ดแวร์: ใช้ในการร้องขอ RARP โดยการตอบกลับจะรวมทั้งฮาร์ดแวร์ของปลายทางและที่อยู่เลเยอร์ 3 ด้วย
  • Target ที่อยู่โปรโตคอล: ใช้ในการร้องขอ ARP โดยการตอบกลับจะประกอบด้วยทั้งที่อยู่เลเยอร์ 3 และที่อยู่ฮาร์ดแวร์ของปลายทาง

ข้อดีของการใช้ ARP

ต่อไปนี้คือข้อดีและประโยชน์ของการใช้ ARP:

  • หากคุณทราบที่อยู่ IP ของระบบ คุณสามารถค้นหาที่อยู่ MAC ของระบบนั้นได้อย่างง่ายดายโดยใช้ ARP
  • ไม่จำเป็นต้องตั้งค่าอุปกรณ์ปลายทางด้วยตนเองเพื่อให้ "รู้จัก" ที่อยู่ MAC ระบบสามารถค้นหาได้เมื่อจำเป็น
  • ARP อนุญาตให้โฮสต์แต่ละตัวในเครือข่ายสร้างแผนที่ได้ping ความแตกต่างระหว่างที่อยู่ IP และที่อยู่ทางกายภาพ (MAC)
  • ชุดแผนที่pingค่าที่จัดเก็บไว้ในโฮสต์เรียกว่าตาราง ARP หรือแคช ARP

คำถามที่พบบ่อย

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

นี่เรียกว่า ARP ที่ไม่จำเป็น (Gratuitous ARP) โฮสต์จะประกาศแผนที่ IP ไปยัง MAC ของตนเองping ดังนั้นอุปกรณ์อื่นๆ จึงอัปเดตแคชของตน หากเครื่องอื่นตอบกลับมา นั่นแสดงว่ามีข้อขัดแย้งเรื่องที่อยู่ IP ซ้ำกันในเครือข่าย ซึ่งผู้ดูแลระบบต้องแก้ไข

การปลอมแปลง ARP หรือการโจมตีด้วย ARP poisoning คือการส่ง ARP reply ปลอมที่เชื่อมโยงที่อยู่ MAC ของผู้โจมตีกับที่อยู่ IP ที่ถูกต้อง เนื่องจาก ARP ไม่มีระบบตรวจสอบความถูกต้อง ผู้เสียหายจึงส่งข้อมูลไปยังผู้โจมตี ทำให้สามารถดักฟังข้อมูลแบบ man-in-the-middle, ขโมยเซสชัน หรือปฏิเสธการให้บริการได้

ไม่ ARP เป็นโปรโตคอลเฉพาะสำหรับ IPv4 เท่านั้น IPv6 ได้แทนที่ด้วย Neighbor Discovery Protocol (NDP) ซึ่งใช้ข้อความ ICMPv6 ในการระบุที่อยู่ระดับลิงก์และตรวจจับที่อยู่ซ้ำกัน ทำให้ได้แผนที่ที่คล้ายคลึงกันping รวมถึงฟีเจอร์เพิ่มเติม เช่น การค้นหาเราเตอร์

เรียกใช้คำสั่ง arp -a บน Windows หรือใช้ Linux เพื่อแสดงรายการแผนที่ IP-to-MAC ที่แคชไว้pingบน Linux คุณสามารถใช้คำสั่ง ip neigh ได้เช่นกัน หากต้องการลบรายการที่ค้างอยู่ ให้ใช้คำสั่ง arp -d ตามด้วยที่อยู่ IP ซึ่งจะบังคับให้ทำการค้นหาใหม่

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

ใช่แล้ว โมเดลแมชชีนเลิร์นนิงใช้แผนที่ IP-to-MAC ทั่วไปเป็นพื้นฐานpingระบบจะตรวจสอบรูปแบบการรับส่งข้อมูลและแจ้งเตือนการเปลี่ยนแปลงอย่างกะทันหัน การผูก MAC ที่ซ้ำกัน หรืออัตราการตอบกลับ ARP ที่ผิดปกติ ซึ่งบ่งชี้ถึงการโจมตีด้วย AI ช่วยเร่งการตรวจจับ แต่ถึงกระนั้นวิศวกรก็ยังคงตรวจสอบการแจ้งเตือนอีกครั้งก่อนที่จะบล็อกโฮสต์ที่ต้องสงสัย

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

สรุปโพสต์นี้ด้วย: