อุปกรณ์บริดจ์ Linux และปัญหา ARP บน Hyper-V


1

การตั้งค่าต่อไปนี้:

ป้อนคำอธิบายรูปภาพที่นี่

ฉันดีบักด้วยtcpdump -e -n -i eth1แขกทั้งสอง

ทำงานarping -I br0 10.0.2.0 -s 10.0.1.0กับแขก 1

แขก 1:

13:10:51.933237 [guest1-br0-mac] > Broadcast, ethertype ARP (0x0806), length 42: Request who-has 10.0.2.0 (Broadcast) tell 10.0.1.0, length 28

แขก 2:ไม่มีอะไร!

(เหมือนกันในทางกลับกัน)

ทำงานarping -I eth1 10.0.2.0 -s 10.0.1.0กับแขก 1 (eth1 แทน br0):

แขก 1:

13:13:57.593789 [guest1-eth1-mac] > Broadcast, ethertype ARP (0x0806), length 42: Request who-has 10.0.2.0 (Broadcast) tell 10.0.1.0, length 28

แขก 2:

13:13:57.594041 [guest1-eth1-mac] > Broadcast, ethertype ARP (0x0806), length 42: Request who-has 10.0.2.0 (Broadcast) tell 10.0.1.0, length 28
13:13:57.594111 [guest2-br0-mac] > [guest1-eth1-mac], ethertype ARP (0x0806), length 42: Reply 10.0.2.0 is-at [guest2-br0-mac], length 28

ดังนั้นแขก 2 ดูเหมือนจะตอบกลับ แต่การตอบกลับนี้ไม่ได้กลับไปเป็นแขก 1

ฉันไม่เข้าใจสองสิ่ง:

  1. เหตุใดจึงมีความแตกต่างระหว่างการใช้br0และeth1เป็นอินเตอร์เฟสอินเตอร์เฟส อุปกรณ์บริดจ์ไม่ควรส่งต่อ arp ที่ส่งไปeth1หรือไม่

  2. อะไรคือเหตุผลที่ทำให้การตอบรับของแขก 2 ลดลงในการทดสอบครั้งที่สอง?

    $ brctl show
    bridge name  bridge id          STP enabled  interfaces
    br0          8000.0123456789AB  no           eth1
    

กรุณาบอกฉันว่าข้อมูลเพิ่มเติมที่คุณต้องการ

คำตอบ:


1

การเปิดใช้งาน "การปลอมแปลงที่อยู่ MAC" ใน Hyper-V ได้หลอกลวง! ฉันรู้สึกงี่เง่าฉันเสียเวลาสองวันในการหาสิ่งนี้ ...

คำอธิบาย:

1. คำถาม:เมื่อการปลอมแปลงที่อยู่ MAC ถูกห้ามใน Hyper-V ดังนั้นที่อยู่ mac ต้นทางในเฟรมอีเทอร์เน็ตจะต้องเชื่อมต่อที่อยู่ mac ของอินเตอร์เฟส เมื่อส่งคำขอ arp จากอินเทอร์เฟซbr0นี่ไม่ใช่กรณีและ Hyper-V วางเฟรม

2. คำถาม:นี่เป็นปัญหาเดียวกัน ใช้eth1เป็นอินเตอร์เฟซที่มาร้องขอในขณะนี้ประสบความสำเร็จมาถึงeth1ในวันที่เข้าพักที่อื่น ๆ br0และจากที่นั่น br0ตอนนี้ตอบคำขอ แต่เฟรมถูกทิ้งอีกครั้งโดย Hyper-V เนื่องจากที่อยู่ต้นทางไม่ตรงกับeth1ที่อยู่ mac ของ

การเปิดใช้งานการปลอมแปลงที่อยู่ MAC สามารถเปิดใช้งานได้ในการตั้งค่าอะแดปเตอร์เครือข่ายเสมือน ยังเห็นบทความ TechNet นี้


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

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