อ่าน 9 นาที
โปรโตคอลการแก้ไขที่อยู่
โปรโตคอล การระบุที่อยู่ ( ARP ) เป็น โปรโตคอลการสื่อสาร สำหรับค้นหาที่ อยู่ระดับลิงก์ เลเยอร์ เช่น ที่อยู่ MAC ที่เชื่อมโยงกับ ที่อยู่ ระดับอินเทอร์เน็ต เลเยอร์ ซึ่งโดยทั่วไปคือ...
โปรโตคอลการแก้ไขที่อยู่
| ชุดโปรโตคอลอินเทอร์เน็ต |
|---|
| ชั้นแอปพลิเคชัน |
| ชั้นการขนส่ง |
| ชั้นอินเทอร์เน็ต |
| เลเยอร์เชื่อมโยง |
โปรโตคอลการระบุที่อยู่ ( ARP ) เป็นโปรโตคอลการสื่อสารสำหรับค้นหาที่อยู่ระดับลิงก์เลเยอร์ เช่นที่อยู่ MACที่เชื่อมโยงกับ ที่อยู่ ระดับอินเทอร์เน็ตเลเยอร์ ซึ่งโดยทั่วไปคือที่อยู่ IPv4โปรโตคอลนี้เป็นส่วนหนึ่งของชุดโปรโตคอลอินเทอร์เน็ตและถูกกำหนดขึ้นในปี 1982 โดยRFC 826ซึ่งเป็นมาตรฐานอินเทอร์เน็ต STD 37
ARP ช่วยให้โฮสต์สามารถส่งข้อมูล เช่น แพ็กเก็ต IPv4 ไปยังโหนดอื่นในเครือข่ายท้องถิ่นได้ โดยมีโปรโตคอลสำหรับรับที่อยู่ MAC ที่เชื่อมโยงกับที่อยู่ IP โฮสต์จะส่งคำขอแบบบรอดแคสต์ที่มีที่อยู่ IP ของโหนดเป้าหมาย และโหนดที่มีที่อยู่ IP นั้นจะตอบกลับด้วยที่อยู่ MAC ของตน
ARP ได้ถูกนำไปใช้กับเทคโนโลยีเลเยอร์เครือข่ายและเลเยอร์ลิงก์ข้อมูลหลายรูปแบบ เช่นIPv4 , Chaosnet , DECnetและ Xerox PARC Universal Packet (PUP) โดยใช้มาตรฐานIEEE 802 , FDDI , X.25 , Frame RelayและAsynchronous Transfer Mode (ATM)
ใน เครือข่าย Internet Protocol Version 6 (IPv6) ฟังก์ชันการทำงานของ ARP นั้นถูกให้บริการโดยNeighbor Discovery Protocol (NDP)
ขอบเขตการปฏิบัติงาน
โปรโตคอลการแก้ไขที่อยู่ (Address Resolution Protocol) เป็น โปรโตคอลแบบ ร้องขอ-ตอบกลับข้อความของโปรโตคอลนี้จะถูกห่อหุ้มโดยตรงด้วยโปรโตคอลระดับลิงก์เลเยอร์ การสื่อสารจะเกิดขึ้นภายในขอบเขตของเครือข่าย ย่อยเดียว และจะไม่ถูกส่งผ่านเส้นทาง ใด ๆ
โครงสร้างแพ็กเก็ต
โปรโตคอลการแก้ไขที่อยู่ (ARP) ใช้รูปแบบข้อความที่เรียบง่ายซึ่งประกอบด้วยคำขอหรือการตอบสนองการแก้ไขที่อยู่เพียงหนึ่งรายการ แพ็กเก็ตจะถูกส่งผ่านเลเยอร์การเชื่อมโยงข้อมูลของเครือข่ายพื้นฐานในรูปแบบของเพย์โหลดดิบ ในกรณีของอีเธอร์เน็ต จะใช้ค่า EtherType 0x0806 เพื่อระบุเฟรม ARP
ขนาดของข้อความ ARP ขึ้นอยู่กับขนาดของแอดเดรสเลเยอร์ลิงก์และเลเยอร์เครือข่ายส่วนหัว ของข้อความ จะระบุประเภทของเครือข่ายที่ใช้ในแต่ละเลเยอร์ รวมถึงขนาดของแอดเดรสของแต่ละเลเยอร์ด้วย ส่วนหัวของข้อความจะสมบูรณ์ด้วยรหัสการดำเนินการสำหรับการร้องขอ (1) และการตอบกลับ (2) เพย์โหลดของแพ็กเก็ตประกอบด้วยแอดเดรสสี่รายการ ได้แก่ แอดเดรสฮาร์ดแวร์และโปรโตคอลของโฮสต์ผู้ส่งและผู้รับ
โครงสร้างแพ็กเก็ตหลักของแพ็กเก็ต ARP แสดงอยู่ในตารางต่อไปนี้ ซึ่งแสดงตัวอย่างกรณีของเครือข่าย IPv4 ที่ทำงานบนอีเธอร์เน็ต ในสถานการณ์นี้ แพ็กเก็ตจะมีฟิลด์ 48 บิตสำหรับที่อยู่ฮาร์ดแวร์ของผู้ส่ง (SHA) และที่อยู่ฮาร์ดแวร์ของผู้รับ (THA) และฟิลด์ 32 บิตสำหรับที่อยู่โปรโตคอลของผู้ส่งและผู้รับ (SPA และ TPA) ที่เกี่ยวข้อง ขนาดของแพ็กเก็ต ARP ในกรณีนี้คือ 28 ไบต์
| ออฟเซ็ต | อ็อกเท็ต | 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| อ็อกเท็ต | นิดหน่อย | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| 0 | 0 | ประเภทฮาร์ดแวร์ ( 1 ) | ประเภทโปรโตคอล ( 0x0800 ) | ||||||||||||||||||||||||||||||
| 4 | 32 | ความยาวฮาร์ดแวร์ ( 6 ) | ความยาวของโปรโตคอล ( 4 ) | การดำเนินการ | |||||||||||||||||||||||||||||
| 8 | 64 | ที่อยู่ฮาร์ดแวร์ผู้ส่ง | |||||||||||||||||||||||||||||||
| 12 | 96 | ที่อยู่โปรโตคอลผู้ส่ง↴ | |||||||||||||||||||||||||||||||
| 16 | 128 | ↪ที่อยู่โปรโตคอลผู้ส่ง (ต่อ) | ที่อยู่ฮาร์ดแวร์เป้าหมาย | ||||||||||||||||||||||||||||||
| 20 | 160 | ||||||||||||||||||||||||||||||||
| 24 | 192 | ที่อยู่โปรโตคอลเป้าหมาย | |||||||||||||||||||||||||||||||
- ประเภทฮาร์ดแวร์ (HTYPE): 16 บิต
- ฟิลด์นี้ระบุประเภทโปรโตคอลการเชื่อมต่อเครือข่าย[ 1 ]ในตัวอย่างนี้ ค่า1หมายถึงอีเธอร์เน็ต
- ประเภทโปรโตคอล (PTYPE): 16 บิต
- ฟิลด์นี้ระบุโปรโตคอลเครือข่ายอินเทอร์เน็ตที่คำขอ ARP มีไว้สำหรับ สำหรับ IPv4 ค่านี้คือ0x0800ค่า PTYPE ที่อนุญาตจะใช้พื้นที่หมายเลขร่วมกับค่าEtherType [ 1 ] [ 2 ]
- ความยาวฮาร์ดแวร์ (HLEN): 8 บิต
- ความยาว (ในหน่วยอ็อกเท็ต ) ของแอดเดรสฮาร์ดแวร์ สำหรับอีเธอร์เน็ต ความยาวของแอดเดรสคือ6
- ความยาวโปรโตคอล (PLEN): 8 บิต
- ความยาว (ในหน่วยอ็อกเท็ต) ของที่อยู่เครือข่ายอินเทอร์เน็ต โปรโตคอลเครือข่ายอินเทอร์เน็ตระบุไว้ใน PTYPE ในตัวอย่างนี้ ความยาวของที่อยู่ IPv4 คือ4
- การดำเนินการ (OPER): 16 บิต
- ระบุการดำเนินการที่ผู้ส่งกำลังดำเนินการ: 1 สำหรับการร้องขอ, 2 สำหรับการตอบกลับ
- ที่อยู่ฮาร์ดแวร์ของผู้ส่ง (SHA): 48 บิต
- ที่อยู่สื่อของผู้ส่ง ในคำขอ ARP ฟิลด์นี้ใช้เพื่อระบุที่อยู่ของโฮสต์ที่ส่งคำขอ ในการตอบกลับ ARP ฟิลด์นี้ใช้เพื่อระบุที่อยู่ของโฮสต์ที่คำขอค้นหา
- ที่อยู่โปรโตคอลผู้ส่ง (SPA): 32 บิต
- ที่อยู่เครือข่ายอินเทอร์เน็ตของผู้ส่ง
- ที่อยู่ฮาร์ดแวร์เป้าหมาย (THA): 48 บิต
- ที่อยู่สื่อของผู้รับที่ต้องการ ในคำขอ ARP ฟิลด์นี้จะถูกละเว้น ในการตอบกลับ ARP ฟิลด์นี้จะใช้เพื่อระบุที่อยู่ของโฮสต์ที่ส่งคำขอ ARP มา
- ที่อยู่โปรโตคอลเป้าหมาย (TPA): 32 บิต
- ที่อยู่เครือข่ายอินเทอร์เน็ตของผู้รับเป้าหมาย
ค่าพารามิเตอร์ ARP ได้รับการกำหนดมาตรฐานและดูแลโดยหน่วยงาน Internet Assigned Numbers Authority (IANA) [ 1 ]
EtherType สำหรับ ARP คือ0x0806 ค่านี้จะปรากฏในส่วนหัวของเฟรมอีเธอร์เน็ตเมื่อเพย์โหลดเป็นแพ็กเก็ต ARP และไม่ควรสับสนกับ PTYPE ซึ่งปรากฏอยู่ภายในแพ็กเก็ต ARP ที่ถูกห่อหุ้มไว้
การซ้อนชั้น
การจัดวาง ARP ภายในชุดโปรโตคอลอินเทอร์เน็ตและโมเดล OSIอาจก่อให้เกิดความสับสนหรือแม้แต่ข้อโต้แย้งได้RFC 826จัดให้อยู่ในเลเยอร์ลิงก์และอธิบายว่าเป็นเครื่องมือในการสอบถามเกี่ยวกับ "เลเยอร์ระดับสูงกว่า" เช่น เลเยอร์อินเทอร์เน็ต[ 3 ] RFC 1122ยังกล่าวถึง ARP ในส่วนของเลเยอร์ลิงก์ด้วย[ 4 ] Richard Stevens จัดวาง ARP ไว้ในเลเยอร์ลิงก์ข้อมูลของ OSI [ 5 ]ในขณะที่ฉบับใหม่กว่าเชื่อมโยงกับเลเยอร์เครือข่ายหรือแนะนำเลเยอร์ OSI 2.5 ระดับกลาง[ 6 ]
ตัวอย่าง
คอมพิวเตอร์สองเครื่อง คือAและBเชื่อมต่อกับเครือข่ายบริเวณ เดียวกัน โดยไม่มีเกตเวย์หรือเราเตอร์ คั่นกลาง คอมพิวเตอร์Aมีแพ็กเก็ตที่จะส่งไปยังที่อยู่ IP 192.168.0.55ซึ่งเป็นที่อยู่ของคอมพิวเตอร์ B
ก่อนที่จะส่งแพ็กเก็ตไปยังBโหนดAจะส่งข้อความร้องขอ ARP แบบบรอดแคสต์ โดยระบุที่อยู่ MAC แบบบรอดแคสต์FF:FF:FF:FF:FF:FFและร้องขอการตอบกลับจากโหนดที่มีที่อยู่ IP 192.168.0.55โหนดทั้งหมดในเครือข่ายจะได้รับข้อความ แต่มีเพียงB เท่านั้น ที่ตอบกลับเนื่องจากมีที่อยู่ IP ที่ร้องขอBจะตอบกลับด้วยข้อความตอบกลับ ARP ที่มีที่อยู่ MAC ของตนเอง ซึ่งAได้รับ จากนั้นAจะส่งแพ็กเก็ตข้อมูลผ่านลิงก์โดยระบุที่อยู่ MAC ของB
โดยทั่วไป โหนดเครือข่ายจะเก็บ แคช การค้นหาที่เชื่อมโยงที่อยู่ IP และ MAC ไว้ ในตัวอย่างนี้ หากAมีแคชการค้นหาไว้แล้ว A ก็ไม่จำเป็นต้องส่งคำขอ ARP ออกไป นอกจากนี้ เมื่อBได้รับคำขอ B ก็สามารถแคชการค้นหาไปยังA ได้ เพื่อที่ว่าหากBต้องการส่งแพ็กเก็ตไปยังAในภายหลัง ก็ไม่จำเป็นต้องใช้ ARP เพื่อค้นหาที่อยู่ MAC ของ A สุดท้าย เมื่อAได้รับการตอบสนอง ARP ก็สามารถแคชการค้นหาสำหรับข้อความในอนาคตที่ส่งไปยังที่อยู่ IP เดียวกันได้[ 7 ]
โพรบ ARP
การตรวจสอบ ARPใน IPv4 คือคำขอ ARP ที่สร้างขึ้นโดยใช้ SHA ของโฮสต์ที่ทำการตรวจสอบ, SPA ที่เป็น 0 ทั้งหมด, THA ที่เป็น 0 ทั้งหมด และ TPA ที่ตั้งค่าเป็นที่อยู่ IPv4 ที่กำลังตรวจสอบ หากมีโฮสต์ใดในเครือข่ายที่ถือว่าที่อยู่ IPv4 (ใน TPA) เป็นของตนเอง โฮสต์นั้นจะตอบกลับการตรวจสอบ (ผ่าน SHA ของโฮสต์ที่ทำการตรวจสอบ) เพื่อแจ้งให้โฮสต์ที่ทำการตรวจสอบทราบถึงความขัดแย้งของที่อยู่ หากไม่มีโฮสต์ใดที่ถือว่าที่อยู่ IPv4 เป็นของตนเอง ก็จะไม่มีการตอบกลับ เมื่อมีการส่งการตรวจสอบดังกล่าวหลายครั้งโดยมีความล่าช้าเล็กน้อย และไม่มีโฮสต์ใดได้รับการตอบกลับ ก็สามารถคาดการณ์ได้อย่างสมเหตุสมผลว่าไม่มีความขัดแย้งเกิดขึ้น เนื่องจากแพ็กเก็ตการตรวจสอบดั้งเดิมไม่มีทั้ง SHA/SPA ที่ถูกต้องหรือคู่ THA/TPA ที่ถูกต้อง จึงไม่มีความเสี่ยงที่โฮสต์ใดจะใช้แพ็กเก็ตนั้นเพื่ออัปเดตแคชด้วยข้อมูลที่มีปัญหา ก่อนเริ่มใช้ที่อยู่ IPv4 (ไม่ว่าจะได้รับจากการกำหนดค่าด้วยตนเอง DHCP หรือวิธีการอื่นใด) โฮสต์ที่ใช้ข้อกำหนดนี้จะต้องทดสอบว่าที่อยู่ดังกล่าวถูกใช้งานอยู่แล้วหรือไม่ โดยการส่งแพ็กเก็ต ARP probe ออกไป[ 8 ] [ 9 ]
ประกาศ ARP
ARP ยังสามารถใช้เป็นโปรโตคอลการประกาศอย่างง่ายได้อีกด้วย ซึ่งมีประโยชน์สำหรับการอัปเดตการแมปที่อยู่ฮาร์ดแวร์ของโฮสต์อื่น ๆ เมื่อที่อยู่ IP หรือที่อยู่ MAC ของผู้ส่งเปลี่ยนแปลง การประกาศดังกล่าว หรือที่เรียกว่า ข้อความ ARP ที่ไม่จำเป็น ( GARP ) มักจะถูกส่งแบบบรอดแคสต์เป็นคำขอ ARPที่มี SPA ในฟิลด์เป้าหมาย (TPA=SPA) โดยตั้งค่า THA เป็นศูนย์ อีกวิธีหนึ่งคือการส่งแบบบ รอดแคส ต์การตอบกลับ ARPโดยทำซ้ำ SHA และ SPA ของผู้ส่งในฟิลด์เป้าหมาย (TPA=SPA, THA=SHA)
การ ประกาศ คำขอ ARPและ การประกาศ ตอบกลับ ARPต่างก็เป็นวิธีการตามมาตรฐาน[ 10 ] : §4.6 แต่นิยมใช้วิธีการร้องขอ ARP มากกว่า [ 11 ] : §3 อุปกรณ์บางอย่างอาจได้รับการกำหนดค่าให้ใช้การประกาศทั้งสองประเภทนี้[ 12 ]
การประกาศ ARP ไม่ได้มีจุดประสงค์เพื่อขอการตอบกลับ แต่จะอัปเดตรายการที่แคชไว้ในตาราง ARP ของโฮสต์อื่นที่ได้รับแพ็กเก็ต รหัสการดำเนินการในการประกาศอาจเป็นคำขอหรือการตอบกลับ มาตรฐาน ARP ระบุว่ารหัสการดำเนินการจะถูกประมวลผลหลังจากที่ตาราง ARP ได้รับการอัปเดตจากฟิลด์ที่อยู่แล้วเท่านั้น[ 13 ] [ 10 ] : §4.6 [ 14 ] : §4.4.1
ระบบปฏิบัติการหลายระบบจะส่งประกาศ ARP ระหว่างการเริ่มต้นระบบ ซึ่งช่วยแก้ไขปัญหาที่อาจเกิดขึ้นได้ เช่น ในกรณี ที่เพิ่งเปลี่ยน การ์ดเครือข่าย (ทำให้การแมปที่อยู่ IP กับที่อยู่ MAC เปลี่ยนไป) และโฮสต์อื่นๆ ยังคงมีการแมปแบบเก่าอยู่ในแคช ARP
การประกาศ ARP ยังถูกใช้โดยอินเทอร์เฟซเครือข่ายบางตัวเพื่อกระจายโหลดสำหรับทราฟฟิกขาเข้า ในกลุ่มการ์ดเครือข่าย การประกาศ ARP จะใช้เพื่อประกาศที่อยู่ MAC ที่แตกต่างกันภายในกลุ่ม ซึ่งควรได้รับแพ็กเก็ตขาเข้า
การประกาศ ARP สามารถใช้ใน โปรโตคอล Zeroconfเพื่ออนุญาตให้กำหนดที่อยู่ลิงก์โลคัลให้กับอินเทอร์เฟซโดยอัตโนมัติในกรณีที่ไม่มีการกำหนดค่าที่อยู่ IP อื่น การประกาศเหล่านี้ใช้เพื่อให้แน่ใจว่าที่อยู่ที่เลือกโดยโฮสต์จะไม่ถูกใช้งานโดยโฮสต์อื่นบนลิงก์เครือข่าย[ 15 ]
ฟังก์ชันนี้อาจเป็นอันตรายจากมุมมองด้านความปลอดภัยทางไซเบอร์ เนื่องจากผู้โจมตีสามารถรับข้อมูลเกี่ยวกับโฮสต์อื่นๆ ในเครือข่ายย่อยเดียวกันเพื่อบันทึกไว้ในแคช ARP ( ARP spoofing ) โดยที่ MAC address ของผู้โจมตีจะเชื่อมโยงกับ IP ของ เกตเวย์เริ่มต้นตัวอย่างเช่น ซึ่งจะทำให้พวกเขาสามารถดักจับการรับส่งข้อมูลทั้งหมดไปยังเครือข่ายภายนอกได้
การไกล่เกลี่ย ARP
การไกล่เกลี่ย ARPหมายถึงกระบวนการแก้ไขที่อยู่เลเยอร์ 2 ผ่านบริการสายส่วนตัวเสมือน (VPWS) เมื่อใช้โปรโตคอลการแก้ไขที่แตกต่างกันบนวงจรที่เชื่อมต่อ เช่นอีเธอร์เน็ตที่ปลายด้านหนึ่งและเฟรมรีเลย์ที่ปลายอีกด้านหนึ่ง ในIPv4 อุปกรณ์ Provider Edge (PE) แต่ละตัวจะค้นหาที่อยู่ IP ของ อุปกรณ์ Customer Edge (CE) ที่เชื่อมต่อในพื้นที่และกระจายที่อยู่ IP นั้นไปยังอุปกรณ์ PE ระยะไกลที่เกี่ยวข้อง จากนั้นอุปกรณ์ PE แต่ละตัวจะตอบสนองต่อคำขอ ARP ในพื้นที่โดยใช้ที่อยู่ IP ของอุปกรณ์ CE ระยะไกลและที่อยู่ฮาร์ดแวร์ของอุปกรณ์ PE ในพื้นที่ ในIPv6อุปกรณ์ PE แต่ละตัวจะค้นหาที่อยู่ IP ของทั้งอุปกรณ์ CE ในพื้นที่และระยะไกล จากนั้นจะดักจับ แพ็กเก็ ต Neighbor Discovery (ND) และInverse Neighbor Discovery (IND) ในพื้นที่และส่งต่อไปยังอุปกรณ์ PE ระยะไกล[ 16 ]
ARP ผกผันและ ARP ย้อนกลับ
โปรโตคอลการแปลงที่อยู่แบบผกผัน ( Inverse ARPหรือInARP ) ใช้ในการ แปลงที่ อยู่ระดับเครือข่าย (เช่นที่อยู่ IP ) ของโหนดอื่น ๆ จากที่อยู่ระดับลิงก์ข้อมูล (เลเยอร์ 2) เนื่องจาก ARP แปลงที่อยู่เลเยอร์ 3 เป็นที่อยู่เลเยอร์ 2 ดังนั้น InARP จึงอาจอธิบายได้ว่าเป็นโปรโตคอลผกผันของ ARP นอกจากนี้ InARP ยังถูกนำมาใช้เป็นส่วนขยายของโปรโตคอล ARP โดยใช้รูปแบบแพ็กเก็ตเดียวกันกับ ARP แต่ใช้รหัสการทำงานที่แตกต่างกัน
InARP ถูกใช้เป็นหลักใน เครือข่าย Frame Relay ( DLCI ) และ ATM ซึ่งบางครั้งที่อยู่เลเยอร์ 2 ของวงจรเสมือนจะได้รับจากสัญญาณเลเยอร์ 2 และที่อยู่เลเยอร์ 3 ที่เกี่ยวข้องจะต้องพร้อมใช้งานก่อนจึงจะสามารถใช้วงจรเสมือนเหล่านั้นได้[ 17 ]
โปรโตคอลการแก้ไขที่อยู่แบบย้อนกลับ (Reverse ARP หรือ RARP) เช่นเดียวกับ InARP แปลงที่อยู่เลเยอร์ 2 เป็นที่อยู่เลเยอร์ 3 อย่างไรก็ตาม ใน InARP สถานีที่ร้องขอจะสอบถามที่อยู่เลเยอร์ 3 ของโหนดอื่น ในขณะที่ RARP ใช้เพื่อรับที่อยู่เลเยอร์ 3 ของสถานีที่ร้องขอเองเพื่อวัตถุประสงค์ในการกำหนดค่าที่อยู่ RARP นั้นล้าสมัยแล้ว มันถูกแทนที่ด้วยBOOTPซึ่งต่อมาถูกแทนที่ด้วยโปรโตคอลการกำหนดค่าโฮสต์แบบไดนามิก (DHCP) [ 18 ]
การปลอมแปลง ARP และพร็อกซี ARP

