# Release 0.70

:material-calendar: 2025-09-24 · :material-list-status: [Full Changelog](https://github.com/srl-labs/containerlab/releases)

## Containerlab Go API

A big shout-out to @carlmontanari for picking up the fallen flag and working on the Containerlab Go API by decoupling the core logic from the CLI implementation. There is still some work to be done, but already now if you want to leverage Containerlab programmatically as a Go package, you should be able to do so. Check the https://pkg.go.dev/github.com/srl-labs/containerlab for the documentation and see how our CLI uses the options and passes them to the core functions to parametrize and run labs.

## IP addresses for links

We, purposefully, stayed away from dealing with configuration management and focused on the lab orchestration part. However, arguably some very basic config motions can be tolerated without crossing the line. Like configuring the IP addresses on the links between the nodes based on the user's input.

This is what has been implemented in #2791 by @kaelemc. You can now provide IPv4/IPv6 addresses in the links section of your clab file and Nokia SR Linux and Cisco IOL will pick it up and provision the addresses on the respective interfaces as you bring the lab up.

Check more on this feature in the [docs](../manual/topo-def-file.md#variables) and if you want to have that for your favorite NOS, please raise a PR.

```yaml
name: demo
topology:
  nodes:
    srl1:
      kind: nokia_srlinux
      image: ghcr.io/nokia/srlinux
    srl2:
      kind: nokia_srlinux
      image: ghcr.io/nokia/srlinux
  links:
    - endpoints: ["srl1:e1-1", "srl2:e1-1"]
      vars:
        ipv4: ["192.168.0.1/24", "192.168.0.2/24"]
        ipv6: ["2001:db8::1/64", "2001:db8::2/64"]
```

## Arrcus ArcOS

A new containerized NOS has been added to the list of supported nodes - [Arrcus ArcOS](../manual/kinds/arrcus_arcos.md). Thanks to @botisle contribution in #2794!

## Nokia SR-SIM enhancements

First, @kaelemc added support for components definition backed by the schema in addition to the usual env-var mode. This allows you to define the components in a more structured way with IDE hints and is especially useful for the VS Code extension and the UI tools. Check the updated [Nokia SR-SIM docs](../manual/kinds/sros.md#sr-sim-variants) for more details.

Then, @sacckth and @wisotzky in #2826 added support for provisioning and installing TLS certs on the SR-SIM nodes to enable TLS-secured gRPC services. By default, the certs are not issued, but when you set the [Certificate.Issue](../manual/nodes.md#certificate) flag to true, things will be set up for you automatically.

## Tools VXLAN source and destination port

@vista- added support for specifying the VXLAN source port when using the `tools vxlan` command in #2813. This allows you to set a specific source port for the VXLAN tunnel, which can be useful in certain network scenarios.

> This is a breaking change, since the flag value has been changed.

## Miscellaneous

* Updated VS Code documentation #2771
* Added caveats around packet capture for Nokia SR-SIM #2748
* Configuration save function added for MikroTik ROS #2783

## Patches

### 0.70.1

* Fix Nokia SR-SIM components attachment when mixed capitalization is used in the component names #2831

### 0.70.2

* Fix inheritance between topology defaults, kinds and nodes #2835
