Oct 05 2021
Un Enrutador Virtual de Cisco en su Red
Dynamips y dynagen le permiten crear un enrutador Cisco virtual en un entorno Linux. ¿No sería aún mejor si este enrutador estuviera conectado a la LAN local? Yendo más allá, este mismo enrutador podría conectarse a otros enrutadores virtuales formando un laboratorio completo.
Descarga e instalación
Descarga dynamips y dynagen en sourceforge.net. Tenga en cuenta que la última versión de Dynagen requiere Dynamips 0.2.8-RC2.
Ambos programas se entregan como paquetes RPM para Redhat / Fedora.
En otras distribuciones de Linux como Debian o Ubuntu, Dynagen solo está disponible como un archivo del que puede extraer archivos binarios. Luego, solo apunte un enlace simbólico a dynagen desde /usr/local/bin, por ejemplo. En cuanto a Dynamips, debe extraerse de las rpm. También se puede descargar de netexpertise.eu.
Tenga en cuenta que dynamips puede devolver un error como este:
[root@cisco_host]$ dynamips -h
dynamips: error while loading shared libraries: libpcap.so.0.9:
cannot open shared object file: No such file or directory
[root@cisco_host]$ ln -s /usr/lib/libpcap.so.0.9.8 /usr/lib/libpcap.so.0.9
Un enlace simbólico es suficiente para apuntar a la biblioteca correcta.
Instalación de Herramientas de Red
Serán necesarias las siguientes 2 herramientas:
– brctl del paquete bridge-utils (en la mayoría de las distribuciones de Linux) – para crear un puente
– rpmfind tunctl para Redhat / Fedora y uml-utilities para Debian / Ubuntu – para crear una interfaz tap. Esto no es absolutamente necesario ya que Dynagen puede crear su propia interfaz por sí mismo, pero es muy útil.
Creación del puente y conexión a la red
El puente br0 constará de la interfaz eth1 conectada a la LAN y tap0 vinculada al enrutador Cisco. 192.168.0.100 es la dirección del host de Linux.
[root @ cisco_host] $ brctl addbr br0
[root @ cisco_host] $ ifconfig br0 up
[root @ cisco_host] $ ifconfig eth1 0.0.0.0
[root @ cisco_host] $ brctl addif br0 eth1
[root @ cisco_host] $ ifconfig br0 192.168.0.100 máscara de red 255.255.255.0 hasta
Archivo de Configuración del Enrutador Virtual de Cisco
Cree el siguiente archivo de configuración de Dynagen. Tendrá que copiar su propia imagen de Cisco en el servidor, ya que, por supuesto, es propietario. Aquí es donde hacemos el enlace entre la interfaz de Cisco f0/0 y tap0.
[localhost]
workingdir = /tmp
[[ 7200 ]]
image = /root/c7200-js-mz.124-3.bin
ram = 128
idlepc = 0x6082c30c
[[ router R1 ]]
console = 2001
f0/0 = NIO_tap:tap0
Sugiero echar un vistazo al tutorial Dynagen para establecer el mejor valor para idlepc para no consumir todos los recursos de CPU de la máquina. Luego podemos lanzar el hipervisor Dynamips así como Dynagen para ejecutar el enrutador virtual.
[root@cisco_host]$ dynamips -H 7200&
[1] 2347
[root@cisco_host]$ Cisco Router Simulation Platform (version 0.2.8-RC2-x86)
Copyright (c) 2005-2007 Christophe Fillot.
Build date: Apr 20 2008 12:25:53
Hypervisor TCP control server started (port 7200).
[root@cisco_host]$ dynagen router.net
Reading configuration file...
Shutdown in progress...
Shutdown completed.
Network successfully loaded
Dynagen management console for Dynamips and Pemuwrapper 0.11.0
Copyright (c) 2005-2007 Greg Anuzelli, contributions Pavel Skovajsa
=>
Agregar el Enrutador Cisco al Puente
tap0 fue creado por Dynagen y ahora se puede activar y agregar al puente.
[root@cisco_host]$ brctl addif br0 tap0
[root@cisco_host]$ ifconfig tap0 up
Conexión al Enrutador
Conéctese al enrutador por telnet en el puerto 2001 – como se definió anteriormente en el archivo de configuración – y juegue con la consola como si estuviera en un enrutador Cisco real y su IOS.
[root@cisco_host]$ telnet localhost 2001
router>enable
router#show interface summary
*: interface is up
IHQ: pkts in input hold queue IQD: pkts dropped from input queue
OHQ: pkts in output hold queue OQD: pkts dropped from output queue
RXBS: rx rate (bits/sec) RXPS: rx rate (pkts/sec)
TXBS: tx rate (bits/sec) TXPS: tx rate (pkts/sec)
TRTL: throttle count
Interface IHQ IQD OHQ OQD RXBS RXPS TXBS TXPS TRTL
------------------------------------------------------------------------
* FastEthernet0/0 0 0 0 0 0 0 0 0 0
FastEthernet0/1 0 0 0 0 0 0 0 0 0
NOTE:No separate counters are maintained for subinterfaces
Hence Details of subinterface are not shown
router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
router(config)#int fa0/0
router(config-if)#ip address 192.168.0.101 255.255.255.0
router(config-if)#no shutdown
router(config-if)#end
router#
router#ping 192.168.0.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/11/16 ms
router#ping 192.168.0.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.100, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 4/20/36 ms
192.168.0.1 es la puerta de enlace o cualquier hardware en la LAN.
Ahora puede virtualizar tantos enrutadores Cisco como desee, dentro de los límites de los recursos de su máquina.