[an error occurred while processing this directive]

Настройка сетевого доступа для VirtualBox окружения в Ubuntu/Debian Linux
В простейшем случае работу сети внутри гостевой системы в VirtualBox можно обеспечить через NAT.
Достаточно выбрать тип эмуляции сетевого интерфейса - NAT, а в гостевой ОС получить IP по DHCP или 
установить вручную из диапазона 10.0.2.0/24, шлюз 10.0.2.2, DNS 10.0.2.3. 

Для проброса портов из вне можно использовать:

   VBoxManage setextradata "freebsd" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/Protocol" TCP
   VBoxManage setextradata "freebsd" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/GuestPort" 22
   VBoxManage setextradata "freebsd" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/HostPort" 2222

где, "freebsd" - это имя виртуальной машины, а e1000 тип эмулируемой карты
(можно посмотреть в VBox.log).
Заходя на 2222 порт хостовой машины мы будем переброшены на 22 порт виртуального окружения.


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


Устанавливаем пакеты:

    sudo apt-get install uml-utilities bridge-utils

Настраиваем бриждинг, редактируем /etc/network/interfaces в случае если IP
хост-система получает динамически (DHCP):

    auto eth0
    iface eth0 inet manual

    auto br0
    iface br0 inet dhcp
    bridge_ports eth0 vbox0

    # The loopback network interface
    auto lo
    iface lo inet loopback

eth0 - сетевой интерфейс, br0 - создаваемый бридж, vbox0 - имя устройства,
используемого в VirtualBox
Если виртуальных окружений несколько, можно написать:

    bridge_ports eth0 vbox0 vbox1 vbox2 vbox3 vbox4

В случае со статическим IP настройки примут вид:

    auto eth0
    iface eth0 inet manual

    auto br0
    iface br0 inet static
    address 192.168.0.100
    netmask 255.255.255.0
    gateway 192.168.0.1
    bridge_ports eth0 vbox0 vbox1

    # The loopback network interface
    auto lo
    iface lo inet loopback

При использовании статического IP в eth0, его настройки должны совпадать с br0

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

    sudo /etc/init.d/networking restart

В сетевых настройках VirtualBox определяем виртуальные интерфейсы.
Для этого редактируем файл /etc/vbox/interfaces:

   # Each line should be of the format :
   # <interface name> <user name> [<bridge>]
   vbox0 <your user name> br0
   vbox1 <your user name> br0

Перезапускаем virtualbox для принятия изменений:

Для OpenSource версии:

    sudo /etc/init.d/virtualbox-ose restart

Для проприетарной сборки:

    sudo /etc/init.d/vboxnet restart

Не забываем убедиться в наличии прав доступа на чтение и запись для
пользователей группы vboxusers для устройства /dev/net/tun

    sudo chown root:vboxusers /dev/net/tun
    sudo chmod g+rw /dev/net/tun

Чтобы права автоматически установились после перезагрузки в
/etc/udev/rules.d/20-names.rules меняем

    KERNEL=="tun", NAME="net/%k"

на

    KERNEL=="tun", NAME="net/%k",  GROUP="vboxusers", MODE="0660"

В настройках  VirtualBox для гостевого окружения выбираем "host networking" указав имя 
созданного виртуального интерфейса, а внутри оргужения ставим IP из
представленного на интерфейсе диапазона адресов (192.168.0.x).

Вручную отдельный TUN интерфейс без бриджинга можно поднять используя tunctl из
пакета uml-utilities:

   tunctl -t vbox0 -u имя_текущего_пользователя
   ifconfig vbox0 192.168.0.254 up
   route add -host 192.168.0.253 dev vbox0
   echo 1 > /proc/sys/net/ipv4/conf/vbox0/proxy_arp
   arp -Ds 192.168.0.253 eth0 pub

С бриджем:

    brctl addbr br0
    ifconfig eth0 0.0.0.0 promisc up
    ifconfig vbox0 0.0.0.0 promisc up
    ifconfig br0 192.168.0.1 netmask 255.255.255.0 up
    brctl stp br0 off
    brctl setfd br0 1
    brctl sethello br0 1
    brctl addif br0 eth0
    brctl addif br0 vbox0
 
18.12.2008 , Источник: http://www.ubuntugeek.com/how-to-se...
Ключи: virtualbox, network, nat, interface, bridge / Лицензия: CC-BY
Раздел:    Корень / Безопасность / Виртуализация - Xen, OpenVZ, KVM, Qemu

[an error occurred while processing this directive]

[an error occurred while processing this directive]