Essa é uma revisão anterior do documento!
Todos conhecem ou já ouviram falar do GNS3, quem não conhece o GNS3 é um software que consegue emular roteadores utilizando a imagem do IOS da Cisco(sistema operacional que é executado nos roteadores).
IOU quer dizer IOS on Unix.
Bom eu penei um pouco antes de conseguir fazer funcionar. Depois de algumas tentativas conseguir fazer funcionar e criei uma teoria, porém não tive tempo de comprovar. O pulo do gato que eu percebi e a versao da VM GNS3 tem que combinar com a versão do GNS3. Sendo assim nesse site tenho as respectivas versões do GNS3 com a VM GNS3.
https://github.com/GNS3/gns3-gui/releases
Nos meus testes utilizei o windows 10 veja a versão.
A versões do GNS3 e VM GNS3 e respectivo arquivo:
O gns3 consigo rodar com virtualbox e vmware. Utilizaremos o Virtualbox.
Após tudo instalado vm e gns3 importe a VM normalmente(Não vou passar isso porque considero muito simples e não é difícil, mas mesmo assim caso haja alguma dúvida mailme).
Para criar o switch vamos ao menu Edit → Preferences
Depois clique em IOU Devices e depois em New
Logo em seguida clique em Next
Nesta tela temos algumas opções vamos a elas:
A tela com a imagem selecionada.
O processo para criar um roteador IOU e praticamente o mesmo.
Menu Edit→preferences.
Clique em IOU Devices e depois New
Clique em Next.
Selecione New Image e em Type escolha L3 Image.
Selecione a imagem i86bi-linux-l3-adventerprisek9-12.4.bin.
Depois clique em Finish
As imagens Cisco’s IOS-On-UNIX (IOU) são protegidas por um mecanismo de licença que requer que usuáros tem q gerar uma licença valida internamente na Cisco.
Para uso das imagens IOU devesse obter uma licença que é baseado no nome do computador e no endereço IP para obter essa licença. Devido ao uso do nome do computador e endereço IP para calcular a licença fica dificil utilizar uma licença gerada em uma máquina em outra.
Para isso alguém que ainda não descobri criou um script em python que gera a licença.
Segue abaixo o código.
#! /usr/bin/python3 print("*********************************************************************") print("Cisco IOU License Generator - Kal 2011, python port of 2006 C version") import os import socket import hashlib import struct # get the host id and host name to calculate the hostkey hostid=os.popen("hostid").read().strip() hostname = socket.gethostname() ioukey=int(hostid,16) for x in hostname: ioukey = ioukey + ord(x) print("hostid=" + hostid +", hostname="+ hostname + ", ioukey=" + hex(ioukey)[2:]) # create the license using md5sum iouPad1 = b'\x4B\x58\x21\x81\x56\x7B\x0D\xF3\x21\x43\x9B\x7E\xAC\x1D\xE6\x8A' iouPad2 = b'\x80' + 39*b'\0' md5input=iouPad1 + iouPad2 + struct.pack('!i', ioukey) + iouPad1 iouLicense=hashlib.md5(md5input).hexdigest()[:16] print("\nAdd the following text to ~/.iourc:") print("[license]\n" + hostname + " = " + iouLicense + ";\n") with open("iourc.txt", "wt") as out_file: out_file.write("[license]\n" + hostname + " = " + iouLicense + ";\n") print("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nAlready copy to the file iourc.txt\n ") print("You can disable the phone home feature with something like:") print(" echo '127.0.0.127 xml.cisco.com' >> /etc/hosts\n")
Com a VM GNS3 rodando ela utiliza uma interface acessivel ao computador localhost com isso podemos obter o endereço IP da VM GSN3 conforme figura abaixo:
o endereço ip da VM GNS3 é 192.168.56.3 este e o endereço da interface do virtualbox como podemos constatar abaixo.
Então vamos conectar na VM GNS pela interface Virtualbox Host-Only Network.
Endereço VM GNS3: 192.168.56.3 Usuário: gns3 senha: gns3
Clique em OK
Escolha a opção Shell
Você ira cair na shell do Linux da VM GNS3, vá até o diretório /opt/gns3/images/IOU.
Agora e somente executar o script e obter a licença.
Agora você tem duas opções ou copia a string abaixo ou utiliza algum software de transferência tipo WinSCP e copia o arquivo gerado iourc.txt que você precisara jogar nas preferencias do GNS3.
[license] gns3vm = 73635fd3b0a13ad0;
Clique em Edit→Preferences.
Depois vá em IOS on UNIX e cole a string acima ou clique em browse indique o arquivo iourc.txt e depois clique em OK.
Obs: Sem a licença você não consegue subir os switches e roteadores ele gera um erro.
Agora vamos colocar os dois itens na area de trabalho do GNS3 e testar o switch e roteador.
Vamos ao show version de ambos.
Roteador IOU
Switch IOU
Mas porque utilizar esses firmware IOU? eles tem melhor performance já vi relatos de fórum de pessoas conseguir montar ambiente com 30 roteadores rodando tranquilamente. Fora que você pode testar as features de switch suporte a QinQ, etc. Vou testa-ló e vou reportando quando puder. Vlw