Как связать виртуальную машину с компьютером

Обновлено: 28.03.2024

VirtualBox - это программное обеспечение для виртуализации персонального компьютера от компании Oracle. У программы есть две версии - с открытым исходным кодом, и закрытая. С помощью VirtualBox вы можете запускать различные операционные системы одновременно, настраивать между ними сеть, обмениваться файлами и многое другое.

Вы можете запустить VirtualBox в Linux, Solaris, Mac OS X и Microsoft Windows, а также установить на нее большинство известных операционных систем. В этой статье мы рассмотрим, как пользоваться VirtualBox. Поговорим об установке, настройке VirtualBox, а также про некоторые тонкости работы с виртуальными машинами, которые могут вам очень сильно помочь. Для обычных пользователей это программное обеспечение доступно полностью бесплатно.

1. Установка VirtualBox

Виртуальная машина VirtualBox устанавливается как большинство других программ. В Windows вы можете загрузить установочный файл из официального сайта. А в Linux, программа доступна через официальные репозитории. Например, в Ubuntu установка VirtualBox выполняется командой:

sudo apt install virtualbox

Мы не будем подробно останавливаться на этом вопросе, поскольку есть более интересные задачи. После установки вы найдете ярлык программы в главном меню. В терминах виртуальных машин основной компьютер, где выполняется Virtualbox называется хостом, а все запущенные машины - гостевыми.

2. Создание виртуальной машины

Перед тем как вы сможете запустить вашу первую гостевую машину, нужно создать новую виртуальную машину в программе. Для этого нажмите кнопку Создать в главном окне:


На первом шаге вам нужно выбрать тип операционной системы, например, Linux -> Ubuntu это включит некоторые оптимизации, необходимые для этой системы:


Если вы работаете в 64 битной системе, то сможете запускать как 32 битные, так и 64 битные программы. На следующем шаге мастера выберите нужное количество оперативной памяти. Это очень важный параметр, поэтому если ее у вас достаточно, лучше не жалейте, 2 гигабайта будет вполне достаточно.


Дальше вам нужно создать жесткий диск для новой машины. Оставьте тип диска по умолчанию VDI:



Дальше выберите тип диска, динамический или фиксированный. Лучше брать динамический, тогда размер файла диска будет увеличиваться в зависимости от его наполнения в виртуальной машине:


И на последнем этапе вам осталось выбрать размер для нового диска, а также его имя:


Дальше, только что созданная машина появиться в списке и вы сможете ее запустить. Но перед этим давайте рассмотрим базовые настройки процессора и дисплея.

3. Настройка процессора

Выделите созданную виртуальную машину и нажмите Настройки.

Выберите Система, затем перейдите на вкладку Процессор:


Здесь вы можете выбрать сколько ядер процессора может использовать виртуальная машина, а также включить PAE для поддержки больше 4 Гб ОЗУ в 32 битных системах и режим эмуляции EFI. Затем перейдите на вкладку Ускорение.

Тут вы можете выбрать режим аппаратной виртуализации, а также включить такие дополнительные возможности, как AMD-V и Intel-VT. Это увеличит скорость работы системы.

4. Настройка графики

По умолчанию для виртуальной машины доступно 18 Мб видеопамяти. Это очень мало для современных систем. Выберите пункт Дисплей, затем потяните ползунок Видеопамять, так чтобы дать машине не менее 128 Мб памяти:


Для видеокарт на 2 Гб будет доступно 256 Мб. Также, здесь вы можете настроить количество экранов.

5. Настройка сети

По умолчанию виртуальная машина использует сеть через NAT это удобно, если нужно получить доступ к интернету из машины. Но если вы хотите настроить коммуникацию между самими машинами или между гостевой системой и хостом по сети, вам понадобится другой способ. Закройте меню настройки машины. Затем откройте меню Файл -> Настройки.

Там выберите пункт сеть и перейдите на вкладку Виртуальный адаптер хоста:


Тут вам понадобится создать новый виртуальный адаптер с помощью зеленой кнопки со знаком плюса:


