domingo, mayo 03, 2009

GNS3, el regreso!!!

Ultimamente he estado algo ocupado con un cursillo sobre MacroLAN y los módulos de preparación 1 y 2 del CCNA, pero a pesar de esto he conseguido algo de tiempo y voy a explicar como lograr meter nuestro host junto con varias máquinas virtuales en una nube del GNS3 [1].

Con esto lograremos emular todos los escenarios de red que desemos.

Primero habrá que compilar el kernel con la siguiente opción activada:
Networking Support --> Networking Options --> 802.1d Ethernet Bridging

Tambien tenemos que instalar las utilidades necesarias:
apt-get install uml-utils bridge-utils

Ahora ya podemos empezar la configuración.

Creamos un bridge virtual:
brctl addbr br0

Comprobamos que realmente se ha creado:
ip a

Lo habilitamos:
ip l s dev br0 up

Comprobamos que está habilitado, en br0: :
ip a

Creamos la interfaz Tap que se conectará al bridge:
tunctl -t tap0 -u root

La habilitamos:
ip l s dev tap0 up

Ponemos Tap0 y Eth0 en el mismo bridge:
brctl addif br0 tap0
brctl addif br0 eth0

Comprobamos que estan en el bridge:
brctl show br0
bridge name bridge id STP enabled interfaces
br0 8000.002219ddca5c no eth0
tap0

Desconfiguramos la interfaz Eth0 y la ponemos en modo promiscuo:
ifconfig eth0 0.0.0.0 promisc

Configuramos el bridge con la ip de nuestro equipo:
ip a a 192.168.1.11/24 dev br0
ip r a default via 192.168.1.1


En la configuración de la nube:
NIO TAP
TAP Interface: tap0

Si queremos conectar máquinas virtuales como por ejemplo haciendo uso de VmWare o VirtualBox se puede hacer configurando la interfaz en modo bridged a la interfaz tap0, con esto lograremos que tanto nuestro host, el router conectado a la nube y las máquinas virtuales se puedan ver entre ellas.

He realizado un pequeño Script que nos ayudará a realizar la configuración de forma automática.

Yo personalmente empleo la interfaz Eth0 para meterla dentro del bridge con la Tap0, así consigo comunicarme con las máquinas virtuales por la Eth0 y por la inalámbrica accedo a Inet ;)

PD: ConchiWorld con este sistema las máquinas virtuales pueden ver al host anfitrión sin necesidad de link en la interfaz, ya que se realiza la comunicación a través de la interfaz virtual Tap0.

No hay comentarios: