Gns3 + patched qemu 0.15.0 + debian wheezy/sid

Qemu 0.15.0 is in unstable now and I have to patch it to emulate normally Cisco ASA 8.0(X) with Gns3, you have to do it also if you want emulate Juniper routers. This patch is necessary for UDP tunnels and multicast. I wrote this post to help debian users to achieve it.

Update your sources.list by adding a deb-src repository, for example here is my /etc/apt/sources.list:

deb http://mirror.malagasy.com/debian/ sid main contrib non-free  
deb http://mg.debian.net/debian/ sid main contrib non-free
deb-src ftp://mg.debian.net/debian/ sid main contrib non-free  

Run as superuser:

aptitude update

Fetch the qemu package source:

cd /tmp/
apt-get source qemu
wget http://code.gns3.net/qemu-patches/archive/8eb98a728e4f.tar.bz2
tar jxvf 8eb98a728e4f.tar.bz2
cd qemu-patches-8eb98a728e4f/
cat *.patch > ../qemu-0.15.0+dfsg/debian/patches/gns3.patch
echo "gns3.patch" >> ../qemu-0.15.0+dfsg/debian/patches/series 
cd ../qemu-0.15.0+dfsg/
apt-get install build-essential devscripts
apt-get build-dep qemu
debuild -us -uc
dpkg -i ../qemu*.deb

You can prevent an upgrade by pinning qemu:

aptitude hold qemu

UPDATE:
A copy of the patch is available here http://malagasy.debian.net/tmp/qemu-patches-8eb98a728e4f.zip

Vita tompoko!!

Some useful links for you 😉

http://code.gns3.net/qemu-patches/
http://forum.gns3.net/topic2784.html
http://blog.gns3.net/2009/12/how-to-emulate-cisco-asa/
http://blog.gns3.net/2009/10/olive-juniper/2/
http://www.mediafire.com/?p1izkcij9rkbp87

Upgrade Cisco IOS sur un 2811 pour détecter une HWIC 1Fe

Nous avons eu un problème lors d’ajout d’une carte HWIC 1Fe sur un routeur, d’après les infos, il faut un iso 12.4(15) et supérieur pour qu’il puisse la détecter alors que le notre est à 12.4(11) donc nous sommes obligé de faire une mise à jour.

La procédure est simple :

  • sauvegarder l’ios existant sur le flash sur un serveur tftp (debian + tftpd)
  • supprimer l’ios sur le flash
  • télécharger le nouveau ios depuis un serveur tftp

Si vous n’avez pas encore un serveur tftp et que vous etes sur debian, ceci va vous aider sinon vous pouvez utiliser un serveur tftp comme celui de solarwinds.

aptitude install tftpd openbsd-inetd

J’ai modifié mon fichier /etc/inetd.conf comme :

grep tftp /etc/inetd.conf
tftp        dgram    udp    wait    nobody    /usr/sbin/tcpd    /usr/sbin/in.tftpd -s /srv/tftp

Relancer inetd :

killall inetd ; inetd &

Sauvegarder l’ios present sur le routeur au cas où.

Router#copy flash tftp
Source filename []? c2800nm-advipservicesk9-mz.124-11.T2.bin
Address or name of remote host []? 10.0.0.2
Destination filename [c2800nm-advipservicesk9-mz.124-11.T2.bin]?
…..
%Error opening tftp://10.0.0.2/c2800nm-advipservicesk9-mz.124-11.T2.bin (Timed out)

Mon serveur tftp est 10.0.0.2, assurez-vous que le routeur peut y accéder. Pour y écrire, j’ai eu un peu souci, il faut d’abord créer le fichier à transférer sur le serveur:

# touch /srv/tftp/c2800nm-advipservicesk9-mz.124-11.T2.bin
# chmod 777 /srv/tftp/c2800nm-advipservicesk9-mz.124-11.T2.bin

Recommencer :

Router#copy flash tftp                         
Source filename [c2800nm-advipservicesk9-mz.124-11.T2.bin]?
Address or name of remote host []? 10.0.0.2       
Destination filename [c2800nm-advipservicesk9-mz.124-11.T2.bin]?
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
39835176 bytes copied in 141.324 secs (281871 bytes/sec)

Récupérer le nouveau ios :

Router#copy tftp flash
Address or name of remote host []? 10.0.0.2
Source filename []? c2800nm-advipservicesk9-mz.124-24.T.bin
Destination filename [c2800nm-advipservicesk9-mz.124-24.T.bin]?
Accessing tftp://10.0.0.2/c2800nm-advipservicesk9-mz.124-24.T.bin…
Loading c2800nm-advipservicesk9-mz.124-24.T.bin from 10.0.0.2 (via FastEthernet0/0): !
%Error copying tftp://10.0.0.2/c2800nm-advipservicesk9-mz.124-24.T.bin (Not enough space on device)

Il me dit qu’il manque de place donc je vais supprimer l’ancien ios :

Router#delete flash:c2800nm-advipservicesk9-mz.124-11.T2.bin
Delete filename [c2800nm-advipservicesk9-mz.124-11.T2.bin]?
Delete flash:c2800nm-advipservicesk9-mz.124-11.T2.bin? [confirm]

On recommence :

