Changes in Release 1.0.x¶
Jeroen van Bemmel contributed support for Nokia SR Linux and SR OS (including initial device configuration, OSPF, ISIS, BGP, and SR-MPLS).
Stefano Sasso contributed support for Mikrotik RouterOS and VyOS devices. Both device types support IPv4, IPv6, OSPF and BGP. More details…
Pete Crocker contributed support for Fortinet devices. You can configure IPv4, IPv6 and OSPF. More details… and caveats.
Added Vagrant box names for IOSv, CSR and vSRX on VirtualBox. You still have to build the boxes, but at least you won’t have to change the default settings.
New Functionality in Release 1.0.6¶
Plugin packages and module extensions.
Device-specific module attributes (more details)
Custom deployment templates are deployed as part of initial device configuration.
netlab initial command includes
--fastoption which uses free strategy in Ansible playbooks for faster configuration deployment.
Multi-access (LAN) links in containerlab
New Functionality in Release 1.0.5¶
Vagrant libvirt plugin release 0.7.0 destroys vagrant-libvirt virtual network during vagrant destroy process. netlab up now creates the virtual network if needed (by Stefano Sasso)
XML definition of vagrant-libvirt virtual network has been changed to support up to 20 lab devices (by Pete Crocker)
Cumulus VX and generic Linux memory requirements have been increased to 1GB (by Pete Crocker)
Pre- and post-start lab hooks (needed to support vagrant-libvirt provider) (by Stefano Sasso)
Custom configuration deployment templates can be applied to individual nodes
A unified framework for extending lab topology attributes.
Document lab topology transformation steps
New Functionality in Release 1.0.4¶
Links without IP addressing (set prefix to false) – contributed by Stefano Sasso
New Functionality in Release 1.0.3¶
Skip devices that cannot be configured (SR Linux and Fortinet as of release 1.0.3) during netlab initial or netlab up configuration process.
Execute configuration-specific task list to configure devices that cannot use template-based configuration.
New Functionality in Release 1.0.2¶
You can set node attributes on all members in a custom group with the node_data group attribute.
Experimental release of custom plugins. I don’t expect the plugin structure to change (much), but there is no well-defined API to set data structures in the rest of the netlab code (yet).
New Functionality in Release 1.0.1¶
Custom groups can be specified in topology file to create custom inventory groups or set inventory group variables.
Custom groups can specify custom configuration templates that are deployed during the netlab up process.
quiet CLI flag sets Ansible STDOUT callback to dense to minimize the clutter generated by Ansible playbooks invoked by netlab initial, netlab config or netlab up commands.
debug flag of netlab up and netlab down commands can be used to display commands that would be executed without executing them.
New Functionality in Release 1.0¶
netlab up enables LLDP passthrough on Linux bridges created with libvirt Vagrant plugin.
Reorder module list in node data based on module dependencies (#86)
Check module node attributes in group node_data dictionary (#76)
Topology-level module attributes can be set even when a module is used by a single node.
Use ‘netlab up’ and ‘netlab down’ in ‘netlab test’ command
Fixed Cumulus OSPF and BGP templates (contributed by Pete Crocker)
Fixed XML definition for vagrant-libvirt (contributed by Pete Crocker)
Set node data with ‘-s’ CLI parameter (reported by Jeroen van Bemmel)
Improved ‘failed to run subprocess’ error messages (contributed by Jeroen van Bemmel)
Verbosity level (-v flag) is an integer, not a boolean flag. Verbosity level is passed to Ansible playbooks (reported by Jeroen van Bemmel)
Don’t use Python warnings for error messages
Add no attribute change on route reflection configuration to Arista EOS BGP template
BGP module crashed in a lab with
Vagrant 2.2 uses QEMU sessions on Fedora, resulting in inability to create virtual networks. Disable QEMU sessions in libvirt Vagrantfile template. (found by Leo Kirchner)
IOS XE uses no ip domain lookup instead of no ip domain-lookup. (contributed by Stefano Sasso)
Moved platform-specific caveats into a separate document (contributed by Pete Crocker)
Added tutorial links
Cleaned up lab installation instructions
Remove obsolete CLI commands and related documentation
Remove Ubuntu installation Ansible playbook (replaced by netlab install)