Настройки менять не нужно, после этого нажмите Ок. Дальше снова откройте настройки машины, перейдите на пункт сеть и выберите тип адаптера - виртуальный адаптер хоста, а имя - то, которое было создано для вашего адаптера, например, vboxnet0:


Теперь между всеми виртуальными машинами, подключенными к vboxnet0 и хостом будет виртуальная сеть.

6. Клонирование

Вы можете сделать резервную копию машины чтобы использовать ее потом или перенести на другой компьютер. Для этого используется опция Клонировать. Просто выберите ее в меню для машины:


7. Запуск машины

При первом запуске вам предстоит выбрать носитель, с которого будет установлена новая система, это может быть DVD-ROM или ISO образ системы:


Вы можете изменить этот образ из меню Устройства -> Оптические диски для уже запущенной машины:


Дальше вам предстоит работать с новой машиной, как с обычным компьютером:


8. Дополнительные плагины

Дополнительные расширения VirtualBox позволяют получить доступ к USB устройствам из виртуальной машины, веб-камере, настроить удаленный доступ и другое. Для установки сначала скачайте файл VirtualBox-Extension-Pack из официального сайта:


Затем откройте меню Файл -> Настройки, перейдите на вкладку плагины и нажмите зеленую кнопку:

Подтвердите установку и примите лицензию:



Готово, официальный плагин установлен и теперь вы можете работать с USB устройствами 3.0 в вашей в виртуальной машине.


9. Снимки состояния

Вы могли бы создавать копию виртуальной машины каждый раз, когда нужно что-то проверить. Но это вовсе не обязательно. Здесь поддерживается такая отличная функция, как снимки состояния. Вы просто делаете снимок, или а потом можете восстановить систему до сохраненного состояния в любое время. Вы можете создать снимок для запущенной машины из меню Машина -> Сделать снимок состояния:


Создавать снимки для выключенной машины вы можете на вкладке Снимки:


Для этого выберите пункт контекстного меню Создать снимок. Все созданные снимки доступны здесь же:


10. Запись видео

Вы можете захватывать видео прямо в экрана виртуальной машины. Для этого в меню Вид установите галочку Захват видео. Видео будет сохранено в папке виртуальной машины:

11. Дополнения гостевой системы

Дополнения гостевой системы позволяют использовать такие возможности, как общий буфер обмена, общие папки, перетаскивание файлов, интеграция экрана, адаптация разрешения виртуальной машины и многое другое. Это незаменимая вещь при работе с виртуальными машинами. Дополнения устанавливаются в каждую гостевую систему и делают использование VirtualBox проще.

Чтобы установить дополнения в меню Устройства выберите Подключить образ дополнений гостевой ОС:


Дальше вам останется только запустить установщик для своей системы. Поддерживаются как Windows, так и Linux. Читайте подробнее про установку дополнений гостевой ОС в Ubuntu. Теперь вы знаете как пользоваться oracle virtualbox с комфортом.

12. Реальный диск в VirtualBox

Мы уже почти рассмотрели все о том, как пользоваться VirtualBox linux, но еще остановимся на работе с дисками. Иногда возникает необходимость работать с реальным диском. Вы можете создать файл ссылки на реальный диск с помощью команды VBoxManage:

sudo VBoxManage internalcommands createrawvmdk -filename ~/realdisk.vdmk -rawdisk /dev/sda

Здесь мы создаем диск с именем ~/realdisk.vdmk, который ссылается на наш диск /dev/sda. Вы можете ссылаться на любой другой диск. Только для запуска машины, вам придется запускать VirtualBox от имени суперпользователя. Также вы можете создать копию реального диска, конвертировав его в VDI, только смотрите чтобы хватило места:

sudo VBoxManage internalcommands converthd ./realdisk.vmdk newdisk.vdi

В Windows, команда будет выглядеть вот так:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" internalcommands createrawvmdk -filename C:\drive.vmdk -rawdisk \\.\PHYSICALDRIVE1

Мы создаем ссылку на первый жесткий диск, которая будет расположена на диске C:\. Дальше вы можете использовать этот диск в настройках виртуальной машины.

13. Доступ к виртуальному диску

