VirtualBox é um emulador de PCs,e assim como o VMware é capaz de criar máquinas virtuais que permitem rodar N sistemas operacionais ao mesmo tempo. A diferença entre os dois é que o VirtualBox é livre (possui versão paga) , e o vmware é totalmente fechado e caro. Ok, podem me chamar de traidor do movimento, mas o VMware comanda, em todos os sentidos ele é melhor que o VirtualBox, por isso sou beta tester e não pago por ele :P

O grande problema do VirtualBox é a dificuldade de se fazer coisas simples, como configurar uma Bridge entre o sistema real e o virtual, enquanto no vmware ou parallels tudo é ridiculamente simples, no virtualbox chega quase a ser um parto, duvida ?

O sistema usado para os testes foi o debian lenny , segue a instalação dos pacotes de bridge, estou assumindo que o seu virtualbox já está rolando :


apt-get install bridge-utils iproute iptables

Use os seguintes comando no terminal para ativar o bridge :


# Configurando a interface virtual Tap1
tunctl -t tap1 -u
ip link set up dev tap1

No campo coloque o nome do usuário que vai fazer a ponte.


# Criando a ponte
brctl addbr br0
brctl addif br0 tap1

Finalmente arrumando os IPs:


# set the IP address and routing
ip link set up dev br0
ip addr add 10.1.1.1/24 dev br0
ip route add 10.1.1.0/24 dev br0

O IP 10.1.1.1 é o ip do Host que a máquina virtual vai usar como gateway, ou seja, sua máquina virtual vai ter que usar um ip da mesma rede do gateway.

Agora o mais divertido, configurando o iptables para rotear uma porta da máquina virtual para a máquina real :

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 8080 -j DNAT --to 10.1.1.2:8080
iptables -A FORWARD -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 8080 -j ACCEPT

No lugar de xxx.xxx.xx.xxx.xxx use o IP da sua máquina real. Agora a porta 8080 da máquina virtual é acessível de fora, ou seja da porta 8080 máquina real

Pra finalizar, você deve configurar o seu VirtualBox para usar uma Host Interface nas configurações de rede, o Device a ser usado deve ser a tap1, e mais uma coxisse que deve ser corrigida, as permissões dos devices que o VirtualBox usa :


chmod 666 /dev/vboxdrv /dev/net/tun

Sem isso nada vai funcionar, alias o programa vai dar um erro -3100, mensagem nada intuitiva.

Na boa, VirtualBox é um programa muito mal acabado, sua interface aparentemente simples esconde verdadeiras armadilhas para um usuário comum ou alguém com pouco tempo livre para pesquisar em fóruns por soluções. Eu gastei umas duas horas lendo a documentação oficial em PDF e só perdi meu tempo. Apesar de tudo ele tem um desempenho decente, mas como disse, não é um software pronto, e com concorrentes como vmware e parallels sua viabilidade economica está correndo perigo.

E viva o qemu !!!

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks