class main AboutMe { exec(); }
Com a virtualização dos sistemas à força toda, gostava que me dessem um nome de um administrador de sistemas que não usou pelo menos uma aplicação de virtualização! Apesar de não ser apologista de servidores virtuais e blades (ok, mesmo com a redundância, mesmo com tudo para dividir as coisas, continuo a achar que é apenas um equipamento para vários servidores...) uso bastante o Virtualbox para testar e analisar antes de colocar em ambientes de produção.
O problema com a virtualização (tirando a sua própria existência) é a ligação à rede. Existem vários esquemas que permitem dar conectividade ao guest (computador virtual que corre dentro do computador físico) tal como NAT e Bridge. O primeiro faz uma translação de IP entre o guest e o host. Uma coisa simples, tal como acontece numa verdadeira rede interna. A segunda virtualiza uma placa de rede tal como se fosse física através de uma bridge no computador Host. Criam-se assim túneis tipo VPN entre a bridge e as placas de rede virtuais.
Existem vários tutoriais na net que explicam como montar uma rede virtual com bridge em virtualbox, mas nada melhor que o próprio manual.
Aqui, a ideia é como ligar a rede virtual (Host + guest) a um computador que tem um IP diferente do resto da rede. Tendo em conta o seguinte gráfico, vamos assumir que os routers não estão a fazer packet filtering ao IP, logo fazem a comutação de qualquer IP da rede interna para qualquer porto.

Diagrama da rede

Para complicar, todas as VM estão dentro da rede 10.10.10.0/24. O host também está nesta gama de IP's, mas tem uma bridge com 3 túneis para cada uma das VM (tap0,tap1,tap2). Todas as VM obtem o seu IP via DHCP, logo os DNS e Gateway são fornecidos pela rede (neste caso Active Directory).

Pode parece estranho, mas a forma mais simples é simplesmente adicionar um IP virtual à bridge e colocar à mão as rotas nas VM....

E como fazer isso?

root@hostfisico:~# ifconfig br0:0 192.168.1.100 broadcast 192.168.1.255 netmask 255.255.255.0


root@hostfisico:~# ifconfig
br0 Link encap:Ethernet HWaddr 00:1c:c0:3a:10:f6
inet addr:10.10.10.203 Bcast:10.10.10.255 Mask:255.255.255.0
inet6 addr: fe80::21c:c0ff:fe3a:10f6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3893329 errors:0 dropped:0 overruns:0 frame:0
TX packets:1680788 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3638037469 (3.6 GB) TX bytes:252192179 (252.1 MB)

br0:0 Link encap:Ethernet HWaddr 00:1c:c0:3a:10:f6
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
[...]

Verificar a conectividade do host com o pc isolado da rede:

root@hostfisico:~# ping -c 1 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=1.99 ms

--- 192.168.1.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.994/1.994/1.994/0.000 ms


Vamos agora adicionar a respectiva rota numa das Virtual Machine. (O ip 10.10.10.203 corresponde ao IP da bridge no host)

root@hostvirtual:~# route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.10.10.203

Mas ao tentar pingar o 192.168.1.1 a VM continua sem conseguir encontrar o caminho. Para resolver este último problema, vamos activar o masquerading no host apenas para o IP da VM que queremos dar acesso.

root@hostfisico:~# echo 1 > /proc/sys/net/ipv4/ip_forward

Em Ubuntu 8.10, deverá editar o /etc/sysctl.conf, encontrar a linha onde diz net.ipv4.ip_forward=1 e tirar o comentário (#).
Em outras distribuições, este ficheiro não existe, por isso talvez possam tentar a vossa sorte no ficheiro /etc/network/options e adicionar o seguinte texto: ip_forward=yes.

Para terminar, vamos configurar o Iptables de forma a que possa fazer NAT do IP da VM para a rede 10.10.10.0/24.

root@hostfisico:~# iptables -t nat -A POSTROUTING -s 10.10.10.204 -o br0 -j MASQUERADE

E finalmente testar a conectividade da virtual machine com o equipamento de rede isolado.

root@hostvirtual:~# ping -c 1 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=4.13 ms

--- 192.168.1.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 4.138/4.138/4.138/0.000 ms


Et voilà! Tás a ver leitor curioso que andas aflito com trabalhos para a faculdade. Tens um trabalho de feito para a disciplina de redes :P (Adiciona uma conclusão e uma introdução com estilo, que vais ver como tiras 20).
Sem comentário, seja o primeiro! | Publicado por Ruben Alves @ 07/01/09 21:19
Escrever um comentário ao texto: "Redes.virtuais.virtualbox.com"
Nome*:
E-mail*:
Página web
(não obrigatório):
"Quanto dá dez mais Catorze"
(Resposta: 20,22 ou 24?)*:
Mensagem*:


  ÚLTIMO MÊS: Agosto 2011

  Sobre.Pessoas.pt (21/08/11)
  Pensamento.dia.em.pleno.Agosto.pt (18/08/11)
  E foi assim que... (18/08/11)
  Julho.em.Imagens.2011 (18/08/11)

  TEXTOS EM ALTA!

  iPhone5 - my predictions.com (07/03/11)
  parvo.que.sou.pt (22/02/11)
  2G,3G,4G e agora 5G! (08/02/11)
  Novo.Projecto:Pedra-alta.com (01/02/11)
  website.updates-status-v1.pt (30/01/11)



FOTOGRAFIA ALEATÓRIA: Momento Chocolate

Momento Chocolate

Ruben... Quem sou? Nascido em Novembro de 1980, Sagitáriano puro e duro com ascendente Aquário. Sou canhoto, adoro arte, computadores, fotografia, redes, programação, design, música. Odeio futebol, bacalhau e injustiça.

Neste momento sou um Jovem de 30 anos, curioso pela vida, curioso por tudo o que mexe, tudo que respira, que faça ruídos. Encanto-me facilmente com uma gota de água a bater no vidro mas não fico impressionado com um Ferrari. Gosto das coisas simples da vida, um olhar, um sorriso, um simples gesto. Adoro amar, como gosto de ser amado. Não troco o meu leitor DVD por uma PlayStation, no entanto trocaria um filme por uma bela fotografia.

Não sou complexo, apenas perplexo... tudo depende do ponto de vista.

[...] Farto de escrever... | pausa II

~~~


No meio de tudo isto, tenho este lugar cibernético. Um recanto pontualmente actualizado, apontado como um blog, mantenho a minha ideia que antes de ter esta pretensão, considero que é antes de mais nada um simples sítio web onde escrevo, descrevo, apresento, coloco perguntas, dúvidas e afirmações. Com os textos, coabitem vários espaços representativos do meu Espaço.

Talvez seja o lugar mais sensato para me conhecer... Ou pelo menos, iniciar-se nesta longa viagem que é o meu Ser...
[...] Farto de escrever..| stop .

Correio.electrónico:
mail AT ruben-alves PONTO com

Telefone:
919.181.***

A minha Página no Twitter.


creative commons