Иногда возникает обратная необходимость - получить доступ к виртуальному диску и его содержимому из реальной системы. И это тоже возможно. Сначала смотрим где на вашем диске начинаются данные:

VBoxManage internalcommands dumphdinfo storage.vdi | grep "offData"

Здесь storage.vdi нужно заменить на адрес вашего диска, затем монтируем:

sudo mount -t ext4 -o rw,noatime,noexec,loop,offset=2097152 ~/VirtualBox\ VMs/storage.vdi /mnt/

Теперь вы имеете полный доступ к диску и можете даже вносить изменения, которые будут сохранены. Так, работа с Virtualbox будет выполняться намного легче.

Выводы

В этой статье мы рассмотрели, как пользоваться виртуальной машиной virtualbox. Несмотря на то что это бесплатный продукт с открытым кодом, здесь есть все необходимые возможности и даже больше. А какое программное обеспечение для виртуализации предпочитаете вы? Напишите в комментариях!

Настройка локальной сети между компьютером и виртуальной машиной virtualbox является довольно легкой, просто нужно знать некоторые ньюансы, о которых я и расскажу в этой статье.

Первый шаг — настройка сети в virtualbox. Виртуальная машина должна быть выключена. Идем в «Настройки -> Сеть», выбираем неиспользуемый адаптер, включаем его и выбираем тип подключения — «виртуальный адаптер хоста»:

Настройка локальной сети между компьютером и виртуальной машиной virtualbox

Далее загружаем виртуальную машину и проверяем сеть.

В windows сеть можно проверить командой «ipconfig»:

Проверка сети в windows

На ОС Linux из терминала сеть можно проверить так:

В ответ вы должны увидеть работающие сетевые интерфейсы:

Список сетевых интерфейсов

По ip можно догадаться, какой интерфейс отвечает за организацию локальной сети между компьютером и виртуальной машиной, по умолчанию (если вы сами не настраивали ip в virtualbox) такой ip должен выглядеть так: 192.168.56.* (вместо * обычно бывает 101 или 102 и т. д.).

Этот ip и нужно использовать для доступа к виртуальной машине.

По умолчанию ip выдается dhcp сервером virtualbox. Для удобства можно задать статический ip адрес в самой виртуальной машине. Например в windows это делается редактированием свойств сети. В интерфейсе linux все аналогично, а вот как это сделать в терминале, без графической оболочки, будет показано ниже, на примере добавления нового сетевого интерфейса в ubuntu server.

В linux бывает, что интерфейс локальной сети между компьютером и виртуальной машиной по умолчанию не задействован, и как следствие, отсутствует локальная сеть. В этом случае необходимо поднять интерфейс локальной сети между компьютером и виртуальной машиной вручную. Далее будет описан процесс задействования сетевого интерфейса в ubuntu server.

Сначала нужно найти название сетевого интерфейса, который нам нужен. В терминале набираем:

В результате вы получите список всех сетевых интерфейсов.

Находим нужный интерфейс, он чаще всего последний. Возможно скорее всего это либо eth1 (для ubuntu server 14.04), либо enp0s8 (для ubuntu server 16.04), все зависит от количества подключенных сетевых адаптеров к виртуальной машине.

Далее редактируем файл /etc/network/interfaces

Файл /etc/network/interfaces для ubuntu server 14.04:

В конец файла добавляем строку (для ip, задаваемого динамически):

Для статического ip:

Вместо eth1 может быть другое название интерфейса, в зависимости от вашей конфигурации.

После этого нужно перезагрузить виртуальную машину и снова набрать команду:

В списке должен появиться интерфейс eth1, или тот, который прописали вы.

Настройка файла /etc/network/interfaces для ubuntu server 16.04:

Здесь интерфейс называется enp0s3 вместо eth0. Согласно данным, полученным командой «ip a», в моем случае в конец файла нужно добавить:

После внесения изменений так же необходимо перезапустить виртуальную машину, либо можно перезапустить только службу networking:

На ubuntu server 14.04 у меня она не всегда перезапускается, просто продолжает работать, с ubuntu 16.04 в этом плане все впорядке, но для полной уверенности я считаю что лучше все таки перезапустить виртуальную машину.

