Андрей Смирнов
Время чтения: ~15 мин.
Просмотров: 290

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

Виртуальные машины 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 обратно достаточно открыть настройки нужной машины:

Snimok-ekrana-ot-2017-12-13-19-57-11-1024x576.png

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

Snimok-ekrana-ot-2017-12-13-20-44-30-1024x576.png

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

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

Snimok-ekrana-ot-2017-12-13-20-13-01-1024x576.png

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

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

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

Snimok-ekrana-ot-2017-12-14-16-47-18-1024x576.png

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

Snimok-ekrana-ot-2017-12-14-16-47-08-1024x576.png

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

Snimok-ekrana-ot-2017-12-14-16-47-34-1024x576.png

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

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

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

Snimok-ekrana-ot-2017-12-14-17-39-13-1024x576.png

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

Snimok-ekrana-ot-2017-12-13-20-20-27-1024x576.png

Нажмите кнопку «Создать», затем, в появившемся адаптере, напротив пункта DHCP установите галочку «Включен».

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

Snimok-ekrana-ot-2017-12-13-20-22-33-1024x576.png

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

Snimok-ekrana-ot-2017-12-13-19-57-21-1024x576.png

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

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

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

Snimok-ekrana-ot-2017-12-14-17-44-30-1024x576.png

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

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

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

Snimok-ekrana-ot-2017-12-14-17-47-33-1024x576.png

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

Выводы

Snimok-ekrana-ot-2017-12-14-16-51-38-1024x576.png

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

Весна, снова потянуло на эксперименты. Ну, в моем понимании этого слова. Решил поставить себе в Windows 7 виртуальную машину, а в эту машину — Ubuntu 16.04 Server (под которой работает хостинг для моих сайтов). И не то чтобы меня как-то OpenServer не устраивает — он как раз весьма неплох в качестве домашнего WAMP-а, но всё же иногда хочется иметь под рукой локально и LAMP, ну просто потому что. В качестве виртуальной машины [ожидаемо] выбрал VirtualBox. В целом, установка Ubuntu 16.04 Server на VirtualBox каких-то особых вопросов не вызвала, но вот настройка сети в Ubuntu так, чтобы ее было видно из Windows, поставила меня в тупик. Ибо опыта в этом деле — 0, а мануалы по теме хотя и гуглятся во множестве, но в каждом из них тема почему-то раскрыта лишь частично, и требует уже определенного уровня знания Linux и принципов работы сетевых интерфейсов. В конечном итоге я этот вопрос решил и теперь делюсь с теми, кому оно тоже актуально. Приступим. 1. Скачиваем VirtualBox для Windows www.virtualbox.org/wiki/Downloads2. Скачиваем Ubuntu Server 16.04 www.ubuntu.com/download/server3. Устанавливаем VirtualBox в систему (ставится легко, раскрывать этот вопрос здесь не буду, в крайнем случае — в сети есть много шпаргалок по теме).4. Ставим Ubuntu Server 16.04 в VirtualBox. Здесь тоже всё не сложнее (а то и проще), чем установка винды, например, и много всяких хороших руководств с картинками (они, в общем, и не требуются — всё интуитивно понятно). Но есть пара нюансов:4.1 При установке сети выберите автоматическую настройку.4.2 При установке пакетов сразу поставьте галки на сервер OpenSSH и LAMP (остальное по желанию) — так проще.5. Я полагаю, что все у вас прошло нормально, Ubuntu загрузилась, и интернет в ней наличествует ( проверить можно командой ping yandex.ru например). Однако, остается вопрос, как, например, законнектиться с Ubuntu из Windows скажем, через SSH. Или просто даже открыть в браузере сайт, работающий на убунтовском Apache. 6. Итак, остановим нашу Ubuntu, закроем окно с терминалом, и уже в главном окне VirtualBox идем в Файл → Настройки → Сеть → Виртуальные сети хоста — справа три маленькие иконки — жмем на нижнюю с изображением отвертки. 7. Видим IP-адрес: 192.168.56.1 — это адрес, по которому Windows обращается к VirtualBox.8. Рядом вкладка «DHCP сервер» в нашем случае она пуста (чекбокс не выбран). И пусть таковой и остается.9. Далее идем в настройки гостевой системы (в нашем случае — Ubuntu 16.04.2 Server), щелкаем правой кнопкой на вкладке с системой и выбираем самый верхний пункт «Настроить…».10. Здесь снова идем в «Сеть» (у нас получается два одноименных пункта «Сеть», но в первом случае мы настраивали сеть Windows и VirtualBox, а теперь мы настраиваем сеть гостевой системы — Ubuntu в связке с остальным). Здесь мы видим, что для первого адаптера отмечена NAT. Не меняем. 11. Открываем вкладку «Адаптер 2», ставим галку на «Включить сетевой адаптер» и в списке выбираем тип подключения: «Виртуальный адаптер хоста». Жмем ОК. Это действие добавит нам в Ubuntu сетевой адаптер, через который мы и прорубим окно во внешний мир, и в которое можно будет посмотреть на Ubuntu из Windows, через браузер или SSH-клиент, например. 12. Далее идем в окно терминала Ubuntu, логинимся (если еще не), и сразу ставим mc