เนื่องจาก ARP ไม่ได้จัดเตรียมวิธีการตรวจสอบความถูกต้องของการตอบกลับ ARP บนเครือข่าย การตอบกลับ ARP จึงอาจมาจากระบบอื่นที่ไม่ใช่ระบบที่มีที่อยู่เลเยอร์ 2 ที่ต้องการ พร็อกซี ARP คือระบบที่ตอบคำขอ ARP ในนามของระบบอื่นที่จะส่งต่อทราฟฟิก โดยปกติจะเป็นส่วนหนึ่งของการออกแบบเครือข่าย เช่น สำหรับบริการอินเทอร์เน็ตแบบ dial-upในทางตรงกันข้าม ในการปลอมแปลง ARP ระบบที่ตอบหรือผู้ปลอมแปลงจะตอบกลับคำขอที่อยู่ของระบบอื่นโดยมีเป้าหมายเพื่อดักจับข้อมูลที่มุ่งไปยังระบบนั้น ผู้ใช้ที่เป็นอันตรายอาจใช้การปลอมแปลง ARP เพื่อทำการโจมตีแบบman-in-the-middleหรือdenial-of-serviceกับผู้ใช้รายอื่นบนเครือข่าย มีซอฟต์แวร์ต่างๆ ที่สามารถตรวจจับและทำการโจมตีแบบปลอมแปลง ARP ได้ แม้ว่า ARP เองจะไม่มีวิธีการป้องกันการโจมตีดังกล่าวก็ตาม[ 19 ]
ทางเลือกอื่นๆ
Computers may maintain lists of known addresses, rather than using an active protocol. In this method, each computer maintains a database of the mapping of Layer 3 addresses (e.g., IP addresses) to Layer 2 addresses (e.g., EthernetMAC addresses). This data is maintained primarily by interpreting ARP packets from the local network link. Thus, it is often called the ARP cache. Since at least the 1980s,[20] networked computers have a utility called arp for interrogating or manipulating this database.[21][22][23]
Historically, other methods were used to maintain the mapping between addresses, such as static configuration files,[24] or centrally maintained lists.
ARP stuffing
Embedded systems such as networked cameras[25] and networked power distribution devices,[26] which lack a user interface, can use so-called ARP stuffing to make an initial network connection, although this is a misnomer, as ARP is not involved.
ARP stuffing is accomplished as follows:
- The user's computer has an IP address stuffed manually into its address table (normally with the arp command with the MAC address taken from a label on the device)
- The computer sends special packets to the device, typically a ping packet with a non-default size.
- The device then adopts this IP address
- The user then communicates with it by telnet or web protocols to complete the configuration.
Such devices typically have a method to disable this process once the device is operating normally, as the capability can make it vulnerable to attack.
Standards documents
- RFC 826 – "An Ethernet Address Resolution Protocol," Internet Standard 37.
- RFC 903 – "A Reverse Address Resolution Protocol," Internet Standard 38.
- RFC 2390 – "Inverse Address Resolution Protocol," Draft Standard.
- RFC 5227 – "IPv4 Address Conflict Detection," Proposed Standard.
See also
- Arping – Software utility for discovering and probing hosts on a computer network
- Arptables – Network administrator's tool
- Arpwatch – Computer networking software tool
- Bonjour Sleep Proxy – ส่วนประกอบโอเพนซอร์สสำหรับการสร้างเครือข่ายโดยไม่ต้องตั้งค่าใดๆ
- Cisco HDLC – ส่วนขยายของโปรโตคอลเครือข่าย High-Level Data Link Control (HDLC)
- โปรโตคอลการค้นหาเพื่อนบ้าน (Neighbor Discovery Protocol) – โปรโตคอลในชุดโปรโตคอลอินเทอร์เน็ตที่ใช้ร่วมกับ IPv6
ลิงก์ภายนอก
- "แผนภาพลำดับ ARP (pdf)" (PDF)เก็บถาวรจากต้นฉบับ(PDF)เมื่อวันที่ 1 มีนาคม 2021
- ARP ไร้ประโยชน์
- ข้อมูลและตัวอย่างที่ดึงมาจาก Wireshark
- เครื่องมือสร้างทราฟฟิก ARP-SK ARP
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ โปรโตคอลการแก้ไขที่อยู่
โปรโตคอล การระบุที่อยู่ ( ARP ) เป็น โปรโตคอลการสื่อสาร สำหรับค้นหาที่ อยู่ระดับลิงก์ เลเยอร์ เช่น ที่อยู่ MAC ที่เชื่อมโยงกับ ที่อยู่ ระดับอินเทอร์เน็ต เลเยอร์ ซึ่งโดยทั่วไปคือ...
ขอบเขตการปฏิบัติงาน
โปรโตคอลการแก้ไขที่อยู่ (Address Resolution Protocol) เป็น โปรโตคอลแบบ ร้องขอ-ตอบกลับ ข้อความของโปรโตคอลนี้จะถูกห่อหุ้มโดยตรงด้วยโปรโตคอลระดับลิงก์เลเยอร์ การสื่อสารจะเกิดขึ้นภายในขอบเขตของ เครือข่าย ย่อยเดียว และจะไม่ ถูกส่งผ่านเส้นทาง ใด ๆ
โครงสร้างแพ็กเก็ต
โปรโตคอลการแก้ไขที่อยู่ (ARP) ใช้รูปแบบข้อความที่เรียบง่ายซึ่งประกอบด้วยคำขอหรือการตอบสนองการแก้ไขที่อยู่เพียงหนึ่งรายการ แพ็กเก็ตจะถูกส่งผ่านเลเยอร์ การเชื่อมโยงข้อมูล ของเครือข่ายพื้นฐานในรูปแบบของเพย์โหลดดิบ ในกรณีของอีเธอร์เน็ต จะใช้ค่า EtherType 0x0806...
การซ้อนชั้น
การจัดวาง ARP ภายใน ชุดโปรโตคอลอินเทอร์เน็ต และ โมเดล OSI อาจก่อให้เกิดความสับสนหรือแม้แต่ข้อโต้แย้งได้ RFC 826จัดให้อยู่ใน เลเยอร์ลิงก์ และอธิบายว่าเป็นเครื่องมือในการสอบถามเกี่ยวกับ "เลเยอร์ระดับสูงกว่า" เช่น เลเยอร์อินเทอร์เน็ต [ 3 ] RFC 1122ยังกล่าวถึง...