สวิตช์ทำงานอย่างไรเมื่อทราบที่อยู่ MAC แต่พีซีที่ส่งไม่ทราบ MAC ของปลายทาง MAC


12

พีซี 4 เครื่องเชื่อมต่อกับสวิตช์และสวิตช์นี้ทราบที่อยู่ MAC ของเครื่องเหล่านั้น (พีซีทั้ง 4 เครื่อง) คอมพิวเตอร์ A และคอมพิวเตอร์ D ไม่ได้สื่อสารกันมาก่อนหน้านี้ดังนั้นทั้งคู่จึงไม่ได้อัปเดตตาราง ARP ด้วยที่อยู่ MAC ของกันและกัน

คอมพิวเตอร์ A ต้องการสื่อสารกับ Computer D ดังนั้นมันจึงส่งคำขอ ARP สำหรับที่อยู่ MAC ของ Computer D ARP นี้จะเป็นข้อความออกอากาศ (ด้วย FF: FF: FF: FF: FF: FF เป็น MAC ปลายทางในแพ็คเก็ต ARP)

ฉันต้องการที่จะเข้าใจว่าสวิตช์จะใช้งานได้อย่างไรเพราะมันรับรู้ถึง Computer D ของ MAC แล้ว แต่คอมพิวเตอร์ A ไม่ใช่ สวิตช์จะให้คอมพิวเตอร์ D ตอบสนองต่อข้อความ ARP (การออกอากาศ) หรือปล่อยคำขอ ARP และกำหนดเส้นทางแพ็คเก็ตของคอมพิวเตอร์ A ไปยังคอมพิวเตอร์ D โดยตรง (เนื่องจากสวิตช์ทราบว่าคอมพิวเตอร์ MAC ของ D อยู่แล้ว) หรือไม่


2
นอกเหนือจากคำตอบแล้วระบบปฏิบัติการทั้งหมดที่ฉันตระหนักถึงในปัจจุบันได้ออก ARP Gratuitous เมื่อมีการสร้างลิงก์ขึ้นมา
AbraCadaver

@AbraCadaver นั่นไม่เกี่ยวข้องจริงๆ ARP ที่ให้เปล่าควรมีอยู่ในรายการแคช ARP เท่านั้นไม่ควรสร้างรายการใหม่ มันหมายถึงการบังคับให้รายการล้าสมัยเมื่อมีการย้าย IP หรือ NIC ถูกแทนที่ไม่ใช่โหลดแคชล่วงหน้า
Barmar

@Barmar: ไม่ Bridge / switch เห็นเฟรมบันทึกแหล่ง MAC และพอร์ต มันเป็นวิธีการทำงาน
AbraCadaver

@AbraCadaver สิ่งที่เกี่ยวข้องกับการประมวลผล ARP ที่ให้เปล่า?
Barmar

@Barmar: ARP Gratuitous ไม่ได้รับการประมวลผลโดยสวิตช์ มันเห็นเฟรม Ethernet กับแหล่ง MAC มาในพอร์ตเฉพาะที่มัน ...
AbraCadaver

คำตอบ:


24

แน่นอนคำขอ ARP จะผ่านไปได้

สวิตช์ไม่ทราบเกี่ยวกับ ARP มีเพียงรู้เกี่ยวกับอีเทอร์เน็ต (เช่นที่อยู่ MAC บนเฟรมอีเทอร์เน็ต) ไม่ใช่โปรโตคอลที่อยู่ด้านบน (สวิตช์บางตัวมีคุณสมบัติขั้นสูงเช่นการสอดแนม IGMP แต่ไม่เกี่ยวข้องที่นี่)

เนื่องจากเป็นข้อความออกอากาศจึงต้องส่งไปยังพอร์ตทั้งหมด (เชื่อมต่อ) นั่นคือทั้งหมดที่สวิตช์ใส่ใจ มันไม่รู้ว่ามันถูกกำหนดไว้สำหรับคอมพิวเตอร์ D จริงๆ


อีเธอร์เน็ตเป็นโปรโตคอล อย่างไรก็ตามสวิตช์อย่างง่ายไม่ได้สนใจเพียงโปรโตคอลบางตัว (เช่น Ethernet) และไม่ใช่โปรโตคอลอื่น ๆ (เช่น Internet Protocol รุ่น 4 หรือ Transmission Control Protocol)
TOOGAM

2
คำขอ ARP ถามว่า: "192.168.0.1 อยู่ที่ไหน" สวิตช์ไม่มีความคิดเกี่ยวกับสิ่งนี้
Michael Hampton

11

คำขอ ARP เป็นเพียงข้อความที่บอกว่า "คุณอยู่ที่ IP อะไร ! ที่อยู่ MAC ของคุณคืออะไร" แม้ว่า ARP จะจัดการกับการค้นพบที่อยู่เลเยอร์ 2 แต่โดยทั่วไปแล้วมันจะเป็นการร้องขอเลเยอร์ 3 เพราะมันถูกส่งไปยังที่อยู่ IP สวิตช์ไม่ทำงานที่ชั้น 3

ในตัวอย่างที่คุณให้คุณรู้ว่าสวิตช์ไม่ทำงาน ว่าที่อยู่ IP ในคำขอ ARP เป็นของคอมพิวเตอร์ D. ที่อยู่ MAC ปลายทางคือการแพร่สัญญาณและนั่นคือสวิตช์ทั้งหมดที่รู้หรือใส่ใจ หากสวิตช์เห็นการออกอากาศ MAC แล้วมันจะออกอากาศแพ็กเก็ตธรรมดาและเรียบง่าย

ใช่มีสวิตช์เลเยอร์ 3 อยู่ที่นั่นและคนเดินถนนจะชี้ให้เห็นว่าในทางเทคนิค ARP ไม่ใช่โปรโตคอลเลเยอร์ 3 แต่ไม่มีสิ่งใดที่สำคัญสำหรับตัวอย่างนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.