sudo apt-get install mc

Чем значительно облегчаем себе дальнейшую жизнь (здесь вспоминается высказывание древнего философа: — Это как же нужно было не любить людей, чтобы содать vi )13. Смотрим какие сетевые интерфейсы нам доступны:

ifconfig -a

Нужно это для того, чтобы понять, какое имя в Ubuntu носит тот самый «Виртуальный адаптер хоста», который мы создали в шаге №11 На скрине вы видите уже настроенные интерфейсы, но у вас будет примерно то же самое. Нас в данной ситуации исключительно интересует какое имя носит сетевой интерфейс, через который мы и будем осуществлять доступ из винды в убунту. Здесь мы видим, что есть три интерфейса: lo — локальная петля, enp0s3 — это «Адаптер 1» который у нас настроен как NAT (через него идет интернет-трафик в Ubuntu) и, наконец, enp0s8 — это и есть вышеупомянутый «Адаптер 2» («Виртуальный адаптер хоста»). Теперь осталось его настроить.14. Запускаем mc от имени суперпользователя:

sudo mc

15. И открываем для правки файл

/etc/network/interfaces

(переводим на него курсор и жмем F4), либо просто командой

mcedit /etc/network/interfaces

Но лично я предпочитаю через mc — меньше буковок набирать приходится 🙂16. И добавляем туда в конец текста такие строки: Получается что-то вроде как показано на скрине: Если двумя словами, то мы тем самым нашему «Адаптеру 2» дали статический IP-адрес: 192.168.56.107 (можете поменять его на 192.168.56.101 например, или 192.168.56.110, без разницы). И теперь через этот адрес, Ubuntu будет видна из Windows.17. Сохраняем изменения — F2 и выходим из редактора — F10.18. Далее перезапускаем интерфейсы, например так:

sudo service networking restart

или можете просто перезагрузить Ubuntu Server.19. Теперь, если звезды на небе расположены правильно, то открыв браузер, и набрав в адресной строке:http://192.168.56.107 вы увидите приветственную страницу установленного в составе LAMP (см.п. 4.2 выше) Apache2. Либо можете законнектиться по SSH через 22 порт по этому же IP-адресу: 192.168.56.107<author> Ромчик </author> 12

virtualbox-150x150.jpgДоброго времени суток. В данном посте мы установим Virtual Box на Windows 10. Дальше в качестве гостевой системы поставим Ubuntu Server и настроим сеть. Сеть настроим таким образом: через один интерфейс будем выходить в интернет, а через второй интерфейс мы будем заходить с хоста (в нашем случае Windows 10) на гостевую систему (Ubuntu Server). Это нам пригодится для подключения к Ubuntu по ssh, по ftp, по http и по https.

Ну, что приступим.

Установка VirtualBox.

