Main Menu
Home
Links
Artigos
Dicas
Fotos
Carros
Mapa
VirtualBox - Criando uma conexão Bridge PDF Print E-mail

Depois de termos baixado, instalado e criado uma máquina virtual usando o VirtualBox, chegou a hora de criarmos uma conexão do tipo bridge, que nos possibilitará trocar informações com nossa máquina virtual, melhor, vai nos ajudar a usar melhor os serviços que estão instalados na VM e estávamos impossibilitados de usar.

 Não entendeu? Vamos dar um exemplo:

 Imaginemos que você queria usar o Active Directory do Windows Server que está instalado na sua VM. Com a conexão padrão do VirtualBox (uso de DHCP) você não consegue manter um "diálogo" com sua VM. Ou seja, é uma via de uma mão só.

VM -> HOST -> INTERNET 

  Sample Image

 Já usando uma brigde, nós, literalmente, contruimos uma ponte e podemos ir e voltar. E usando NAT, podemos fazer nossa VM se comunicar com o mundo externo.

 Sample Image

Agora chega de desenhos e firulas, vamos ao que interessa. 

 

Para fazer a conexão bridge, precisamos de alguns pacotes extras, no caso do Ubuntu são:

  • bridge-utils
  • uml-utilities (User Mode Linux)


Para instalar estes dois pacotes, basta como root executar:

#apt-get install bridge-utils uml-utilities

Agora, configurando uma bridge. Ah, melhor, vou falar como estão as interfaces de rede no meu computador:

  • 1 interface (eth0) Realtek (módulo r8169) 
  • 1 interface (eth1) IPW3945 Wireless (módulo ipw3945)


Vou usar a interface eth0 para fazer a bridge e ainda vou usar a interface eth1 como ponto de saída para o NAT.

Passos (como root): 

  1. tunctl -t tap1 -u jragomes (dizemos que vamos criar uma interface virtual (TAP) e esta será usada pelo usuário jragomes, o usuário que rodará a VM).
  2.  brctl addbr br0 (criamos uma bridge)
  3. ifconfig eth0 0.0.0.0 promisc (colocamos a interface em modo de promiscuidade, que aceita frames de outros endereços MAC)
  4. brctl addif br0 eth0 (adicionamos a interface à bridge)
  5. dhclient br0/ifconfig br0 192.168.0.10 (aqui nós podemos usar um IP dinâmico - dhcp, ou podemos configurar estaticamente, no meu caso foi estaticamente)
  6. brctl addif br0 tap1 (adicionamos a interface virtual para a bridge)
  7. ifconfig tap1 up (levantamos nossa interface virtual, que responderá na VM)

Para configurar a VM precisamos dizer que ao invés de uma interface automática, vamos usar uma TAP (interface virtual), seguindo os passos:

  • Abrir o VirtualBox
  • Nas preferências da sua VM clicar em Network
  • Habilitar a  rede
  • Selecionar "Host Interface" como interface de comunicação
  • Setar o nome da interface como tap1 (a interface virtual que criamos acima)

Sample Image

Quando você inicializar sua VM, provavelmente dará um erro referente as permissões em /dev/net/tun, para resolver isso temos duas opções:

- chmod 666 /dev/net/tun
- chown root:vboxusers /dev/net/tun

 E o NAT??

Para fazer NAT podemos usar qualquer script que encontramos na internet e temos que setar um outro endereço para nossa interface física. Eu peguei minha interface que se conecta à internet e fiz:  ifconfig eth1:1 192.168.0.50.  No meu script de NAT, a minha saída WAN ficou sendo a eth1 e a LAN a eth0 (a interface que usamos no tap1).

Interessante, não? Para finalizar, quando estivermos na nossa VM, devemos setar o IP dela no range 192.168.0.X (não pode ser, no meu caso, .10 - pois é o endereço da interface tap1, e nem .50 - que é a interface eth1:1).

Minhas configurações ficaram assim:

- eth1:1 - 192.168.1.50
- tap1 - 192.168.1.10
- endereço de IP dentro da minha VM - 192.168.1.20
- gateway de saída para internet da minha VM  - 192.168.1.10 (endereço da tap1)

  Para automatizar tudo, podemos fazer um script, que rodaremos antes de inicializar a VM:

!#/bin/bash

chown root:vboxusers /dev/net/tun
tunctl -t tap1 -u jragomes
 brctl addbr br0
 ifconfig eth0 0.0.0.0 promisc
 brctl addif br0 eth0
ifconfig br0 192.168.0.10
 brctl addif br0 tap1
 ifconfig tap1 up
 ifconfig eth1:1 192.168.0.50