Подключение к гостю VirtualBox (Ubuntu) с хоста (OSX) через NAT?


7

У меня есть гость VirtualBox (под управлением Ubuntu), настроенный с помощью NAT через мой хост-ноутбук (под управлением OSX). Насколько я понял, с настроенным NAT я мог получить доступ к гостю с хоста (без всякой магии переадресации портов), но не с любой внешней машины ... я был не прав, думая, что?

Я бы использовал мостовые сети, но каждый раз, когда я переключаю сети (@ home, @ work, привязанный к моему телефону), IP-адрес гостя будет меняться, верно?

Ответы:


15

Если вам нужен только доступ к гостю с хоста, вам нужна сеть «Только хост». IP-адрес появится, если вы наведите курсор мыши на значок сети в окне виртуального ящика.

Если вам необходимо подключиться к Интернету с гостевой виртуальной машины, то вы можете использовать только ОБА хост и NAT (virtaulbox поддерживает до 4 различных сетевых адаптеров).


5
Стоит отметить: после добавления вторичного сетевого адаптера мне пришлось вручную создать еще одну запись в / etc / network / interfaces (дублирующее eth0 как eth1) и перезапустить сеть на гостевой системе Ubuntu. одна из тех вещей типа сисадмина, о которых я всегда забываю
EvanK

Это важно. Потянул за волосы, потому что везде, где я читал, говорилось: «используйте один адаптер только для хоста и один Nat»), но без дублирования eth0 в / etc / network / interfaces, как уже упоминалось, это не будет работать!
Стиан

1
@EvanK FWIW Мне не нужно было делать этот шаг. VirtualBox настраивает eth0 и eth1 автоматически. Поскольку ваш комментарий устарел, возможно, новые версии VirtualBox теперь позаботятся об этом.
Yetanotherjosh

1

Вообще из удаленного через нат это боль. В зависимости от технологии виртуализации каждый из них предлагает различные методы для преодоления этого. Virtualbox имеет возможность перенаправить порт X виртуализированному клиенту, если я правильно помню ... это потребуется для доступа удаленного хоста клиента vm через nat.


1

Я не уверен насчет прямого ответа на ваш вопрос, но я получаю доступ к своему Ubuntu box (NAT) через OS X, используя следующее, что делает нас переадресацией портов. Замените Ubuntuна имя вашего гостя.

VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222
VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP

Затем перезагрузитесь (гость), затем из OS X: ssh -p 2222 localhostИ вы должны быть в виртуальной машине в терминале OS X

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.