После перезапуска машины и набора в терминале команды ifconfig в полученном списке сетевых интерфейсов должен появится интерфейс enp0s8.

Что делать, если сетевой интерфейс так и не заработал?

Тут два основных варианта: либо вы указали неправильный интерфейс в файле /etc/network/interfaces — в таком случае еще раз внимательно посмотрите список всех доступных сетевых интерфейсов командой «ip a» и выберите нужный. Либо виртуальная ОС вообще не видит сетевой адаптер. В этом случае скорее всего в ОС нет подходящих драйверов для этого адаптера. Эту проблему можно решить сменой типа адаптера, например на «паравиртуальная сеть (virtio-net)»:

Настройка локальной сети между компьютером и виртуальной машиной virtualbox - смена типа адаптера

Можете поэксперементировать с типом адаптера для достижения нужного результата.

ssh-доступ к виртуальной машине в virtualbox

После успешной настройки локальной сети между компьютером и виртуальной машиной можно к ней подключиться, например по ssh. Для этого набираем ip адрес, про который я писал вначале статьи, в ssh клиенте и радуемся успешному подключению)

VirtualBox позволяет на одном устройстве запустить несколько виртуальных машин с разными операционными системами. Виртуальные машины используют для тестирования нового ПО, для знакомства с особенностями разных ОС, а также для запуска программ, которые созданы для определённой операционной системы.

Какие типы подключения доступны в VirtualBox

В VirtualBox можно разными способами настроить интернет:

  • на отдельной виртуальной машине,
  • в локальной сети между несколькими виртуальными устройствами.

Для VirtualBox 6.1 доступны инструменты:

  • NAT,
  • сетевой мост,
  • внутренняя сеть,
  • виртуальный адаптер хоста,
  • универсальный драйвер,
  • сеть NAT,
  • Cloud Network.

На одной виртуальной машине можно использовать до 4 сетевых адаптеров. Для каждого адаптера есть возможность выбрать любой тип подключения. Благодаря этому можно комбинировать настройки, выбирать разные варианты работы сети. Например, комбинировать NAT и сетевой мост. Ниже мы рассмотрим, как включить/отключить адаптер.

Как включить и отключить адаптер

1. Выберите гостевую ОС, кликните на неё правой кнопкой мыши. Нажмите Настроить:


2. В появившемся меню выберите Сеть:


3. Выберите адаптер, который хотите добавить или удалить. Затем переключите чек-бокс Включить сетевой адаптер в нужное положение. Если вы включаете новый адаптер, в выпадающем списке выберите тип подключения и нажмите OK:


Готово, гостевая ОС будет работать с выбранными адаптерами.

Как подключить виртуальную машину к интернету

Если вам нужен доступ только в интернет, можно использовать NAT-подключение. NAT изолирует виртуальную машину от соединений извне, поэтому доступа к другим гостевым ОС при таком подключении не будет. Проводником в интернет выступает хост-система, через которую и проходят все входящие и исходящие запросы.

В VirtualBox при создании каждой виртуальной машины подключение к интернету с помощью NAT происходит автоматически. Поэтому это самый простой способ подключения гостевой ОС к интернету.

Чтобы включить или отключить интернет с помощью NAT в VirtualBox:

1. Выберите нужную виртуальную машину и кликните по ней правой кнопкой мыши. Нажмите Настроить:


2. В появившемся меню выберите Сеть. Поставьте галочку напротив «Включить сетевой адаптер». Выберите тип подключения NAT и нажмите OK:


Настройка сети на виртуальной машине VirtualBox

Готово, теперь вы знаете, как включить интернет на виртуальной машине VirtualBox.

Как настроить сеть между хостом и виртуальной машиной VirtualBox

Для подключения между основной и гостевой ОС нужно использовать тип подключения «Сетевой мост». В этом случае виртуальная машина подключается напрямую к основной сети как полноценное устройство. Для подключения используется сетевая карта хост-системы.

Чтобы включить сетевой мост:
1. Выберите виртуальную машину, которую хотите подключить к сети. Кликните по ней правой кнопкой мыши и нажмите Настроить:


