# Release 0.73

:material-calendar: 2026-02-08 · :material-list-status: [Full Changelog](https://github.com/srl-labs/containerlab/releases)

## F5 BIG-IP VE

A warm welcome to the [`f5_bigip-ve`](../manual/kinds/f5_bigipve.md) kind! With this addition, Containerlab users can now spin up F5 BIG-IP Virtual Edition appliances as part of their network labs. Built on top of [vrnetlab](../manual/vrnetlab.md), the BIG-IP VE node features management passthrough, day-0 automation for initial configuration and password setup, and configurable resource sizing via environment variables.

Whether you're testing application delivery, security policies, or load balancing configurations, BIG-IP VE integrates seamlessly into your Containerlab topologies.

Thanks @leothelyon17 #2989

## Copy saved running configs

The [`save`](../cmd/save.md) command got a new `--copy` flag that copies saved configuration files to a user-specified directory. Each save creates a timestamped copy alongside a symlink that always points to the latest version, making it trivial to track configuration changes over time and roll back when needed.

```bash
containerlab save -t lab.clab.yml --copy ./startup-configs
```

This is particularly handy for keeping a history of configuration snapshots outside of the lab directory, enabling easy diffing between saves and reliable restoration workflows. Node kinds that do not report a saved config path are silently skipped.

> With `save` command you can save the running configuration on all the nodes in the lab. Prior to this change, the saved configuration resided only within the container and was not easily accessible. Now, you can copy the saved configuration to a specified directory on your host machine, making it much easier to access and manage.

Thanks @asadarafat #3003

## Git variables in topology names

For users running labs in CI/CD pipelines or multi-tenant environments, topology names can now include the magic variables `__gitBranch__` and `__gitHash__`. These are replaced at deploy time with the current Git branch name (slashes swapped with hyphens) and the short commit hash, making it effortless to identify which branch and commit a running lab belongs to.

```yaml
name: mylab-__gitBranch__-__gitHash__
```

If the topology file is not part of a Git repository, both variables gracefully resolve to `none`.

Thanks @vista- #2951

## Netem events

Building on the real-time events streaming introduced in 0.72, the [`events`](../cmd/events.md) command now also tracks network emulation (netem) impairment changes. When you apply delay, jitter, packet loss, or rate limiting via `containerlab tools netem set`, these changes appear as interface update events in real time -- giving you full observability into link impairment changes alongside container and interface lifecycle events.

Why did we need it? To make [Containerlab VS Code extension](../manual/gui/vsc-extension.md) real time without polling!

Thanks @FloSch62 #2998

## Arista cEOS certificate auto-loading

Arista cEOS nodes now automatically generate and mount TLS certificates during node initialization. Certificates are created for the node's name and management IP, signed by a local self-signed CA, and mounted into the container. This makes it straightforward to use TLS-secured gRPC and RESTCONF services on cEOS nodes without any manual certificate management.

Thanks @ryan-thornton-bloom #3012

## Node and lab name validation

Lab and node names are now validated against regex at topology parse time. This catches invalid characters and naming issues early -- before the lab deployment even starts -- and warns against DNS incompatible characters, providing clearer error messages and preventing hard-to-debug failures down the line.

Thanks @juliusliu02 #3018

## Kubeconfig for k8s_kind

The `k8s_kind` node kind now supports a custom kubeconfig path via the `extras.k8s_kind.deploy.kubeconfig` topology parameter. This lets you control where Kind writes the cluster's kubeconfig file, which is especially useful when managing multiple clusters or integrating with existing Kubernetes tooling. The path can be absolute or relative to the topology file location.

Thanks @robertvolkmann #2977

## SR-SIM enhancements

The Nokia SR-SIM experience continues to improve. Configuration generation for SR-SIM nodes has been simplified, reducing the boilerplate users need to deal with when defining multi-component topologies. Additionally, Containerlab now validates that the correct image type is used for each kind -- an SR-SIM image will be rejected when used with the `nokia_sros` kind and vice-versa, catching a common source of confusion before it leads to cryptic errors.

Thanks @schavezc #3021 #3020

## Ignite runtime removal

The Ignite container runtime, originally added to support Cumulus VX, has been removed. The `weaveworks/ignite` package has been unsupported for a long time, and with Nvidia's decision to not support Cumulus VX container we decided to sunset Ignite runtime in Containerlab. It was hard to maintain/test and had a very small user base.

> Cumulus VX users can still run containerized CVX, but with the `docker` runtime instead of `ignite`.

Thanks @FloSch62 #3031

## Config command removal

The `clab config` command has been removed. #2994

## Miscellaneous

- Added container ID to `/etc/hosts` entries for easier container identification. Thanks @steiler #2991
- Added quotes for cEOS environment variables on startup #3007
- Fixed SR Linux overlay config copying for large configs. Thanks @vista- #2999
- Ensured config directory exists for `generic_vm` before deploying. Thanks @robertvolkmann #2973
- Lowercased the slot in management IP getter for SR-SIM. Thanks @kaelemc #3025
- Added missing SFM types to the containerlab schema #3030
- Added Clabernetes configuration documentation. Thanks @bayars #3034
- Improved SD-WAN components documentation. Thanks @torbbang #3042
- Enhanced documentation for node exec property. Thanks @robinchrist #3001
- Added support for Rocky 10 and Ubuntu 25.10 in quick-setup script. Thanks @Oliver-Mustoe #3033 #3024
- Support env var to set containerlab version in the quick install script #2993
- Bumped Docker API to 28.5 #3029
