Подключение коммутатора к сети только для хоста виртуальной машины
У меня есть MacBook под управлением Mac OS High Sierra. Он является хостом для трех виртуальных машин, работающих под управлением Ubuntu 16.04. Все виртуальные машины имеют два адаптера; NAT и Host-Only. Mac подключен к другому хосту через коммутатор. Виртуальные машины координируют и предоставляют услугу, которую я хотел бы сделать доступной для хоста на другом конце коммутатора, подключенного к моему ноутбуку.
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
, Ноутбук и коммутатор могут пинговать друг друга.
Mac OS подключена к виртуальным машинам через шлюз 192.168.56.1
на интерфейсе vboxnet0
, Виртуальные машины могут пинговать друг друга и их хост. Хост может общаться с каждой виртуальной машиной.
Я хочу, чтобы виртуальные машины могли управлять коммутатором, и поэтому мне нужно настроить правило маршрутизации для подключения трафика от swtich к виртуальным машинам и обратно. Я хочу использовать мой Mac как маршрутизатор, чтобы сделать это.
Я попытался следовать примеру Джеффа Уоррена здесь: Virtualbox: подключение сетей только для хоста на отдельных хостах, но в моем случае это не работает.
В частности, я пытался...
sudo route -n add -net 192.168.56.0/24 192.168.57.100
но это не сработало. Я получил сообщение о том, что файл уже существует.
Любые идеи о том, как я могу сделать возможным настроить мой коммутатор с виртуальных машин, очень ценятся. Спасибо.
Я пробовал другие подходы, такие как размещение виртуальных машин в той же логической подсети, что и коммутаторы. Однако когда я сделал это, я потерял связь между виртуальными машинами и их хостом. Я также пытался использовать мостовую сеть вместо хоста, но это тоже не сработало.
1 ответ
Предполагая, что интерфейсы 192.168.56.0/24 на виртуальных машинах предназначены только для хоста (то есть не для NAT).
Вам не нужны маршруты на вашем MAC (host2), потому что это единственный путь с прямым подключением к обоим / 24. Вам нужно, чтобы ваши виртуальные машины прошли этот путь, чтобы добраться до коммутатора, и коммутатор, чтобы пройти этот путь, чтобы перейти к виртуальным машинам.
На виртуальных машинах "ip route add 192.168.57.0/24 через 192.168.56.1" должен помочь.
На коммутаторе... какой бы синтаксис ни был необходим, возможно, чтобы host2 стал шлюзом по умолчанию (@192.168.57.100)