This is a converter of networking simulator EVE-NG
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE.md
README.md
connections.py
drawing.py
eve-to-gns3-converter.py
exceptions.py
helper.py
json_templates.py
node.py
requirements.txt
topology.py

README.md

EVE-NG to GNS3 topology converter

This script converts network topologies created in EVE-NG to GNS3 format.

Coding of this project was live streamed on https://twitch.tv/dmfigol
Recordings are posted on my YouTube channel

To run the script, you will need to have Python 3.6+ installed.
Dependencies are listed in requirements.txt. You can install them using:
pip3 install -r requirements.txt

How to use the script

python3 eve-to-gns3-converter.py [-h] (-f SRC_TOPOLOGY_FILE | -s SRC_DIR)
                                 [-d DST_DIR] [-c CONSOLE_START_PORT]
                                 [--l2_iol_image L2_IOL_IMAGE]
                                 [--l3_iol_image L3_IOL_IMAGE]

Example: python3 eve-to-gns3-converter.py -s src/ -d dst/

Arguments:

  • -f, --src_topology_file specifies a single *.unl file you would like to convert
    Alternatively, use:
  • -s, --src_dir specifies a source directory containing *.unl files. This directory is scanned recursively and all found *.unl files will be converted.

Either --src_topology_file or --src_dir must be specified.

  • -d, --dst_dir specifies destination folder. This is where the script will put generated GNS3 topologies. Default is dst/
  • -c, --console_start_port specifies the first port for the console in GNS3. Default is 5000.
  • --l2_iol_image specifies an L2 IOL image path in GNS3 if differs from EVE-NG.
  • --l3_iol_image specifies an L3 IOL image path in GNS3 if differs from EVE-NG

Two options above may be useful if IOL images are named differently in EVE-NG and GNS3 or if completely different versions are imported in these two emulators.
This is implemented only for IOL. In future, there will be support of a mapping file, where you could specify mapping of image path/name in EVE-NG and corresponding image path/name in GNS3. Check #3

If the script does not work/crashes, please raise an issue.