Review: Unnumbered Interfaces in netlab

A while ago, Chris Parker published a nice blog post explaining how to configure unnumbered interfaces with IS-IS in Junos. It’s well worth reading, but like my Unnumbered Ethernet Interfaces blog post, it only covers one network operating system. What if you want to do something similar on another platform?

How about using the collective efforts of the team developing device configuration templates for netlab? As of December 2023 netlab supports:

Don’t trust the above figures, we keep improving netlab. Check netlab documentation, but even that might not be up to date (some people find it easier to add a feature than to document it). netlab show modules command is the ultimate source-of-truth.

All you have to do to test the unnumbered Ethernet interface functionality on the device of your choice is to store the following YAML snippet in topology.yml and execute netlab up:

defaults.device: eos        # Change to your preferred device type
addressing.p2p.ipv4: True   # Use IPv4 unnumbered P2P links
module: [ isis ]            # Change to OSPF if needed
nodes: [ r1, r2 ]
links: [ r1-r2 ]

Best of all, you need absolutely no license to run netlab or any of the underlying software (Linux, Ubuntu, KVM, libvirt, Vagrant, Docker, containerlab, Ansible, and a dozen Python libraries).

Unfortunately, you will have to deal with the networking vendors that make you jump through the hoops to get the VM images or containers1 and invest some time in building Vagrant boxes because those same vendors can’t be bothered to add another step to the build process.

  1. Notable exceptions: downloading Cumulus Linux, FRR, Nokia SR Linux, and VyOS requires no extra effort. Junos vEvolved is free to download, but you must build a Vagrant box. Downloading Arista vEOS/cEOS and Cisco Nexus OS requires registration. ↩︎

Latest blog posts in Unnumbered IPv4 Interfaces series

Add comment