Для начала нам необходимо скачать сам VirtualBox. Для тех, кто еще не знаком с VirtualBox я рекомендую статью на Wikipedia. Скачать VirtualBox мы можем на официальном сайте

Переходим по кнопке «Download VirtualBox 5.0»

0147-300x172.png

Выбираем VirtualBox для соответствующей системы. В нашем случае для Windows «VirtualBox 5.0 for Windows hosts»

0244-300x132.png

Приступаем к установке. Запускаем инсталлятор.

0332-300x235.pngНичего не меняем, устанавливаем по дефолту

0424-300x235.png

Жмем «Next»

0520-300x235.png

Опять же ничего не меняем. Жмем «Next»

0613-300x235.png

Для начала установки жмем «Yes»

079-300x235.png

Жмем «Install»

088-300x235.png

Галочку оставляем и жмем «Finish». Все установка VirtualBox завершена.

Т.к. в последнем окне мы оставили галочку, то VirtualBox запустится автоматом. Теперь создадим виртуальную машину.

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

Жмем «Создать»

097-300x226.png

В открывшемся окне в полях:

  • Имя – вписываем название наше виртуальной машины
  • Тип – выбираем Linux
  • Версия – выбираем Ubuntu(32-bit)

Жмем «Next»

107-300x245.png

В следующем окне устанавливаем, выделяемый объем оперативной памяти для нашей виртуальной машины. В моем случае я выделил 2ГБ. Жмем «Next».

116-300x245.png

В следующем окне выбираем «Создать новый виртуальный жесткий диск» и жмем «Создать».

125-300x245.png

В следующем окне указываем тип – VDI и жмем «Next»

135-300x248.png

В следующем окне выбираем «Динамический виртуальный жесткий диск» и жмем «Next»

144-300x248.png

Указываем объем виртуального жесткого диска. Система рекомендует 8ГБ, так и оставим. Жмем «Создать»

152-300x248.png

Все виртуальная машина создана.

162-300x226.png

Теперь можно приступить к установке Ubuntu Server на VirtualBox.

Установка Ubuntu Server на VirtualBox.

Прежде чем приступить к установке Ubuntu. Необходимо скачать сам дистрибутив. Для этого заходим на сайт Ubuntu. Выбираем в меню «Download» пункт «Server»

172-300x87.png

Дальше выбираем «Alternative downloads and torrents»

182-300x129.png

И скачиваем Ubuntu 14.04.2 LTS Server (32-bit)

192-300x154.png

Теперь мы можем приступить к установке Ubuntu.

Вставляем наш, только что скачанный iso в привод нашей виртуальной машины. Для этого в разделе «Носители» жмем по «Оптический привод» и выбираем только, что скачанный образ дистрибутива Ubuntu Server.

202-300x226.png

Вот, что у нас получилось

213-300x226.png

Теперь запускаем виртуальную машину.

Нас попросят выбрать загрузочный диск. Выбираем Ubuntu-14.04.2-server-i386.iso и жмем «Продолжить».

222-300x263.png

Пошла установка Ubuntu. Выбираем язык установки. И жмем «Enter».

232-300x259.png

На следующем шаге выбираем «Установить Ubuntu Server»

241-300x259.png

Дальше установка Ubuntu идет стандартно, никаких фокусов нет. Поэтому я и подробно останавливаться не буду. После установки Ubuntu сразу рекомендую обновить все пакеты и установить mc.

Отлично. Теперь пришло время для настройки сети в Ubuntu.

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

Как я говорил выше, на гостевой системе нам нужен выход в интернет и связь с хостом. Для этого для гостевой системы у нас будет две сетевые карты. В нашем случае eth0 – для связи с хостом, а eth1 – для выхода в интернет. Выход в интернет будет через NAT. Хорошо, настраиваем.

Открываем файл /etc/network/interfaces для редактирования под рутовыми правами. Я делаю, так:

  • Открываю mc под рутом, команда sudo mc
  • Перехожу в нужный каталог
  • И открываю файл на редактирование F4

251-300x259.png

