Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transparent management datapath #286

Open
9 of 16 tasks
hellt opened this issue Dec 2, 2024 · 1 comment
Open
9 of 16 tasks

Transparent management datapath #286

hellt opened this issue Dec 2, 2024 · 1 comment

Comments

@hellt
Copy link
Owner

hellt commented Dec 2, 2024

This is an overarching issue/tracker for the progress on delivering the transparent mgmt datapath

When vrnetlab spawns a container that runs a VM inside it uses qemu user networking mode to "stitch" the container's eth0 (management) interface to a management interface of a VM.

This approach has a major drawback of using a "fake" IP address assigned to the VM's management interface from the IP range of the qemu user network, which is in vrnetlab set to 10.0.0.0/24. Because of this, all VMs spawned by vrnetlab/containerlab have the same IP (10.0.0.15/24) assigned to their management interface.

This, of course, is not ideal, and it a big pita when trying to manage the containerlab lab nodes with some NMS, as they typically use the IP addresses from the mgmt interface to identify the nodes.

Thanks to @vista- work in #268 there has been added a mode to vrnetlab where the interface of a wrapping container (eth0) is transparently mapped (using tc) to the VM't tap0 interface, which allows the VMs to use the same IP address for its management interface as the eth0 interface of the wrapping container. Read more details about this in #268

Since this change is quite major, it is toggle-able, by setting the CLAB_MGMT_PASSTHROUGH env var to a string value of "true" to enable this new behavior.

The main development PR is #287. It should be used as a base for other vendor implementations. When we are happy with the coverage we will merge #287 into master.

Support for vendors

Nokia

SR OS

Nokia SR OS has to be refactored to support this mode, the work is done by @michelredondo in #272

Juniper

vJUNOS-X

Initial delivery in #268

Juniper vSRX

Added in #288

Cisco

  • Cisco ASAv
  • Cisco Cat8kv
  • Cisco Cat9kv
  • Cisco CSR1kv
  • Cisco FTDv
  • Cisco Nexus 9k (n9kv)
  • Cisco NX-OS
  • Cisco IOSv
  • Cisco XRv
  • Cisco XRv9k

all of the above added in #290 by @kaelemc

SONiC

Huawei

  • VRP

Arista

  • vEOS

MikroTik

  • RouterOS

Dell

  • FTOSv
@hellt
Copy link
Owner Author

hellt commented Dec 14, 2024

with #287 merged into master we get a first batch of transparent mgmt interface-enabled systems.

Others will be added based upon a request. The issue stays open for tracking of this progress

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant