EVE-NG (Emulated Virtual Environment-Next Generation) is a powerful tool for network engineers and architects, allowing them to create complex network topologies for testing and learning. However, when trying to boot up IOL (IOS on Linux) Layer 2 images, you might encounter issues. In this post, we’ll walk through some common reasons for the IOL Layer 2 image boot-up issue in EVE-NG and how to fix them.
Environment
EVE-NG Community Verison 6.2.0-4 installed under Vsphere ESXi 7.0 Update 3
root@eve-ngcev6:~# dpkg -l eve-ng
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-==============================================
ii eve-ng 6.2.0-4 amd64 A new generation software for networking labs.
IOL license installed correctly.
root@eve-ngcev6:~# vim /opt/unetlab/addons/iol/bin/iourc
[license]
eve-ngcev6 = cxxxxxxxxxxxxxxxxc;
Execution persmission is allowed on the images.

Problem
Layer 3 images are working completely fine
Layer 2 IOL image boot for a couple seconds, then stop right away
Troubleshooting
Check the unl_wrapper log to trace the the image wraper log
vim /opt/unetlab/data/Logs/unl_wrapper.txt

Check the image wrapper log to find out the root cause
vim /opt/unetlab/tmp/0/fbaxx92b-27bc-413f-adb8-f8fa2511f08c/3/wrapper.txt

The Fix
After a bit search around:
1. remove xml.cisco.com entry from /etc/hosts file
2. run the below command to block the DNS queries
iptables -I OUTPUT -p udp --dport 53 -m string --hex-string "|03|xml|05|cisco|03|com" --algo bm -j DROP
3. Try IOL layer 2 image again.
Useful link
www.eve-ng.net/index.php/documentation/community-cookbook/