2. В появившемся меню выберите вкладку «Сеть».
3. В настройках адаптера в строке «Тип подключения» выберите Сетевой мост и нажмите OK:


Готово, гостевая ОС теперь доступна для основной.

Настройка сети между виртуальными машинами в VirtualBox

Иногда нужно объединить в одну сеть несколько виртуальных машин. Для этого используется подключение «Сеть NAT». Она объединяет необходимые виртуальные машины в локальную сеть. Как и в случае с обычным NAT, у каждой есть доступ в интернет, но от доступа извне они изолированы.

Чтобы создать сеть из виртуальных машин VirtualBox:
1. На главной странице VirtualBox нажмите Файл ― Настройки:


2. Перейдите во вкладку Сеть и нажмите на кнопку с зеленым плюсом:


3. Нажмите OK:


4. Выберите виртуальную машину, которую хотите добавить в сеть, и кликните по ней правой кнопкой мыши. Нажмите Настроить:


5. Выберите тип подключения Сеть NAT. В строке «Имя» выберите имя созданной сети. Нажмите OK:


Как создать сеть из виртуальных машин VirtualBox

6. Если вы хотите подключить другие виртуальные машины к сети, повторите действия с 4 шага.

Виртуальные машины VirtualBox очень часто используются для тестирования различного программного обеспечения и его взаимодействия между собой. Обычно, таким программам необходим доступ к интернету. Время от времени возникает необходимость протестировать работу программ по сети или даже создать небольшую тестовую лабораторию из виртуальных машин.

В этой инструкции мы рассмотрим как выполняется настройка сети VirtualBox различными способами. Вы узнаете как объединить машины в одну локальную сеть, как дать им доступ к интернету и как связать их с основной системой. Но сначала поговорим о том, как может работать сеть.

Виды сетевых адаптеров VirtualBox

Существует несколько способов как настроить сеть в virtualbox, и каждый из них подходит для лучше для решения одной задачи и меньше для другой. Рассмотрим основные:

  • NAT - этот способ используется по умолчанию. Для каждой машины создается отдельная внутренняя локальная сеть, в которой машина получает ip 10.10.0.1. Машина может связаться с интернетом, используя технологию NAT, и вы можете обратиться к машине, используя проброс портов VirtualBox, но если у вас будет две виртуальные машины, то вы уже не сможете между ними так взаимодействовать. И если из основной системы к гостевой можно обратиться, то к основной ни гостевой уже никак не получится;
  • Виртуальный адаптер хоста - создается виртуальный сетевой адаптер, к которому можно подключить несколько виртуальных машин, тем самым объединив их в локальную сеть. Доступа к интернету нет, но зато машины находятся в одной сети и каждая имеет свой ip адрес, теперь они могут взаимодействовать между собой. Основная система тоже доступна по ip 192.168.56.1. Машины доступны не только между собой, но и из основной системы;
  • Сетевой мост - при таком подключении виртуальная машина становится полноценным членом локальной сети, к которой подключена основная система. Машина использует сетевой интерфейс чтобы получить адрес у роутера и становится доступна для других устройств, как и основной компьютер по своему ip адресу.
  • Внутренняя сеть - почти то же самое, что и виртуальный адаптер хоста, только без возможности доступа к виртуальной сети из основной системы, доступа к интернету нет.
  • Универсальный драйвер - позволяет использовать драйвер из расширений VirtualBox для связи между машинами, расположенными на разных физических хостах.

Теперь рассмотрим каждый вариант настройки более подробно.

Настройка сети Virtualbox

1. Настройка сети NAT

Здесь почти нет о чем говорить. Получение доступа к сети через NAT включено по умолчанию. Проброс портов я рассматривал в отдельной статье. Но если вы раньше отключали сетевые адаптеры, то чтобы включить NAT обратно достаточно открыть настройки нужной машины:


Перейти на вкладку "Сеть":


Выбрать один из адаптеров. К виртуальной машине можно подключить несколько адаптеров и это очень удобно, так как вы можете комбинировать вместе адаптер виртуального хоста и NAT чтобы получить преимущества обоих режимов. Дальше вам нужно выбрать пункт "NAT" в списке "Тип подключения".

