EVE-NG Linux VM SSH troubleshooting
September 20, 2025
UNetLab v2: addressing limitations
In recent years, my focus has shifted towards network automation. I still need a unified network emulator platform, but the prerequisites have evolved. Before diving into the new requirements, let’s highlight the limitations of UNetLab:
- Per Host Pod Limit: Each host can run up to 256 independent pods due to the console port limit.
- Per Lab Node Limit: Each pod/lab can run up to 127 nodes due to the console port limit.
- Per User Pod Limit: Each user can run only one pod/lab at a time due to the console port limit.
- Single Host: No support for distributed installations of UNetLab (OVS can be used, but many frame types are filtered by default).
- Config Management: Using expect scripts for getting and putting startup-configs is slow, non-predictive, and cannot cover all node types.
- No Support for Dynamips Serial Interfaces.
- No Topology Changes: Topology changes are not allowed while the lab is running, by design.
The console port limit exists because each node console has a fixed port calculated as follows:
ts_port = 32768 + 128 * tenant_id + device_id
Additionally, no more than 512 IOL nodes can run in the same lab because the device_id must be unique for each tenant.
UNetLab v2 must address these issues and meet new requirements:
- Run a distributed lab (across local or geographically distributed nodes).
- Support an unlimited number of nodes in a lab.
- Allow each user to customize a lab without affecting the original copy.
- Link serial interfaces between IOL and Dynamips.
- Configure nodes via Ansible/NAPALM/other tools.
Continue reading the post on Patreon .