← All posts
Tutorial

Build a Network Automation Lab: GNS3, EVE-NG, and DevNet Sandbox

You cannot learn automation safely on production. Here is where to practice.

NAPT Team8 min read
Automation lab optionsGNS3local emulationEVE-NGbrowser topologyDevNet Sandboxcloud, always-onNAPTruns against the lab
Pick a lab that matches your constraints, then point NAPT at it exactly as you would production.

The fastest way to break production is to learn automation on it. Every pattern in these posts deserves a throwaway environment first. You have three good options, each with a different trade-off.

Option 1: GNS3 — local and free

GNS3 runs real vendor images on your own machine. Heaviest on RAM, but nothing leaves your laptop and you control every cable.

python
import requests
# GNS3 exposes its own REST API on localhost
nodes = requests.get("http://localhost:3080/v2/projects").json()
print([p["name"] for p in nodes])

Option 2: EVE-NG — browser-based topologies

EVE-NG moves the emulation onto a server with a browser-based topology editor. Better for shared team labs; the devices are reachable over the management network just like real gear.

Option 3: DevNet Sandbox — zero setup

Cisco DevNet Sandboxes are free, cloud-hosted, and some are always-on. No images to license, no RAM to find — reserve one and you have reachable devices and APIs in minutes.

yaml
# inventory.yaml pointed at an always-on DevNet sandbox
devices:
  - name: sandbox-iosxe
    host: sandbox-iosxe-latest-1.cisco.com
    platform: cisco_ios
    username: developer
    password: ${DEVNET_PASS}

Wire any of them into NAPT

NAPT does not care whether a device is emulated or physical — it speaks SSH and NETCONF either way. Point your inventory at the lab and run with --dry-run exactly as you would in production.

bash
napt run check-interfaces --inventory inventory.yaml --dry-run
Pro tip: Start on DevNet to remove every setup hurdle, then graduate to GNS3 or EVE-NG once you want failure scenarios you can trigger on demand — pulling a link to watch TI-LFA kick in, for example.
#lab#tutorial#getting-started

Was this helpful?

Generate scripts for the task covered in this post

Describe what you need and NAPT writes production-ready automation in Netmiko, NAPALM, or Nornir.

Open Script Generator →
New to NAPT? Start with the Setup Guide

Related posts