ฉันมีหนังสือ mac ที่ใช้ Mac OS High Sierra มันเป็นเครื่องโฮสต์สามเครื่องเสมือนที่ใช้งาน Ubuntu 16.04 VMs ทั้งหมดเปิดใช้งานอะแดปเตอร์สองตัว NAT และโฮสต์เท่านั้น แม็คเชื่อมต่อกับโฮสต์อื่นผ่านสวิตช์ VMs ประสานงานและให้บริการที่ฉันต้องการให้โฮสต์ที่ปลายอีกด้านหนึ่งของสวิตช์ที่เชื่อมต่อกับแล็ปท็อปของฉัน
en8
192.168.57.0 192.168.57.200 192.168.57.100 /---|VM1| 192.168.56.3
|------------| /--------------\ |--------------| /
| Host1 |--| switch |--| Host2 |------|VM2| 192.168.56.4
|------------| \--------------/ |--------------| \
192.168.56.1 \---|VM3| 192.168.56.5
vboxnet0
192.168.57.0\24
โฮสต์บนเครือข่ายย่อย แล็ปท็อปที่เชื่อมต่อกับสวิทช์ผ่านอินเตอร์เฟซที่en8
มีที่อยู่ IP 192.168.57.100
ของ แล็ปท็อปและสวิตช์สามารถ ping ซึ่งกันและกัน
Mac OS เชื่อมต่อกับ VMs ผ่านเกตเวย์บนอินเตอร์เฟซ192.168.56.1
vboxnet0
VMs สามารถ ping แต่ละคนและโฮสต์ของพวกเขา โฮสต์สามารถสื่อสารกับแต่ละ VM
ฉันต้องการให้ VM สามารถควบคุมสวิตช์ได้ดังนั้นฉันจึงต้องตั้งค่ากฎการกำหนดเส้นทางเพื่อเชื่อมต่อทราฟฟิกจาก swtich ไปยัง VMs และย้อนกลับ ฉันต้องการใช้ mac ของฉันเหมือนเราเตอร์เพื่อทำสิ่งนี้
ฉันลองทำตามตัวอย่างของ Jeff Warren ที่นี่: Virtualbox: การเชื่อมต่อเครือข่ายเฉพาะโฮสต์ในโฮสต์แยกกันแต่มันไม่ทำงานในกรณีของฉัน
โดยเฉพาะฉันพยายาม ...
sudo route -n add -net 192.168.56.0/24 192.168.57.100
แต่มันไม่ได้ผล ฉันได้รับข้อความแจ้งว่ามีไฟล์อยู่แล้ว
ความคิดใด ๆ เกี่ยวกับวิธีที่ฉันสามารถทำให้การกำหนดค่าสวิตช์ของฉันจาก VMs เป็นที่นิยมมาก ขอขอบคุณ.
ฉันลองวิธีอื่นแล้วเช่นการวาง VMs ลงในเครือข่ายย่อยเดียวกับสวิตช์ อย่างไรก็ตามเมื่อฉันทำสิ่งนี้ฉันขาดการสื่อสารระหว่าง VM และโฮสต์ของพวกเขา ฉันได้ลองใช้เครือข่ายบริดจ์แทนโฮสต์เท่านั้น แต่ก็ไม่ได้ผลเช่นกัน
RTNETLINK answers: Network is unreachable
แต่เมื่อผมทำเช่นนี้ฉันได้รับ ฉันเปลี่ยนเกตเวย์ของสวิตช์เป็น 192.168.57.100