How do I get an IOU license?

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

#! /usr/bin/python
print "\n*********************************************************************"
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='\x4B\x58\x21\x81\x56\x7B\x0D\xF3\x21\x43\x9B\x7E\xAC\x1D\xE6\x8A'
iouPad2='\x80' + 39*'\0'
md5input=iouPad1 + iouPad2 + struct.pack('!L', ioukey) + iouPad1
iouLicense=hashlib.md5(md5input).hexdigest()[:16]
# add license info to $HOME/.iourc
print "\n*********************************************************************"
print "Create the license file $HOME/.iourc with this command:"
print " echo -e '[license]\\n" + hostname + " = " + iouLicense + ";'" + " | tee $HOME/.iourc "
print "\nThe command adds the following text to $HOME/.iourc:"
print "[license]\n" + hostname + " = " + iouLicense + ";"
# disable phone home feature
print "\n*********************************************************************"
print "Disable the phone home feature with this command:"
print " grep -q -F '127.0.0.1 xml.cisco.com' /etc/hosts || echo '127.0.0.1 xml.cisco.com' | sudo tee -a /etc/hosts"
print "\nThe command adds the following text to /etc/hosts:"
print "127.0.0.1 xml.cisco.com"
print "\n*********************************************************************"

Overview

IOU (IOS On Unix) can be run on GNS3 VM and used in GNS3 projects. Note that it is assumed that you have the IOU image file. And based on the following environment

Host OS Windows10 Pro
GNS3 version 2.2.33.1
GNS3 VM version 2.2.33.1
Virtualization Hypervisor VMware Workstation 16.6.2

Procedures for using IOUs

The procedure for using IOUs in GNS3 is as follows

Step1: Creation of IOU template Create a template for an the IOU device; you must also register for a license in order to use IOUs.

Step2: Place in a project for usePlace the created IOU device template in the project workspace.

Creation of IOU template

Create a template for IOU devices: open [Edit]->[Preferences] in the GNS3 menu. Select [IOU Devices] and click [New].

How do I get an IOU license?

Leave [Server type] as the default [Run this IOU device on the GNS3 VM] and click [Next] to proceed. Input the template name and select the type of IOU device to be created (L2 or L3). Then specify the IOU image file. Click [Finish] to confirm the created template.

How do I get an IOU license?
How do I get an IOU license?
How do I get an IOU license?

In order to use the devices in the IOU template you have created, you must register the IOU license file with GNS3. IOU license file creation works on the GNS3 VM. Select “Shell” from the GNS3 VM menu and click “OK” to enter the shell.

How do I get an IOU license?

Download the Python script “CiscoIOUKeygen3f.py” which generates IOU license information.

wget http://www.ipvanquish.com/download/CiscoIOUKeygen3f.py

Then, run the downloaded Python script.

python3 CiscoIOUKeygen3f.py
How do I get an IOU license?

A license information file “iourc.txt” will then be created. The contents of “iourc.txt” are displayed.

How do I get an IOU license?

To register the contents of “iourc.txt” on GNS3, select [Edit] -> [Preferences] -> [IOS on UNIX] from the GNS3 menu. Copy and paste the contents of “iourc.txt” into [IOU licence(iourc file)] and complete the process.

How do I get an IOU license?

Place in a project for use

Once the IOU device template is created, it can then be placed in the project workspace for use.

How do I get an IOU license?

What is IOU in gns3?

IOU is IOS on Unix (Solaris, if you want to be specific). It's a version of IOS compiled to run on workstations. It's faster and lighter than emulation. Cisco transitioned to IOL images, which are x86-64 compatible versions of IOS that natively run in Linux.

What is Cisco IOU?

Cisco IOS on UNIX (IOU) is a fully working version of IOS that runs as a user mode UNIX (Solaris) process. IOU is built as a native Solaris image and run just like any other program. IOU supports all platform independent protocols and features.