Router#copy tftp flash                                      
Address or name of remote host [10.0.0.2]?
Source filename [c2800nm-advipservicesk9-mz.124-24.T.bin]?
Destination filename [c2800nm-advipservicesk9-mz.124-24.T.bin]?
Accessing tftp://10.0.0.2/c2800nm-advipservicesk9-mz.124-24.T.bin…
Loading c2800nm-advipservicesk9-mz.124-24.T.bin from 10.0.0.2 (via FastEthernet0/0): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK – 57637932 bytes]
57637932 bytes copied in 334.712 secs (172202 bytes/sec)

On verifie :

Router#show flash:
-#- –length– —–date/time—— path
1         2748 Jun 26 2009 13:57:58 +00:00 sdmconfig-2811.cfg
2       931840 Jun 26 2009 13:58:18 +00:00 es.tar
3      1505280 Jun 26 2009 13:58:36 +00:00 common.tar
4         1038 Jun 26 2009 13:58:50 +00:00 home.shtml
5       112640 Jun 26 2009 13:59:04 +00:00 home.tar
6      1697952 Jun 26 2009 13:59:30 +00:00 securedesktop-ios-3.1.1.45-k9.pkg
7       415956 Jun 26 2009 13:59:50 +00:00 sslclient-win-1.1.4.176.pkg
8     57637932 Aug 4 2011 05:45:22 +00:00 c2800nm-advipservicesk9-mz.124-24.T.bin

1695744 bytes available (62320640 bytes used)

On reload :

Router#reload
Proceed with reload? [confirm]

J’ai remarqué que le démarrage est devenu lent avec cet nouveau ios …

Yes! il a détecté la nouvelle carte HWIC 1Fe :

[…]
SETUP: new interface FastEthernet0/0/0 placed in « shutdown » state
[…]

Router#sh version
Cisco IOS Software, 2800 Software (C2800NM-ADVIPSERVICESK9-M), Version 12.4(24)T, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 25-Feb-09 17:55 by prod_rel_team

ROM: System Bootstrap, Version 12.4(13r)T11, RELEASE SOFTWARE (fc1)

Router uptime is 1 minute
System returned to ROM by power-on
System image file is « flash:c2800nm-advipservicesk9-mz.124-24.T.bin »
[…]
Cisco 2811 (revision 53.50) with 247808K/14336K bytes of memory.
Processor board ID FCZ132671T2
3 FastEthernet interfaces
1 Virtual Private Network (VPN) Module
DRAM configuration is 64 bits wide with parity enabled.
239K bytes of non-volatile configuration memory.
62720K bytes of ATA CompactFlash (Read/Write)

Vita tompoko!

Restauration de l’IOS d’un routeur Cisco 2811

J’ai eu un problème avec le compact flash d’un de mes routeurs et je veux restorer l’IOS, je suppose que mon serveur tftp est déjà opérationnel et que mon IOS de backup est disponible. C’est en moins de 9 étapes !!
Voici les paramètres dans :
– ip du premier interface ethernet dans mon cas c’est Fe0/0 : 192.168.0.251/24
– ip de mon serveur tftp 192.168.0.252
– un gateway qui est obligatoire meme si le routeur et le serveur est dans le meme réseau

Lire la suite

Configurer sur un routeur Cisco avec Minicom

Juste un post qui peut aider certain pour connecter son linux avec un routeur ou switch Cisco avec l’outil Minicom .
Dans l’exemple, j’utilise Debian mais ça peut marcher aussi pour Ubuntu et Linux/Unix en général.

sudo apt-get install minicom

Brancher votre rollover cable avec le routeur Cisco bien sur au port console, puis connecter le sur votre ordinateur.
Dans mon cas, j’utilise un portable qui n’a plus de port série DB9, donc j’utilise un convertisseur USB to DB9 .
Quand je branche le convertisseur sur le port usb, je vois que le device utilisé sera /dev/ttyUSB0 car avec la commande dmesg j’ai :


[21226.833044] usb 6-1: new full speed USB device using uhci_hcd and address 3
[21227.015088] usb 6-1: New USB device found, idVendor=0403, idProduct=6001
[21227.015097] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[21227.015103] usb 6-1: Product: USB Serial
[21227.015108] usb 6-1: Manufacturer: FTDI
[21227.015279] usb 6-1: configuration #1 chosen from 1 choice
[21227.021145] ftdi_sio 6-1:1.0: FTDI USB Serial Device converter detected
[21227.021190] usb 6-1: Detected FT232BM
[21227.021261] usb 6-1: FTDI USB Serial Device converter now attached to ttyUSB0

Nous pouvons vérifier le fichier :

$ ls -al /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 0 2009-09-02 13:50 /dev/ttyUSB0

Pour lire le fichier ttyUSB0 il faut que l’utilisateur soit dans le group dialout dans le cas de Debian :

$ sudo adduser test dialout
Adding user `test' to group `dialout' ...
Adding user test to group dialout
Done.
$ id test
uid=1002(test) gid=1002(test) groups=1002(test),20(dialout),46(plugdev)

Si vous avez oublié de faire ça vous aurez le message en lançant minicom en utilisateur normal :

minicom: cannot open /dev/ttyUSB0: Permission denied

Pour aller plus vite créer/modifier le fichier /etc/minicom/minirc.dfl avec le contenu suivant :


# Machine-generated file - use "minicom -s" to change parameters.
pu port /dev/ttyUSB0
pu baudrate 9600
pu bits 8
pu parity N
pu stopbits 1
pu rtscts No

Testons :

$ minicom

Vous pouvez avoir le menu de config avec les touches Controle-A puis Z .