Learn how to add Cisco IOU/IOL Images to Eve-ng step-by-step. L2/L3 images of Switches and routers which helps you to practice for L3 devices with the same features and functions which original devices have. Cisco IOU/IOL images were released for Architecture and testing purposes but today Cisco IOU/IOL images are used for CCIE routing and switching practice for CCIE routing and switching.
Eve-ng is one of the best emulators to Practice with Cisco devices where you can import the images in Eve-ng and access it via GUI. You can set up your lab and practice as much as you want.
List of Images supported in Eve-ng.
To install Eve-ng on your desktop check below Post-
How to install Eve-ng on Vmware.
Table of contents
Follow the Video to add Cisco IOU/IOL images to Eve-ng
if you want to practice Cisco ASA or Cisco IOS Dyanamip on eve-ng for your certification or knowledge then check the below posts-
How to add Cisco ASAv to Eve-ng
How to add Cisco IOS (Dynamips Images) to Eve-ng
Supported Cisco IOU/IOL Images for Eve-ng
Basically, Eve-ng supports all the Cisco IOU and IOL images but below are recommended ones.
Type | EVE Image Name | Version | vRAM |
---|---|---|---|
L2 | L2-ADVENTERPRISEK9-M-15.1-20130726.bin | I86BI_LINUXL2-ADVENTERPRISEK9-M 15.1(20130726:213425) | 192 |
L3 | L3-ADVENTERPRISEK9_IVS-M-15.3-0.9T.bin | I86BI_LINUX-ADVENTERPRISEK9_IVS-M 15.3(0.9)T | 128 |
Download Cisco IOU/IOL Images for Eve-ng
Images provided below are strictly for educational purposes and are not hosted on the networkhunt.com server. We are just indexing the links found on the internet for educational purposes only.
You can download Cisco IOU/IOL images from the links below.
Add Cisco IOU/IOL images to Eve-ng
IOL or IOS On Linux also called IOU or IOS On Unix. IOL is a simulator available for Cisco internal use only. IOL refers to the Linux version, compiled for i386 architecture. IOU refers to the Unix (Solaris) version compiled for Sparc architecture. The term IOU usually refers to IOL too.
Because IOL is an internal IOS version, IOL can be used by Cisco employees or by authorized customers only.
Upload the downloaded image to the EVE using for example FileZilla or WinSCP to: /opt/unetlab/addons/iol/bin
Type the following command to fix permissions:
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
License for Cisco IOU/IOL images.
Creating IOU and IOL licenses in EVE-NG is essential for running Cisco IOS images. This process involves generating a license key specific to your EVE-NG machine. You will need to access the EVE-NG server, run a script to generate the license key, and then input this key into the appropriate configuration file. This ensures your Cisco IOU/IOL images operate correctly within the EVE-NG environment.
#! /usr/bin/python
print("*********************************************************************")
print("Cisco IOU License Generator - Kal 2011, python port of 2006 C version")
print("Modified to work with python3 by c_d 2014")
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")
print("You can disable the phone home feature with something like:")
print(" echo '127.0.0.127 xml.cisco.com' >> /etc/hosts\n")
1. Copy the above text create a text file and save as with the name IOUkeygen.py
2. After creating the license python script, upload it to the Eve-ng directory
-/opt/unetlab/addons/iol/bin/
3. After uploading the script go to the directory by using the below command-
cd /opt/unetlab/addons/iol/bin/
4. Check the directory content by using the below command-
ls -l
5. you will be able to see a file with the name – IOUkeygen.py
6. Now run the Python script by using the below command-
python2 IOUkeygen.py
7. it will give you some like the below output
root@eve-ng:/opt/unetlab/addons/iol/bin# python2 ioukeygen.py
After running the script, it will look like below example.
Cisco IOU License Generator - Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=007f0101, hostname=eve-ng, ioukey=7f0343Add the following text to ~/.iourc:
[license]
eve-ng = 972f30267ef51616;
8. Now, we will create licenses for IOU/IOL images, to create a license key run the below command. It will create a file with the name iourc which IOU/IOL images will use for license verification.
nano - c iourc
9. Paste the license and press ctrl+x to save the file.
[license]
eve-ng = 972f30267ef51616;
We have successfully added the Cisco IOU/IOL images with the license.
Testing Cisco IOU/IOL images
To add IOU/IOL nodes in EVE-NG via the GUI, follow these steps:
- Open EVE-NG: Launch the EVE-NG web interface in your browser.
- Create a New Lab: Click on “Lab” from the top menu and select “New Lab.” Fill in the lab details and click “Save.”
- Add a Node: Click on the “Add an Object” button (plus icon) on the toolbar and select “Node.”
- Select IOU/IOL: In the “Node” window, choose “Cisco IOU/IOL” from the list of node types.
- Configure Node: Set the desired node name, image, and other parameters. Click “Save.”
- Repeat: Add additional IOU/IOL nodes as needed by repeating steps 3-5.
- Connect Nodes: Use the “Add a Link” button to connect the nodes as required.
- Start Nodes: Click the “Start” button to power on all the nodes.
Your IOU/IOL nodes are now added and ready for use in your EVE-NG lab.
cd /opt/unetlab/addons/iol/bin
touch NETMAP
LD_LIBRARY_PATH=/opt/unetlab/addons/iol/lib /opt/unetlab/addons/iol/bin/<iosname.bin> 1
***************************************************************
IOS On Unix - Cisco Systems confidential, internal use only
Under no circumstances is this software to be provided to any
non Cisco staff or customers. To do so is likely to result
in disciplinary action. Please refer to the IOU Usage policy at
wwwin-iou.cisco.com for more information.
***************************************************************
Restricted Rights Legend
Use, duplication, or disclosure by the Government is
subject to restrictions as set forth in subparagraph
(c) of the Commercial Computer Software - Restricted
Rights clause at FAR sec. 52.227-19 and subparagraph
(c) (1) (ii) of the Rights in Technical Data and Computer
Software clause at DFARS sec. 252.227-7013.
cisco Systems, Inc.
170 West Tasman Drive
San Jose, California 95134-1706
Read More
its not working for me
getting error:
root@eve-networking:/opt/unetlab/addons/iol/bin# python2 ioukeygen.py
*********************************************************************
Cisco IOU License Generator – Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=800a0200, hostname=eve-networking, ioukey=800a07b5
Traceback (most recent call last):
File “iouKeygen.py”, line 21, in
md5input=iouPad1 + iouPad2 + struct.pack(‘!i’, ioukey) + iouPad1
struct.error: ‘i’ format requires -2147483648 <= number <= 2147483647
root@eve-networking:/opt/unetlab/addons/iol/bin#
Its working, Thanks alot.
Awesome Bro thanks a lot for your effort
hi, need your help plz, all is good, but when i get to the console, i have this error on putty “putty fatal error : network error : connection refused” can i get some help please, i’m stuck
is this support snmp?
we have not tested.
This is great! Can you share all your EVE-NG images with instructions? I’m willing to pay. Thanks!
Works OK for me but when I start the router in LAB, it shutdown after some secons!
Are you getting any error?
Im getting the same thing, no error, says started, but it never comes up… I have no idea where to check, when I do it from the CLI, I`m able to start the router… I dont understand whats wrong or where to look for the issue.
which Eve-NG version you are using for IOU?
what is the CPU and memory you have allocated for Eve-NG?
Is there anyone to assist with the below issue ???
1)Running the script :
root@Eve-NG:/opt/unetlab/addons/iol/bin# ./IOUkeygen.py
*********************************************************************
Cisco IOU License Generator – Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=007f0101, hostname=Eve-NG, ioukey=7f02e3
Add the following text to ~/.iourc:
[license]
Eve-NG = 0e2b236f5a4041d4;
You can disable the phone home feature with something like:
echo ‘127.0.0.127 xml.cisco.com’ >> /etc/hosts
2)The script license matches with the below one :
root@Eve-NG:/opt/unetlab/addons/iol/bin# cat iourc
[license]
Eve-NG = 0e2b236f5a4041d4;
3)Still getting the below error
root@Eve-NG:/opt/unetlab/addons/iol/bin# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
Oct 20 14:19:40 Oct 20 14:19:40 ERROR: Unlicensed
root@Eve-NG:/opt/unetlab/addons/iol/bin#
Is the solution to buy the PRO version ???
replace this line “” md5input=iouPad1 + iouPad2 + struct.pack(‘!L’, ioukey) + iouPad1 “” in script
or replace i with L
script work fine
The Layer 3 router is working Great for me, except I donāt have any Serial interfaces. How can I use serial interfaces?
Thanks
The test run from cli works fine, but any node start from the eve-ng stops with this error: ‘Failed to start node 12’. Any idea? Thanks
The solution:
The license data have put into the /opt/unetlab/addons/iol/bin/iourc file, instead of ~/.iourc
Place the License in /opt/unetlab/addons/iol/bin/iourc not in ~/.iourc
Place the license in “/opt/unetlab/addons/iol/bin/iourc” not in “~/.iourc”.
I am following the exact same steps as explained here, however it always ends up with the following error:
ERROR: Unlicensed
not sure how to resolve this, kindly assist.
Hello, you can help me to license the EVE emulator, I have done all the steps of the page and the video, but I can not license it.
eve version:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION=”Ubuntu 16.04.6 LTS”
NAME=”Ubuntu”
VERSION=”16.04.6 LTS (Xenial Xerus)”
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=”Ubuntu 16.04.6 LTS”
VERSION_ID=”16.04″
Message after running /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
root@eve-ng:/opt/unetlab/addons/iol/bin# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
Jul 07 16:31:48 Jul 07 16:31:48 ERROR: Unlicensed
root@eve-ng:/opt/unetlab/addons/iol/bin#
Mine seems to connect but I just get black screen on putty window.
“Reading from stdin, ^C to abort ”
how long is this
The images are working. L2 works just fine but the L3 images will work for about 5 mins then say “Translating cisco.com” then pin the CPU. This basically locks up the whole VM. Doesnt matter the config, DNS…etc..
Have you found a solution to this ?
root@eve-ng:/opt/unetlab/addons/iol/bin# more iourc
[license]
eve-ng = 8b89064895b9bf75;
root@eve-ng:/opt/unetlab/addons/iol/bin# LD_LIBRARY_PATH=/opt/unetlab/addons/iol/lib /opt/unetlab/addons/iol/bin/i86bi-linux-l2-adventerprisek9-15.1.bin 1
***************************************************************
IOS On Unix – Cisco Systems confidential, internal use only
IOU License Error: invalid license
License for key 9e0aad04 required on host “eve-ng”.
Obtain a license for this key and host from the following location:
http://wwwin-enged.cisco.com/ios/iou/license/index.html
Place in your iourc file as follows (see also the web page
for further details on iourc file format and location)
[license]
eve-ng = ;
Hi,
root@eve-ng:/opt/unetlab/addons/iol/bin# nano -c iourc
-bash: nano: command not found
this command didnt work for me.
could you please advise what to do?
thanks.
there is {spcae}
nano {spcae} – {spcae} c {spcae} iourc
==> nano – c iourc
Hello I am getting ERROR: Unlicensed….can you help?
Works with no space, but looks like nano is not installed. I had to install nano also.
sudo apt-get install nano
Hi, can you help me with EVE-NG, with all images? I am OK to contribute
I got a error with the script :
root@eve-ng:/opt/unetlab/addons/iol/bin# python2 ciscoioukeygen.py
*********************************************************************
Cisco IOU License Generator – Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=a8c01f64, hostname=eve-ng, ioukey=a8c021a6
Traceback (most recent call last):
File “ciscoioukeygen.py”, line 21, in
md5input=iouPad1 + iouPad2 + struct.pack(‘!i’, ioukey) + iouPad1
struct.error: ‘i’ format requires -2147483648 <= number <= 2147483647
Any idea ?
thank you.
Hi Dimahoo update your eve-ng and then try
I believe the ‘!i’ in this script (in the formula for md5input) needs to be replaced with ‘!L’
Thanks it worked for me !!! even though I don’t have any explanation
yea, worked for me as well..tnx
It’s not correct :
root@Eve-NG:/opt/unetlab/addons/iol/bin# ./CiscoIOUKeygen.py
*********************************************************************
Cisco IOU License Generator – Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=007f0101, hostname=Eve-NG, ioukey=7f02e3
Traceback (most recent call last):
File “./CiscoIOUKeygen.py”, line 21, in
md5input=iouPad1 + iouPad2 + struct.pack(‘iL’, ioukey) + iouPad1
struct.error: pack expected 2 items for packing (got 1)
root@Eve-NG:/opt/unetlab/addons/iol/bin#
Thanks a lot it worked fine for me
I’m getting “could not open iourc file” when changing LD_LIBRARY PATH… Permissions look fine. Scratching my head
Damn, my router is not correctly installed.
It keeps shutting down immediately
are you getting any error?
Hi bro, it is working already!
I forgot to run the fixed permission.
Are you able to help to install also a virtual windows inside Eve-ng?
btw, you have a eve-ng with all image? drop me an email so we can discuss
Hey Bro, Thanks for the comment.
Yes I have images for windows XP and Windows 7 installed with all software like wireshark, wincap, etc
Yes, I do have eve-ng almost with all images, I will drop you mail to discuss.
Can you help me as well?
sure
Hi Leerz. Please I have same issue. How did you resolve it then. Kindly assist please.
It keeps shutting down the router after I have started it.
i am getting licence error, any idea what to be done ?
root@eve-ng:/opt/unetlab/addons/iol/bin# more iourc
[license]
eve-ng = 972f30267ef51616;
root@eve-ng:/opt/unetlab/addons/iol/bin# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
Feb 20 08:51:18 Feb 20 08:51:18 ERROR: Unlicensed
root@eve-ng:/opt/unetlab/addons/iol/bin#
you have to create separate license for IOU.
follow the post and generate another license with pyhotn keygen
let me know if it works? else we can fix on skype.
Hi,
I also facing the ERROR: unlicensed issue after follow the steps that you provided. Can you please assist me, Thank you so much.
are you able to generate license with script?
I have the exact same issue, I did the exact same steps, it gives me same results as explained here but ERROR: Unlicensed
I have the exact same issue, I did the exact same steps, it gives me same results as explained here
ERROR: Unlicensed
how can I fix this issue?
You are using EVE NG PRO without license, download the free one.
I’m also getting license error, after running fix permissions command. /opt/unetlab/wrappers/unl_wrapper -a fixpermissions says ‘ERROR: Unlicensed’.
I ran python script multiple times and it creates same license every time. I’ve tried multiple ways like deleting all the images and create license first then copy images.
I’ve used images downloaded from the given link on this page, all failed and I’m not able to fix the permissions.
What to do, help me out.
Hi Bro, were you able to fix the permission issue? I’m getting same “Error: Unlicensed” any idea how can i fix on my side? Thanks a lot
Thank you so much, it worked Awesome
L3 Switch is a router, this image don’t suport comands of L3 switch like interface vlan.
can you shear me the eve-ng that have all image file ….. that would me easy š
That Cost little š
100$
Hi
I seem to get an error with this script
——————
root@eve-pro:/opt/unetlab/addons/iol/bin# ls -l
total 240248
-rw-r–r– 1 root root 1057 Jan 14 22:38 IOUkeygen.py
-rwxr-xr-x 1 root root 73017484 Jan 14 22:28 L2-ADVENTERPRISE-M-15.1-20140814.bin
-rwxr-xr-x 1 root root 172982492 Jan 14 22:28 L3-ADVENTERPRISE9-15.5.2T.bin
drwxr-xr-x 2 root root 4096 Jan 14 22:35 other
root@eve-pro:/opt/unetlab/addons/iol/bin# python2 IOUkeygen.py
*********************************************************************
Cisco IOU License Generator – Kal 2011, python port of 2006 C version
Modified to work with python3 by c_d 2014
hostid=a8c0fe02, hostname=eve-pro, ioukey=a8c100c0
Traceback (most recent call last):
File “IOUkeygen.py”, line 21, in
md5input=iouPad1 + iouPad2 + struct.pack(‘!i’, ioukey) + iouPad1
struct.error: ‘i’ format requires -2147483648 <= number <= 2147483647
root@eve-pro:/opt/unetlab/addons/iol/bin#
Hello Stephan,
Please use small letter and try..
python2 ioukeygen.py
Stephan, I am having the same issue. The script will not generate a key. Did you end up fixing this?
Short answer:
change the ‘!i’ for ‘!q’
i = integer
q = long long integer
modify the following line of the script:
md5input=iouPad1 + iouPad2 + struct.pack(‘!i’, ioukey) + iouPad1
use instead:
md5input=iouPad1 + iouPad2 + struct.pack(‘!q’, ioukey) + iouPad1
Hi the solution is that you have to change the next paragraph:
md5input=iouPad1 + iouPad2 + struct.pack(‘!i’, ioukey) + iouPad1
for this:
md5input=iouPad1 + iouPad2 + struct.pack(‘!L’, ioukey) + iouPad1
Simply put !L for !i
I hope this helps you
replace this line āā md5input=iouPad1 + iouPad2 + struct.pack(ā!Lā, ioukey) + iouPad1 āā in script
or replace i with L
script work fine
worked like a charm, txt š