Could I Use netlab instead of GNS3?

I’m often getting questions like “I’m using GNS3. Could I replace it with netlab?”

TL&DR: No.

You need a set of functions to build a network lab:

  • Virtualization environment (netlab supports VirtualBox, libvirt, Docker, and Podman)
  • An orchestration tool/system that will deploy network device images in such an environment (netlab supports Vagrant and containerlab)
  • A tool that will build orchestration system configuration (netlab core functionality)

The above list is the absolute minimum you need to get a running lab. You could either build such an environment from individual components (netlab approach) or use an integrated solution often available as a deployable virtual machine (GNS3 and Cisco CML/VIRL approach).

netlab thus cannot replace GNS3 or VIRL; it’s one of the tools in a flexible, composable toolchain. It also offers many other features you cannot get in GNS3 or VIRL (more about that in another blog post), enabling you to build intent-based labs1 instead of drawing them in a GUI.

For more details, watch the Why Do We Need Another Labbing Tool video I recorded in September 2022 as part of Network Automation Tools webinar.

You need Free ipSpace.net Subscription to watch the video and Standard ipSpace.net Subscription to watch the rest of the webinar.

  1. Marketing bullshit for “it uses a text file to define what you want to build.” ↩︎

1 comments:

  1. Does netlab support external connections through virbr? If yes, you can connect the two and enjoy the features of both (e.g. building a fabric with netlab but having some services like Arista CVP, DHCP, DNS, etc. on network(s) created in GNS3).

    Replies
    1. > Does netlab support external connections through virbr?

      Not directly (as in "that cannot be configured") but if you use netlab with libvirt or containerlab, then the underlying network connectivity is implemented with Linux bridges, and of course you can link them with anything you like.

      > you can connect the two and enjoy the features of both (e.g. building a fabric with netlab but having some services like Arista CVP, DHCP, DNS, etc. on network(s) created in GNS3).

      Why would you want to do that if you can run a Linux VM or container (in both cases with custom image if you so wish) as part of netlab lab topology?

Add comment
Sidebar