Назад | Перейти на главную страницу

VirtualBox - несколько гостей, каждый с одним мостовым адаптером?

Я использую выделенный сервер (расположенный в Hetzner, Германия), на котором работает VirtualBox, чтобы виртуализировать несколько служб для нескольких виртуальных гостей. Предполагается, что эти гости

  1. общаться друг с другом (например, виртуальный веб-сервер должен иметь доступ к виртуальному серверу базы данных);
  2. быть доступным с выделенного сервера (например, SSH-доступ); и
  3. для выхода в Интернет через выделенный сервер (например, для загрузки обновлений безопасности)

В настоящее время это достигается за счет наличия адаптера только для хоста vboxnet0 на выделенном сервере и двух виртуальных интерфейсов на каждом гостевом компьютере. Здесь виртуальный адаптер eth0 подключен к vboxnet0 (для достижения (1) и (2)), виртуальный адаптер eth1 подключен к VirtualBox NAT (для достижения (3)).

Через eth0 гости имеют доступ к DHCP и DNS-серверу, которые работают на выделенном сервере (там, привязанном к vboxnet0). Это позволяет мне назначать собственные IP-адреса и имена. Через eth1 VirtualBox проталкивает правильный маршрут, который позволяет каждому гостю получить доступ в Интернет (через eth0 на выделенном сервере).

Такая установка с двумя виртуальными адаптерами часто приводит к проблемам и, по крайней мере, усложняет многие вещи. Например, на выделенном сервере есть OpenVPN, позволяющий получить доступ к виртуальным машинам через Интернет; кроме того, существует Shorwall, который контролирует входящий и исходящий сетевой трафик между Интернетом, выделенным сервером и отдельными виртуальными машинами. Не говоря уже об автоматической установке серверов через PXE ... Поэтому я бы предпочел иметь только один виртуальный адаптер на каждом госте, который будет использоваться как для входящих, так и для исходящих подключений. Насколько я понимаю, в основном для этой цели можно использовать мостовой интерфейс.

Теперь возникает вопрос: какой интерфейс на выделенном сервере будет использовать мост? eth0 на хост-сервере не подходит, так как это запрещено провайдером. Виртуальный интерфейс eth0: 0 не имел бы никакого смысла, поскольку мост всегда использует физический интерфейс (в данном случае eth0).

Можно ли было бы создать на каждой виртуальной машине мостовой интерфейс, который «болтался бы в воздухе»? Таким образом, без дополнения на выделенном сервере? Как мне настроить маршрутизацию на хост-сервере?

Обратите внимание, что на хосте / выделенном сервере есть только один сетевой адаптер (eth0), который подключен к сети провайдера.

С Уважением,

Мартин