Редактируем файл следующим образом:

    iface eth0 inet static    address 192.168.100.100    netmask 255.255.255.0    auto eth0        iface eth1 inet dhcp    auto eth1    

Вот как, получилось:

261-300x259.png

Отлично, теперь выключаем виртуальную машину. И переходим к настройкам VirtualBox.

Для этого открываем в меню «Файл» пункт «Настройки». Выбираем «Сеть». Во вкладке «Сети NAT» ничего не меняем. А вот во вкладке «Виртуальные сети хоста» выбираем «VirtualBox Host-Only Ethernet Adapter» жмем на кнопку редактирования.

271-300x191.png

Во вкладке «Адаптер» в поле «IPv4 адрес» прописываем адрес 192.168.100.1, в поле «IPv4 маска сети» прописываем 255.255.255.0. Во вкладке «DHCP сервер» отключаем DHCP сервер, убрав галочку с «Включить DHCP сервер». Жмем «Ok».

281-300x184.png

Таким образом мы настроили сам VirtualBox. Теперь надо настроить саму виртуальную машину.

Для этого жмем правой кнопкой мыши по виртуальной машине и выбираем «Настроить». Переходим в пункт «Сеть». И во вкладке «Адаптер 1»:

  • Включаем сетевой адаптер
  • Тип подключения выбираем «Виртуальный адаптер хоста»
  • Имя выбираем «VirtualBox Host-Only Ethernet Adapter»
  • Все остальное оставляем без изменений

291-300x179.png

Переходим во вкладку «Адаптер 2»:

  • Включаем сетевой адаптер
  • Тип подключения выбираем «NAT»
  • Больше ничего не трогаем

301-300x179.png

Жмем «Ok». Все мы с Вами настроили сеть для работы с гостевой системой Ubuntu Server из нашей Windows 10, а также настроили выход в интернет для самой гостевой системы. Давайте проверим. Запускаем нашу виртуальную машину.

Проверяем запустились ли наши интерфейсы. Для этого вводим команду

    ifconfig    

Так, интерфейсы поднялись:

312-300x259.png

Проверяем интернет, запустим пинг

    ping ya.ru    

Пинг идет – интернет есть.

Теперь проверим доступность Ubuntu Server с нашего хоста. Вызываем в Windows 10 командную строку, для этого жмем Win+R и вводим cmd, жмем Enter. В открывшемся окне запускаем пинг на адрес 192.168.100.100:

Как видите все работает.

Закючение.

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

  • %D0%94%D0%BE%D0%B1%D1%80%D0%BE%D0%B3%D0%BE%20%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%B8%20%D1%81%D1%83%D1%82%D0%BE%D0%BA.%20%D0%92%20%D0%B4%D0%B0%D0%BD%D0%BD%D0%BE%D0%BC%20%D0%BF%D0%BE%D1%81%D1%82%D0%B5%20%D0%BC%D1%8B%20%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D0%BC%20Virtual%20Box%20%D0%BD%D0%B0%20Windows%2010.%20%D0%94%D0%B0%D0%BB%D1%8C%D1%88%D0%B5%20%D0%B2%20%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B5%20%D0%B3%D0%BE%D1%81%D1%82%D0%B5%D0%B2%D0%BE%D0%B9%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B%20%D0%BF%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D0%BC%20Ubuntu%20Server%20%D0%B8%20%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B8%D0%BC%20%D1%81%D0%B5%D1%82%D1%8C.%20%D0%A1+%D0%92%D1%81%D0%B5+%D0%BE+WEB+%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8&subject=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0%20Ubuntu%20Server%20%D0%BD%D0%B0%20VirtualBox.%20%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20%D1%81%D0%B5%D1%82%D0%B8+<+%D0%92%D1%81%D0%B5+%D0%BE+WEB+%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8″ title=»LiveJournal»>

ИнструментарийИспользуемые источники:

  • https://losst.ru/nastrojka-seti-virtualbox
  • https://habr.com/post/324016/
  • https://web-programming.com.ua/ustanovka-ubuntu-server-na-virtualbox-nastrojka-seti/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации