GNS3, IOU, VirtualBox Y Wireshark

En ocasiones anteriores habréis visto como genero y administro redes virtuales privadas con sistemas operativos virtualizados, al igual que también lo hago con algunos Switch Cisco. Lo que me gustaría hoy es explicar como instalar y configurar un entorno como tal.

Para empezar descargaremos GNS3 desde aquí y posteriormente Virtualbox desde aquí, eligiendo los binarios correspondientes para nuestro S.O, también descagaremos Wireshark, aunque en este caso es prescindible, viene muy bien para cuando querramos realizar una captura de paquetes en un enlace virtual, como cuando capturamos paquetes ICMP para comprobar el correcto funcionamiento de las VLAN, así que si no lo tenemos instalado, al instalar GNS3 nos dará la opción de hacerlo. Una vez instalados los programas a golpe de Next Next, pasaremos a configurar GNS3: Al abrirlo nos saldrá el asistente de configuración inicial, lo primero que haremos será seleccionar la primera opción, “Local GNS3 VM”, ya que luego instalaremos la maquina virtual de GNS3.

1
Imagen 1. Selección del tipo de servidor donde correran las simulaciones de la red.

Al hacer clic en “Next>” nos saldrá la ventana de la Imagen 3, y seleccionaremos la opción de VirtualBox para el software de virtualización, después nos saldrá el error de la Imagen 2, debido a que GNS3 no encuentra ninguna maquina virtual con el nombre ‘GNS3 VM’

El pase de diapositivas requiere JavaScript.

En la imagen 3, vemos que justo arriba de la lista desplegable, donde se seleccionará la maquina virtual, hay un texto que pone: “If you don’t have the GNS3 Virtual Machine you can download it here“. Haremos clic en el enlace y descagaremos la maquina virtual.

Se nos descargará un archivo zip, que contendrá un .ova ( Open Virtualization Archive) el cual contiene la maquina Virtual, que si hacemos doble clic en él, lo que haremos será iniciar el proceso de importación de la maquina a nuestro VirtualBox, entonces nos aparecerá la ventana de la imagen 4, donde podremos seleccionar los diferentes parámetros a configurar antes de la importación.

5.png
Imagen 4. Configuración preimportación de servicio virtualizado.

Yo lo único que haré será cambiar la ubicación de las imágenes de los discos virtuales, aunque esto es baladí, después haremos clic en importar y esperaremos a que termine la susodicha acción. Una vez terminada la importación volveremos a la ventana de GNS3 y presionaremos al lado del desplegable de selección de las VMs el botón “Refresh”, y entonces elegiremos la maquina ‘GNS3 VM’.

Por defecto GNS3 elige la mitad de nuestra RAM y la mitad de los procesadores lógicos para la maquina virtual, pero podremos modificar estos parámetros a nuestro gusto.

Ojo, es posible que aquí nos salga el error de la imagen 5. Para corregirlo debemos activar el servicio DHCP interno en las redes solo-anfitrión (host-only), para ello vamos a la configuración de VirtualBox: Archivo –> Preferencias –> Red –> Redes solo-anfitrión –> Seleccionamos la que nos aparezca de lista y hacemos clic en el destornillador que nos aparece en la parte derecha (Imagen 6).

El pase de diapositivas requiere JavaScript.

Después nos aparecerá una ventana con el direccionamiento IP del adaptador, y tendremos otra pestaña llamada: “Servidor DHCP”, así que haremos clic allí y habilitaremos el servidor. En los campos inferiores deberemos poner la IP y la máscara de red del servidor, es decir los datos que vemos en la pestaña “Adaptador”, y tendremos que establecer un pool dhcp, por ejemplo:

  • Limite inferior de direcciones 169.254.94.158
  • Limite superior de direcciones 169.254.94.254
sin-titulo3
Imagen 7. Servidor DHCP en red host-only

Una vez hecho esto podremos volver a intentar el paso anterior en GNS3.

Si nos saliese el mismo fallo, deberíamos fijarnos que el nombre del adaptador que nos aparece en el mensaje de error sea igual que el que nos aparece en VirtualBox, en la pestaña “Redes solo-anfitrión” (imagen 6). Fijaros que el mensaje de error me dice que  el adaptador se llama ‘vboxnet0’ (imagen 5), pero mi adaptador se llama ‘Virtalbox Host-Only Ethernet Adapter #3’.  En cierta medida es curioso ya que si vamos a la configuración de la maquina virtual y entramos en la configuración de la red, veremos que el Adaptador 1, donde esta el host-only, se llama como ‘Virtalbox Host-Only Ethernet Adapter #3’, pero a pesar de ello parece que sigue utilizando ‘vboxnet0’. Para corregir esto simplemente deshabilitamos el adaptador, aceptamos, entramos y lo volvemos a habilitar seleccionando el adaptador que hemos configurando antes, en mi caso: ‘Virtalbox Host-Only Ethernet Adapter #3’.

