GNS3
Introducción
Instalación
Actualizamos los repositorios e instalamos las actualizaciones disponibles del sistema.
sudo apt update -y && sudo apt upgrade -y
Instalamos las dependencias necesarias para GNS3, incluyendo Python, herramientas de virtualización (KVM, QEMU, libvirt), bibliotecas adicionales (PyQt5, Dynamips)
sudo apt install python3 python3-pip pipx python3-pyqt5 python3-pyqt5.qtwebsockets python3-pyqt5.qtsvg qemu-kvm qemu-utils libvirt-clients libvirt-daemon-system virtinst dynamips software-properties-common ca-certificates curl gnupg2 bridge-utils virt-manager libvirt-daemon -y
Habilitamos y arrancamos el servicio de virtualización libvirtd y nos añadimos al grupo “libvirt” para otorgarle permisos sobre las máquinas virtuales y redes de KVM .
sudo systemctl enable --now libvirtd && sudo usermod -aG libvirt $(whoami)
Instalamos las aplicaciones principales de GNS3, esto es:
el servidor - gns3-server
la interfaz gráfica - gns3-gui
Utilizamos pipx
(herramienta de Python) para instalar y ejecutar aplicaciones de Python empaquetadas como scripts ejecutables (CLI):
pipx install gns3-server && pipx install gns3-gui
Aseguramos que el directorio de binarios de pipx esté en la variable de entorno PATH para que los comandos de GNS3 sean accesibles globalmente desde cualquier terminal.
pipx ensurepath
Insertamos el paquete PyQt5
en el entorno de gns3-gui, para asegurarnos que tenga todas las dependencias necesarias. Este paquete es un conjunto de enlaces de Python para la biblioteca Qt
, que es un framework multiplataforma para el desarrollo de interfaces gráficas de usuario (GUI).
pipx inject gns3-gui gns3-server PyQt5
Iniciamos la red por defecto de KVM y la configuraremos para que se inicie de manera automática.
virsh --connect=qemu:///system net-start default
virsh --connect=qemu:///system net-autostart default
Reiniciamos el sistema para aplicar los cambios, como la configuración de grupos y PATH.
sudo reboot
Ahora si estamos en condiciones de iniciar gns3:
gns3 &
Ubridge
Se trata de un componente esencial de GNS3 que se ejecuta como root
para permitir la inyección de paquetes en la interfaz de red. Cuando se ejecuta como root, representa un riesgo de escalada de privilegios. En Linux y Windows, el acceso a la red es limitado, pero en OS X, ubridge tiene acceso total.
Este componente permite interconectar redes del entorno virtual de GNS3 con redes externas o con otros tipos de nodos dentro del mismo proyecto, especialmente cuando estamos usando contenedores, máquinas virtuales o dispositivos que no están en la misma red interna. ubridge
permite:
Conectar interfaces del host con GNS3.
Enlazar redes entre diferentes tipos de nodos, como:
dispositivos emulados por QEMU/KVM
contenedores Docker
máquinas virtuales
switches genéricos
y conexiones a la red física.
Instalación
Primero vamos a clonar el repositorio de ubridge desde GitHub
git clone https://github.com/GNS3/ubridge.git
Nos dirigimos al directorio donde tenemos el proyecto recién clonado
cd ubridge/
Y compilamos el código fuente e instalamos el binario en el sistema
make
sudo make install
Ahora asignamos permisos de ejecución al archivo binario de ubridge
chmod +x ubridge
Copiamos el archivo binario a “/usr/local/bin”, para que esté disponible de modo global en el sistema
cp -p ubridge /usr/local/bin
Configuramos permisos especiales para ubridge, permitiéndole acceso a operaciones de red (cap_net_admin) y envío de paquetes en bruto (cap_net_raw), necesarias para su funcionamiento.
sudo setcap cap_net_admin,cap_net_raw=ep /usr/local/bin/ubridge
En entorno virtual
En nuestro caso haremos la instalación de GNS3 como VM en VMWare Workstation. Para ello, nos descargamos la OVA correspondiente desde la página oficial:
Y una vez tengamos la OVA, la importamos como una VM:
Debemos tener en cuenta que la VM viene con dos adaptadores de red:
adaptador de red 1: Host-only
adaptador de red 2: NAT
Una vez la VM está funcionando lo que vamos a ver es algo como la siguiente imagen:
Imágenes
Run appliances in a VM *
Links
Cisco - imágenes de dispositivos
https://www.youtube.com/watch?v=Ibe3hgP8gCA&list=PLhfrWIlLOoKNFP_e5xcx5e2GDJIgk3ep6 *
Instalación en Linux y específicamente en Debian 12
Last updated
Was this helpful?