Знакомство с Virtualbox. Сетевые настройки программы и виртуальных машин. Часть - 2.

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

DHCP

Для использования связки NAT/Сеть NAT + Виртуальный адаптер хоста, необходимо отключить DHCP для устройства VirtualBox Host-Only Ethernet Adapter. Отключение DHCP сервера обеспечивает статические ip-адреса для машин использующих VirtualBox Host-Only Ethernet Adapter.

Откройте настройки (Ctrl+G) и перейдите в раздел "Сеть", вкладка "Виртуальные сети хоста" и выберите устройство VirtualBox Host-Only Ethernet Adapter. Кликните по нему два раза, для открытия настроек устройства. В открывшемся окошке перейдите на вкладку "DHCP сервер" и уберите галочку со значения "Включить сервер".

virtualbox настройкиПри использовании NAT + Виртуальный адаптер хоста, больше ничего настраивать не нужно и можно переходить к установке системы.

В случае использования Сеть NAT + Виртуальный адаптер хоста, помимо отключения DHCP, необходимо добавить Сеть NAT и отключить DHCP и для нее.

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

virtualbox настройки

NAT + Виртуальный адаптер хоста в Ubuntu & Debian

Окно выбора сетевого интерфейса для первоначальной настройки.

virtualbox настройкиВыбираем enp0s3 или eth0 в зависимости от системыэто будет первый сетевой адаптер работающий в NAT режиме. Система автоматически задаст конфигурацию интерфейса.

После установки системы редактируем конфигурационный файл сетевых интерфейсов.

nano /etc/network/interfaces

В файле есть конфигурация enp0s3/eth0 для режима NAT.

# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp

Интерфейс настроен на автоматическое получение адреса (dhcp), но поскольку это NAT, то адрес будет только один - 10.0.2.15/24. Здесь оставляем все как есть.

Добавим конфигурацию второго интерфейса - enp0s8/eth1, работающего в режиме Виртуального адаптера хоста.

# Виртуальный адаптер хоста
auto enp0s8
iface enp0s8 inet static
address 192.168.56.100
netmask 255.255.255.0

Значение auto указывает что интерфейс стартует при запуске системы, static что назначенный ip-адрес будет постоянным, netmask задает маску подсети.

Файл должен выглядеть так.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp

# Виртуальный адаптер хоста
auto enp0s8
iface enp0s8 inet static
address 192.168.56.100
netmask 255.255.255.0

Запустим интерфейс для применения настроек.

ifup enp0s8

Проверим настройки.

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:e7:70:2d brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fee7:702d/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:a3:fe:a4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.100/24 brd 192.168.56.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fea3:fea4/64 scope link 
       valid_lft forever preferred_lft forever

NAT + Виртуальный адаптер хоста в CentOS

При использовании NAT + Виртуальный адаптер хоста во время установки, в разделе "СЕТЬ И ИМЯ УЗЛА" будут доступны два сетевых интерфейса.

virtualbox настройкиВыбираем первый адаптер enp0s3 работающий в NAT режиме. Его достаточно просто включить и все настройки будут применены автоматически.

virtualbox настройки

Выбираем enp0s8 и нажимаем "Настроить" в нижнем правом углу окна. Переходим на вкладку "Параметры IPv4" и выбираем ручную настройку. Нажимаем "Add" и вводим значения ip-адреса - 192.168.56.100 и маски подсети - 24. После чего нажимаем "Сохранить".

virtualbox настройкиВключаем адаптер чтобы применить настройки.

virtualbox настройки

После настройки активным будет первый интерфейс, второй будет отключен.

После установки редактируем файл интерфейса enp0s8.

nano /etc/sysconfig/network-scripts/ifcfg-enp0s8

Изменяем значение параметра ONBOOT с no на yes. Если этого не сделать, то интерфейс не будет запускаться при загрузке системы и его придется запускать вручную.

ONBOOT=yes

Запускаем интерфейс enp0s8.

ifup enp0s8