На вкладке "Дополнительно" вы можете настроить марку устройства адаптера и MAC адрес:


Если вы собираетесь устанавливать туда в Windows, то лучше будет работать Intel PRO/1000 MT Desktop, а для Linux можно оставить AMD PCNet FAST III, так как он поддерживается всеми операционными системами.

2. Настройка сети NAT

В версии Virtualbox, начиная с 4.3 была добавлена поддержка сетей NAT, это работает очень похоже на виртуальный адаптер хоста, все машины, подключенные к одной сети могут получить доступ друг к другу, а доступ в интернет выполняется через NAT, но основная система доступа к гостевым не имеет. Чтобы настроить такое подключение нужно сначала создать сеть NAT. Для этого откройте "Файл" -> "Настройки", "Сеть". Здесь перейдите на вкладку "Сети NAT". Дальше нажмите кнопку с зеленым плюсом, чтобы создать новую сеть:

Нажмите "Ok" и закройте это окно. Дальше откройте настройки для виртуальной машины, перейдите на вкладку "Сеть" -> "Адаптер 1":

Выберите "Тип подключения" - "Сеть NAT", а "Имя" - только что созданную сеть.


Теперь все машины, подключенные к этой сети, будут доступны друг другу, как в VMWare.

3. Настройка адаптера виртуального хоста

Теперь задача немного интереснее - нам нужна локальная сеть virtualbox между несколькими виртуальными машинами и хостом. Для того чтобы все это заработало в Linux, нам нужно чтобы были загружены модули ядра vboxnetadp и vboxnetflt:

lsmod | grep vbox


Возможно, для их правильной работы вам придется установить пакет net-tools. Дальше нужно создать сам виртуальный адаптер. Для этого откройте меню "Файл", затем "Настройки" -> "Сеть". Затем нажмите кнопку с зеленым значком плюс, а затем "Ok", все параметры можно оставить по умолчанию. В VirtualBox 5.2 и выше интерфейс был изменен. Теперь вам нужно открыть меню "Инструменты" -> "Менеджер сетей хоста":


Теперь вернитесь к списку виртуальных машин, зайдите в настройки машины, "Сеть":


Выберите "Тип подключения" - "Виртуальный адаптер хоста", а имя vboxnet0, тот, который вы создали раньше.


Для всех машин, которые вы хотите объединить в одну сеть нужно выбирать один и тот же адаптер хоста. Если вы захотите добавить машинам также доступ в интернет, просто перейдите на вкладку "Адаптер 2", включите его и настройте NAT, как описано в первом пункте.

4. Настройка сетевого моста VirtualBox

Режим сетевого моста позволяет виртуальной машине выступать в роли реального сетевого устройства с отдельным ip адресом. Чтобы это настроить откройте это же меню - настойки виртуальной машины, затем "Сеть". Здесь выберите "Тип подключения" - "Сетевой мост":


В поле "Имя" вам необходимо выбрать сетевой интерфейс, который будет использоваться для связи с внешним миром. Минус такого способа в том, что внешние компьютеры смогут получить доступ к виртуальной машине, а это не очень хорошо с точки зрения безопасности.

5. Внутренняя сеть VirtualBox

Режим внутренняя сеть Virtualbox похож на "Виртуальный адаптер хоста", за тем лишь исключением, что из хостовой системы доступа к гостевым не будет, и настроить все немного проще. Достаточно выбрать "Тип подключения" - "внутренняя сеть", а затем просто выбрать нужную сеть в поле "Имя", или создать новую, просто изменив имя текущей.


Как видите, существует тип подключения NAT - где только интернет, Мост - где машина становится членом внешней сети, а все остальные - это настройка виртуальной сети virtualbox, где машины могут видеть друг друга.

Выводы

В этой небольшой статье мы рассмотрели как выполняется настройка сети VirtualBox, как видите, это не так уж сложно, как может показаться на первый взгляд, несмотря на операционную систему, которую вы используете. В большинстве случаев достаточно сети NAT, но иногда может понадобиться виртуальный адаптер хоста, все же остальные режимы используются намного реже.