Una vez hecho lo anterior nos debería funcionar sin problemas, así que si damos clic en “Next>”, veremos como se arranca la maquina virtual.

En la siguiente ventana que aparece seleccionaremos las siguientes opciones:

12
Imagen 8. Selección de IOU y VirtualBox Machines

De esta forma añadiremos en los siguientes pasos los archivos binarios de un Switch de capa 2, o capa 3, además de añadir maquinas virtuales de VirtualBox. Al hacer clic en “Finish”, nos saldrá la ventana siguiente, en la que simplemente haremos clic en “Next>”, ya que efectivamente vamos a ejecutar el binario de IOS (Internetwork Operating System) sobre GNS3 VM.

sin-titulo4
Imagen 9. Ejecución de IOU en GNS3 VM.

Hacemos clic en “Next>” y continuamos. El siguiente paso es establecer el nombre del dispositivo IOU, y elegir los binarios del Switch.

l2
Imagen 10. selección de los binarios del Switch.

A continuación saltará la ventana para agregar maquinas virtuales de VirtualBox, podemos seleccionar cuantas queramos. Si después de este paso quisiéramos añadir más maquinas virtuales, desde las preferencias de GNS3, podríamos añadir nuevas maquinas virtuales.

selecvms
Imagen 11. Selección de maquinas virtuales.

Una vez hecho esto, desde GNS3, en la parte izquierda, si hacemos clic en el botón que nos muestra todos los dispositivos, podremos arrastrar al área de trabajo el Switch L2, y luego darle clic derecho y  “Start”, pero veremos un fallo en la consola inferior que dice:

Server error from http://169.254.94.158:3080: IOU1: Could not find an iourc file (IOU license)

Para poder ejecutar un dispositivo IOU, necesitamos generar una licencia, esto lo haremos con un script escrito en Python que podemos encontrar fácilmente en un par de búsquedas de Google (CiscoIOUkeygen.py). Una vez tengamos el archivo tendremos que dejarlo en el home del usuario GNS3, dentro de la maquina virtual ‘GNS3 VM’, después debemos darle permisos de ejecución con algo como chmod 755, ejecutar el script que nos dará como salida nuestro numero de licencia, y que como veremos en la propia salida de dicho script, nos indicará que debemos ponerlo en un fichero, en el home del usuario GNS3 con el nombre iourc.

Cuando encontremos el archivo (CiscoIOUkeygen.py) podremos pasarlo a la maquina virtual de varias formas, una de ellas es utilizando la web que tiene disponible la propia maquina virtual. Si en el navegador escribimos la dirección IP de la misma con el puerto 3080, nos aparecerá una web en la que podremos pasar archivos directamente a la VM.

captura
Imagen 12. Acceso a la web de la VM por el puerto 3080.

Si tuviésemos algún problema con este método, o bien por que no conseguimos de alguna forma acceder a la web, o por que nos da algún error al subir el archivo, podemos pasar el archivo por SSH, o de manera más gráfica podemos hacerlo desde Windows con WINSCP, por ejemplo, que podremos descargar desde aquí.

Cuando hallamos generado la licencia con el script en Python,  debería quedarnos un fichero tal que así:

[license]
 gns3vm = **numerolicencia**;

Entonces es cuando debemos pasarlo también a nuestro equipo, ya que tendremos cargarlo desde GNS3 también. Cuando lo tengamos, iremos a las preferencias de GNS3, haremos clic en “IOS on UNIX” , y buscaremos la ruta donde está el archivo IOURC y lo seleccionaremos.

sin-titulo5
Imagen 13. Archivo IOURC.

Si después hacemos clic derecho sobre el dispositivo Switch L2 y lo iniciamos, veremos que este iniciará sin mayor problema.

22
Imagen 14. Switch L2 iniciado.

De esta forma tendríamos nuestro Switch virtualizado sobre una maquina virtual Linux. Si hacemos doble clic sobre él podremos entrar en la consola y pasar a configurarlo.

23
Imagen 15. Consola del Switch L2.

Con las maquinas virtuales haremos básicamente lo mismo, arrastraremos desde el lado izquierdo al área de trabajo de GNS3 , hacemos clic derecho y “Start”, de esta forma se arrancaran las maquinas virtuales.

En el siguiente ejemplo e iniciado una maquina virtual Debian y otra con Kali Linux. Si cuando instalamos GNS3 no desmarcamos el check de instalar Wireshark y Pcap, entonces al hacer clic derecho sobre uno de los enlaces virtuales, podremos ver “Start capture”, si hacemos click en el, nos preguntará en que interfaz del enlace queremos iniciar el sniff, seleccionamos el que queramos y se iniciara la captura.

sin-titulo
Imagen 16. Inicio de captura de paquetes con Wireshark.

Ahora ya tenemos una red virtual básica completamente funcional, lógicamente podriamos añadir un binario de un Router, o correr un binario de un Switch de capa 3 sobre GNS3 VM, para simular un Router.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s