Проверяем настройки.

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:79:69:f0 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
       valid_lft 85396sec preferred_lft 85396sec
    inet6 fe80::a00:27ff:fe79:69f0/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:53:aa:83 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.100/24 brd 192.168.56.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe53:aa83/64 scope link 
       valid_lft forever preferred_lft forever

Сеть NAT + Виртуальный адаптер хоста в Ubuntu & Debian

Окно выбора сетевого интерфейса для первоначальной настройки.

virtualbox настройкиВыбираем enp0s3 или eth0, при попытке автоматической настройки интерфейса система выдаст предупреждение.

virtualbox настройкиСистеме не удалось получить настройки от DHCP сервера. Нажмите <Продолжить> и выберите ручную настройку сети.

virtualbox настройкиВводим ip-адрес с указанием длины маски подсети - 10.0.2.5/24 и нажимаем <Продолжить>.

virtualbox настройкиИсходя из указанного ip-адреса система автоматически подставит значение шлюза, нажимаем <Продолжить>.

virtualbox настройкиАдреса DNS серверов тоже можно оставить по умолчанию.

virtualbox настройки

Редактируем конфигурационный файл интерфейсов.

nano /etc/network/interfaces

В файле уже есть конфигурация первого интерфейса enp0s3/eth0, работающего в режиме Сеть NAT.

# The primary network interface
auto enp0s3
iface enp0s3 inet static
        address 10.0.2.5
        netmask 255.255.255.0
        network 10.0.2.0
        broadcast 10.0.2.255
        gateway 10.0.2.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 10.0.2.1

Добавим конфигурацию второго интерфейса - enp0s8/eth1 - Виртуальный адаптер хоста.

# Виртуальный адаптер хоста
auto enp0s8
iface enp0s8 inet static
address 192.168.56.100
netmask 255.255.255.0

Значение auto указывает что интерфейс будет стартовать при запуске системы, static указывает что назначенный ip-адрес будет постоянным, netmask задает маску подсети.

Файл должен выглядеть так.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s3
iface enp0s3 inet static
        address 10.0.2.5
        netmask 255.255.255.0
        network 10.0.2.0
        broadcast 10.0.2.255
        gateway 10.0.2.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 10.0.2.1

# Виртуальный адаптер хоста
auto enp0s8
iface enp0s8 inet static
address 192.168.56.100
netmask 255.255.255.0

Запустим интерфейс для применения настроек.

ifup enp0s8

Проверим настройки.

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:37:04:14 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.5/24 brd 10.0.2.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe37:414/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:8f:05:3d brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.100/24 brd 192.168.56.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe8f:53d/64 scope link 
       valid_lft forever preferred_lft forever

Сеть NAT + Виртуальный адаптер хоста в CentOS

При использовании Сеть NAT + Виртуальный адаптер хоста во время установки, в разделе "СЕТЬ И ИМЯ УЗЛА" будут доступны два сетевых интерфейса.

virtualbox настройки

Выбираем первый адаптер enp0s3 работающий в Сеть NAT режиме. Для ручной настройки нажимаем кнопку "Настроить" в нижнем правом углу окна. В открывшемся окне переходим на вкладку "Параметры IPv4" и выбираем ручную настройку. Нажимаем кнопку "Add" и вводим значения ip-адреса - 10.0.2.5 и маски подсети - 24. Значения шлюза и DNS-сервера - 10.0.2.1, после чего нажимаем кнопку "Сохранить".

virtualbox настройкиВключаем адаптер для применения настроек.

virtualbox настройки

Выбираем второй адаптер enp0s8 работающий в режиме Виртуального адаптера хоста. Для ручной настройки нажимаем кнопку "Настроить" в нижнем правом углу окна. Переходим на вкладку "Параметры IPv4" и выбираем ручную настройку. Нажимаем кнопку "Add" и вводим значения ip-адреса - 192.168.56.100 и маски подсети - 24. Нажимаем "Сохранить".

virtualbox настройкиВключаем адаптер для применения настроек.

virtualbox настройки

После настройки активным будет первый интерфейс, второй будет отключен.

Редактируем файл интерфейса enp0s8.

nano /etc/sysconfig/network-scripts/ifcfg-enp0s8

Изменяем значение параметра ONBOOT с no на yes. Если этого не сделать, то интерфейс не будет запускаться при загрузке системы и его придется запускать вручную.

ONBOOT=yes

Запускаем интерфейс enp0s8.

ifup enp0s8

Проверяем настройки.

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:79:69:f0 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
       valid_lft 85396sec preferred_lft 85396sec
    inet6 fe80::a00:27ff:fe79:69f0/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:53:aa:83 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.100/24 brd 192.168.56.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe53:aa83/64 scope link 
       valid_lft forever preferred_lft forever

NAT/Сеть NAT + Проброс портов

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

Рассмотрим проброс порта на примере SSH клиента PuTTY. В сетевых настройках виртуальной машины, на вкладке "Адаптер 1" нажимаем "Проброс портов". В открывшемся окне добавляем правило, щелкнув по зеленой иконке с плюсиком.

virtualbox настройкиПравила проброса портов пишутся следующим образом:

  • Имя - может быть любым,  чтобы не путаться я называю правило именем протокола или службы, работу которого оно обеспечивает.
  • Протокол - указывается протокол который использует служба.
  • Адрес хоста - под адресом хоста подразумевается адрес машины на который будут идти запросы на соединение. Обычно указывается localhost 127.0.0.1
  • Порт хоста - порт хост-системы на который поступают запросы на соединение. От 50000 и выше идут свободные порты.
  • Адрес гостя - адрес виртуальной машины в NAT сети - 10.0.2.15
  • Порт гостя - порт виртуальной машины на котором работает нужная служба. Поскольку SSH работает на 22 порту, то указываем 22 порт.

Проверим порт и подключимся к виртуальной машине.

virtualbox настройки

Проброс портов для Сеть NAT ничем не отличается от NAT, только производится в настройках самой сети.

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

virtualbox настройки

Сетевой мост в Ubuntu & Debian

Настройка адаптера в режиме сетевого моста происходит автоматически в процессе установки ОС. Если поддержка DHCP отключена, то соединение настраивается вручную.

virtualbox настройки

<Продолжить> - Настроить сеть вручную.

virtualbox настройкиВводим ip-адрес и маску подсети исходя из рабочего диапазона вашего маршрутизатора.

virtualbox настройкиОсновываясь на значении ip шлюз будет указан автоматически.

virtualbox настройки

Указываем DNS сервер. Можно оставить по умолчанию (совпадает со значением шлюза) или вводим свои значения.

virtualbox настройки

После установки системы проверим настройки интерфейса.

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:e0:d3:a4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.200/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fee0:d3a4/64 scope link 
       valid_lft forever preferred_lft forever

На примере Ubuntu содержание файла /etc/network/interfaces должно быть примерно следующим, в Debian сетевой интерфейс будет называться eth0.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s3 
iface enp0s3 inet static
        address 192.168.1.200
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 192.168.1.1
        dns-search dev

Сетевой мост в CentOS

Настройка адаптера в режиме сетевого моста происходит автоматически в процессе установки ОС. Если поддержка DHCP отключена, то соединение настраивается вручную.

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

virtualbox настройка

Для ручной настройки интерфейса нажмите кнопку "Настроить" в нижнем правом углу окна. Переходим на вкладку "Параметры IPv4" и выбираем ручную настройку. Нажимаем "Add" и вводим значения ip-адреса, шлюза, маски подсети и DNS-сервера. Нажимаем "Сохранить".

virtualbox настройкаВключаем интерфейс чтобы применить настройки.

virtualbox настройкаПосле установки проверим настройки интерфейса.

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:b4:f8:0b brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.210/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::d98b:c1e7:61c6:3c30/64 scope link 
       valid_lft forever preferred_lft forever

Файл должен выглядеть примерно так.

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp0s3"
UUID="27a19db9-5b46-40ef-b555-b81b9f51904d"
DEVICE="enp0s3"
ONBOOT="yes"
IPADDR="192.168.1.210"
PREFIX="24"
GATEWAY="192.168.1.1"
DNS1="192.168.1.1"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_PRIVACY="no"

Ответить:

Please enter your comment!
Please enter your name here