Skip to content

Generic VM

Description A generic Ubuntu VM interconnected with Nokia SR Linux
Components Ubuntu VM, SR Linux
Resource requirements1 2
4096 MB
Topology file generic_vm01.yml
Version information2 containerlab:0.55.0, ubuntu:22.04, docker:26.0.0


This lab demonstrates how to use a Generic VM kind using Ubuntu 22.04 LTS by connecting it to the SR Linux switch and running a basic ping test.

The topology is rather simple, with Ubuntu VM and SR Linux switch connected over a single interface.

ubuntu:eth1 <----> e1-1:SR Linux


Before deploying the lab, make sure you have built the container image for the Ubuntu VM using hellt/vrnetlab project. The topology file references the image as vrnetlab/vr-ubuntu:jammy, which is the default image name for Ubuntu 22.04 LTS.

After building the image, deploy the lab using the following command:

sudo containerlab deploy -t generic_vm.clab.yml


The Ubuntu 22.04 VM takes about 1 minute to complete its start up and then extra 30 seconds to allow password-based authentication over SSH. Check the boot log using docker logs -f clab-generic_vm-ubuntu.

SR Linux#

As seen in the topology file, the SR Linux node comes with its ethernet-1/1 interface and subinterface preconfigured with IP address. Thus no additional configuration is needed.


Log into the ubuntu node using SSH with ssh clab-generic_vm-ubuntu and add the IP configuration to the ens2 interface that connects the VM with SR Linux switch. Password is clab@123.

sudo ip addr add dev ens2
sudo ip link set dev ens2 up


With interface on Ubuntu side configured, ping from Ubuntu to SR Linux to verify the connectivity.

clab@ubuntu:~$ ping
PING ( 56(84) bytes of data.
64 bytes from icmp_seq=1 ttl=64 time=14.2 ms
64 bytes from icmp_seq=2 ttl=64 time=8.85 ms
--- ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 8.849/11.508/14.168/2.659 ms

  1. Resource requirements are provisional. Consult with the installation guides for additional information. 

  2. The lab has been validated using these versions of the required tools/components. Using versions other than stated might lead to a non-operational setup process.