VirtualBox com bridge

13.03.08

Filed Under: Uncategorized

Cenário: Usar o VirtualBox para criar uma máquina virtual. A máquina host e máquina guest são Debian etch.

Tipicamente as máquinas guest usam o NAT e com isso a ligação à rede LAN e WAN tornam-se triviais. Mas o problema surge quando queremos aceder por rede à maquina guest. Neste caso temos que passar a usar Bridge em vez de NAT. Em primeiro lugar segue-se a configuração necessária na máquina host:

#sudo apt-get install uml-utilities bridge-utils

Criamos a interface de rede TAP

#sudo tunctl -t tap1 -u

Criamos a bridge br0

#sudo brctl addbr br0
#sudo ifconfig eth0 0.0.0.0 promisc

Associamos a nossa placa de rede com a bridge

#sudo brctl addif br0 eth0

Atribuímos um IP à bridge por DHCP

#sudo dhclient br0

ou IP estático

#sudo ifconfig br0 192.168.1.102

#sudo brctl addif br0 tap1

#sudo ifconfig tap1 up

#sudo chmod 0666 /dev/net/tun

Nas configurações de rede da nossa máquina guest, escolhemos “Host Interface” e adicionamos a interface “tap1″.

Depois do arranque da nossa máquina guest, alteramos o IP para um da mesma rede da máquina host.

P.S.: Se a nossa máquina host correr Windows parece que a configuração é bem mais fácil. Basta adcionar uma nova interface de rede no VirtualBox, alterar a opção “Attached” para “Host Interface”. A partir daqui temos mais uma ligação de rede no nosso Windows, à qual temos que associar a placa de rede principal através de uma bridge. O processo de configuração da rede na nossa máquina guest mantem-se. Enjoy!

3 Responses to “VirtualBox com bridge”

  1. Daniel

    Isso não funcionou para mim!
    O host é um Ubuntu 8.04, o Guest um Win XP.

    Vê os comentários à frente:

    tunctl -t tap1 -u dpsilva

    brctl addbr br0

    ifconfig eth0 0.0.0.0 promisc
    # Porquê 0.0.0.0 ?

    # Neste momento fico sem rede no host!

    # Associamos a nossa placa de rede com a bridge:
    brctl addif br0 eth0

    # Este é o IP que vai ficar no host ou no guest??
    ifconfig br0 194.117.29.135

    brctl addif br0 tap1
    ifconfig tap1 up
    chmod 0666 /dev/net/tun

    Há alguma forma de testar a conexão que criei (”tap1″) sem ser pelo sistema guest no VirtualBox?

  2. tuxpower

    O “ifconfig br0 194.117.29.135″ atribui um IP fixo à nossa bridge com a interface eth0 e passa assim a ser o IP da máquina host. Para testar a interface tap1 basta atribuir-lhe um ip. Eu uso esta configuração no linux e nunca tive problema….

  3. Daniel

    Como disse, depois de executar o “ifconfig eth0 0.0.0.0 promisc”, fico sem rede no host (”Network is unreachable”)

    Envio-vos o output do comando ifconfig, antes e depois de executar a script, pode ser que ajude a descobrir o problema…

    ANTES:

    eth0 Link encap:Ethernet HWaddr 00:0b:6a:95:c8:aa
    inet addr:194.117.29.135 Bcast:194.117.29.255 Mask:255.255.255.0
    inet6 addr: fe80::20b:6aff:fe95:c8aa/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:779 errors:0 dropped:0 overruns:0 frame:0
    TX packets:620 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:469370 (458.3 KB) TX bytes:118771 (115.9 KB)
    Interrupt:18 Base address:0xcc00

    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1/128 Scope:Host
    UP LOOPBACK RUNNING MTU:16436 Metric:1
    RX packets:896 errors:0 dropped:0 overruns:0 frame:0
    TX packets:896 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:44800 (43.7 KB) TX bytes:44800 (43.7 KB)

    DEPOIS:

    br0 Link encap:Ethernet HWaddr 00:0b:6a:95:c8:aa
    inet addr:194.117.29.135 Bcast:194.117.29.255 Mask:255.255.255.0
    inet6 addr: fe80::20b:6aff:fe95:c8aa/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:12 errors:0 dropped:0 overruns:0 frame:0
    TX packets:29 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:1002 (1002.0 B) TX bytes:4322 (4.2 KB)

    eth0 Link encap:Ethernet HWaddr 00:0b:6a:95:c8:aa
    inet6 addr: fe80::20b:6aff:fe95:c8aa/64 Scope:Link
    UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
    RX packets:857 errors:0 dropped:0 overruns:0 frame:0
    TX packets:627 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:476362 (465.1 KB) TX bytes:120995 (118.1 KB)
    Interrupt:18 Base address:0xcc00

    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1/128 Scope:Host
    UP LOOPBACK RUNNING MTU:16436 Metric:1
    RX packets:896 errors:0 dropped:0 overruns:0 frame:0
    TX packets:896 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:44800 (43.7 KB) TX bytes:44800 (43.7 KB)

    tap1 Link encap:Ethernet HWaddr 00:ff:e3:03:a5:fc
    inet6 addr: fe80::2ff:e3ff:fe03:a5fc/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:8 overruns:0 carrier:0
    collisions:0 txqueuelen:500
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Subscribe to comments feed (this is global, not just for this entry)

Categorias