VirtualBox - одна из самых популярных сред виртуализации, которые используются для запуска различных операционных систем. И довольно часто случается ситуация, что вам необходимо получить доступ к какому-либо сервису гостевой системы из основной, например, веб-серверу или ssh. Но по умолчанию сетевые интерфейсы изолированы и такой возможности нет.

Для решения этой задачи можно пойти двумя путями. Мы можем пробросить необходимый порт виртуальной машины в основную систему или же выдать виртуальной машине отдельный IP адрес, что позволит обращаться к любым ее портам и использовать любые сетевые возможности. В этой небольшой статье мы рассмотрим проброс портов virtualbox двумя способами. Начнем с более простого.

Проброс портов в VirtualBox

По умолчанию для настройки сети для виртуальной машины используется технология NAT. С помощью нее вы можете просматривать интернет-сайты и выполнять различные действия в сети, но вы не будете видеть ваш основной компьютер. Для виртуальной машины создается виртуальная сеть, в которой есть только она одна, а ваша домашняя сеть и ваш компьютер ей не виден.

Но если вам нужно получить доступ к какому-либо сервису гостевой машины, то можно пробросить порт этого сервиса в основную систему. Так работают порты VirtualBox. Для этого откройте контекстное меню для машины и нажмите "Настройки":


Затем перейдите на вкладку "Сеть", а потом разверните строчку "Дополнительно":


Тут вам нужно нажать кнопку "Проброс портов":

Дальше нажмите кнопку с зеленым значком "+". Тут нужно заполнить несколько полей:

  • Имя - любое имя, по которому вы сможете понять с чем имеете дело;
  • Протокол - протокол, по которому работает сервис, например, tcp;
  • Адрес хоста - адрес на основной машине, подключения к которому будут направляться на виртуальную машину, можно написать 127.0.0.1 или ip в локальной сети;
  • Порт хоста - порт, подключения к которому нужно перенаправлять на гостя;
  • Адрес гостя - на который нужно направлять подключения, оставьте пустым;
  • Порт гостя - порт, на который будут перенаправлены подключения с этого порта.

Адрес хоста в локальной сети можно узнать так:

Еще один важный момент, что порт с которого вы перенаправляете и на который перенаправляете не должны совпадать. Странное дело, но если перенаправлять с порта 80 на 80, то работать все это не будет. Нужно использовать 8080 на 80. Тогда все в порядке. Если вы не любитель много кликать, что можно воспользоваться командной терминала:

VBoxManage modifyvm "Имя машины" --natpf1 "rulename,tcp,127.0.0.1,8080,,80"

В этом примере взяты данные из рассмотренного выше примера. Теперь на хосте и виртуальной машине откроется одна и та же страница.


Проброс портов virtualbox nat работает.

Виртуальный адаптер хоста VirtualBox

Еще один способ получить доступ к виртуальной машине извне - использовать виртуальный адаптер хоста. Тут вы можете настроить все более подробно, а также получить отдельный ip для машины, что дает больше возможностей. Сначала нужно создать виртуальный адаптер. Для этого откройте меню "Файл", затем "Настройки":


Тут нужно перейти на вкладку "Сеть", затем "Виртуальные адаптеры":


Дальше нажмите кнопку "+", чтобы в списке появился пункт vboxnet0. Тут готово, нажмите несколько раз "Ok" чтобы закрыть это окно. Дальше откройте контекстное меню вашей виртуальной машины, потом "Настроить", а затем "Сеть":

Тут вам нужно в выпадающем списке заменить "NAT" на "Виртуальный адаптер хоста". В поле имя, выберите "vboxnet0":


Теперь можете запускать виртуальную машину и смотреть ее ip адрес:


По нему гостевая система будет доступной из внешней. Внешняя система теперь тоже полностью доступна из гостевой по адресу 192.168.56.1:



Выводы

В этой небольшой статье мы рассмотрели как выполняется проброс портов VirtualBox, это может быть очень полезным, если вы часто работаете с виртуальными машинами. Если у вас остались вопросы, спрашивайте в комментариях!

Читайте также: