After seven years of development, the release of the instrumentation Netplan 1.0 has been published. This release focuses on developing the format for storing network interfaces and related utilities for managing network configurations. NetPlan stores parameters in YAML format and provides backends that abstract access to configuration for NetworkManager and Systemd-Networkd. The project code is written in Python and C and is available under the gplv3 license.
The development of the project has involved employees from Canonical, Microsoft, and Deutsche Telekom. NetPlan is already being used in Ubuntu since the release of 17.10 and is involved in Ubuntu 23.10 Desktop as a default backend in NetworkManager. It is also used by default to control network settings in official DEBIAN 12 assemblies for cloud systems. NetPlan support has also been implemented for Cloud-Init and Calamares installer. The new release of NetPlan 1.0 will be included in the Ubuntu 24.04 distribution and will also be delivered to Debian 13.
Netplan 1.0 is considered the first significant stable release, allowing for the removal of some long-obsolete features. This led to the simplification of the code base maintenance and eliminated obstacles that hindered the implementation of new ideas. In addition to API stabilization, the new version of LibnetPlan1 libraries includes several changes:
- Simultaneous support for WPA2 and WPA3.
- Support for network devices Mellanox VF-LAG with sr-iov (Single-root I/O Virtualization).
- New parameters like “Hairpin” and “Port-Mac-Learning,” useful in setting up VXLAN tunnels using Frrauting.
- A new set of bindings for Python (Python3-NetPlan) to simplify integration with third-party systems.
- A new command “Netplan status –diff,” allowing clear evaluation of differences between actual settings and configuration files.
The use of NetPlan standardizes the determination of basic configuration files used in NetworkManager and Systemd-Networkd, eliminating the need to delve into the details of the configuration formats of each system. NetPlan reads basic network settings from the files during the