Run OcNOS in your lab

The free OcNOS-SP VM runs in GNS3, EVE-NG, containerlab and netlab. Register once, then add OcNOS routers to the lab tool you already use.

OcNOS-SP CLILayer 2, Layer 3, MPLS and multicast features, with a 365-day license.
2 vCPUs, 4 GB RAMPer node, on a host with hardware virtualization (KVM).
For feature testingData plane forwarding is limited. Use it to test features and configurations, not throughput.

Pick your lab tool

The GNS3 package contains the QEMU image, a GNS3 appliance file and a ready BGP L3VPN project.

  1. Download the GNS3 package and decompress the image:
    xz -d OcNOS-SP-PLUS-x86-7.0.0-262-GA.qcow2.xz
    On Windows, 7-Zip can decompress the file.
  2. In GNS3, choose File > Import appliance, select the .gns3a file from the package and point it at the .qcow2 image.
  3. Drag OcNOS nodes into a project, connect them and start them. The console opens over telnet; log in with ocnos / ocnos.

For a quick start, import BGP-L3VPN-Proj.gns3project instead. It contains five OcNOS routers already configured for BGP L3VPN.

The EVE-NG package contains the QEMU image, the node template ocnos.yml, an icon and the configurations for a five-router BGP L3VPN lab.

  1. Copy the template to /opt/unetlab/html/templates/intel/ (amd/ instead of intel/ on AMD hosts) and the icon to /opt/unetlab/html/images/icons/.
  2. Create the image folder. Its name must start with the template name followed by a hyphen:
    mkdir -p /opt/unetlab/addons/qemu/ocnos-7.0.0-262
    cd /opt/unetlab/addons/qemu/ocnos-7.0.0-262
    xz -d OcNOS-SP-PLUS-x86-7.0.0-262-GA.qcow2.xz
    mv OcNOS-SP-PLUS-x86-7.0.0-262-GA.qcow2 virtioa.qcow2
    /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
  3. Add OcNOS nodes to a lab, connect them and start them. Log in with ocnos / ocnos.

Read more about running OcNOS in EVE-NG.

containerlab runs OcNOS with the ipinfusion_ocnos kind. vrnetlab packages the VM in a container.

  1. Download the KVM image, decompress it with xz -d and copy the .qcow2 file into the ipinfusion/ocnos directory of the srl-labs vrnetlab repository.
  2. Build the container image with make docker-image. The 7.0.0-262 image builds as vrnetlab/ipinfusion_ocnos:7.0.0-262.
  3. Use it in a topology and deploy with containerlab deploy:
    name: ocnos-lab
    topology:
      nodes:
        r1:
          kind: ipinfusion_ocnos
          image: vrnetlab/ipinfusion_ocnos:7.0.0-262
        r2:
          kind: ipinfusion_ocnos
          image: vrnetlab/ipinfusion_ocnos:7.0.0-262
      links:
        - endpoints: ["r1:eth1", "r2:eth1"]

A node takes about three minutes to boot. eth0 is the management port; data ports start at eth1. The login for this kind is admin / admin@123.

netlab lists OcNOS as device ocnos and runs it on containerlab, so build the vrnetlab image first (see the containerlab tab). OcNOS support is in the netlab development branch and is not yet in a tagged release.

  1. Build vrnetlab/ipinfusion_ocnos:7.0.0-262 as in the containerlab tab.
  2. Describe the lab and start it with netlab up:
    defaults.device: ocnos
    provider: clab
    module: [ ospf ]
    nodes: [ r1, r2 ]
    links: [ r1-r2 ]
  3. netlab configures addressing and OSPF on both routers. Connect with netlab connect r1.

Read the netlab OcNOS caveats for supported features.

Running OcNOS in a lab: common questions

Which lab tools can run the free OcNOS VM?
GNS3, EVE-NG, containerlab and netlab. The same OcNOS-SP VM also runs as a plain guest on KVM, VirtualBox or VMware.
How much does each OcNOS node need?
2 vCPUs and 4 GB of RAM per node, on a host with hardware virtualization (KVM). A five-router lab therefore needs about 20 GB of RAM for the routers alone.
What can I test with the OcNOS VM?
The OcNOS CLI for Layer 2, Layer 3, MPLS and multicast features. Data plane forwarding is limited, so the VM is for feature and configuration testing, not for performance tests or full-bandwidth traffic tests.
How long is the VM license?
The OcNOS VM comes with a 365-day license.
What is the default login?
ocnos / ocnos on the VM console. Nodes built with the containerlab kind use its default login: admin / admin@123.