MikroTik RouterOS Cloud-hosted router#
MikroTik RouterOS cloud hosted router is identified with vr-ros
or vr-mikrotik_ros
kind in the topology file. It is built using vrnetlab project and essentially is a Qemu VM packaged in a docker container format.
Managing vr-ros nodes#
MikroTik RouterOS node launched with containerlab can be managed via the following interfaces:
Info
Default user credentials: admin:admin
Interfaces mapping#
vr-ros container can have up to 30 interfaces and uses the following mapping rules:
eth0
- management interface connected to the containerlab management networketh1
- first data interface, mapped to theether2
interface of the RouterOSeth2+
- second and subsequent data interface
When containerlab launches vr-ros node, it will assign IPv4/6 address to the eth0
interface. These addresses can be used to reach management plane of the router.
Data interfaces eth1+
needs to be configured with IP addressing manually using CLI/management protocols.
Node configuration#
vr-ros nodes come up with a basic "blank" configuration where only the management interface and user is provisioned.
User defined config#
It is possible to make ROS nodes to boot up with a user-defined startup config instead of a built-in one. With a startup-config
property of the node/kind a user sets the path to the config file that will be mounted to a container and used as a startup config:
With such topology file containerlab is instructed to take a file myconfig.txt
from the current working directory, copy it to the lab directory for that specific node under the /ftpboot/config.auto.rsc
name and mount that dir to the container. This will result in this config to act as a startup config for the node via FTP. Mikrotik will automatically import any file with the .auto.rsc suffix.
File mounts#
When a user starts a lab, containerlab creates a node directory for storing configuration artifacts. For vr-ros
kind containerlab creates ftpboot
directory where the config file will be copied as config.auto.rsc.