Après sept années de développement, la version de la boîte à outils Netplan 1.0 a été publiée, développant un format de stockage des paramètres d'interface réseau et des utilitaires associés pour gérer les configurations réseau. Netplan fournit le stockage des paramètres au format YAML et fournit des backends qui résument l'accès à la configuration pour NetworkManager et systemd-networkd. Le code du projet est écrit en Python et C et est distribué sous licence GPLv3.
Outre les employés de Canonical, des employés de Microsoft et de Deutsche Telekom participent également au développement du projet. Netplan est déjà utilisé dans Ubuntu à partir de la version 17.10, impliqué dans Ubuntu 23.10 Desktop est le backend par défaut dans NetworkManager et est utilisé par défaut pour gérer les paramètres réseau dans les versions officielles. Debian La version 12 de Netplan est désormais disponible pour les systèmes cloud. La prise en charge de Netplan a également été implémentée pour cloud-init et l'installateur Calamares. La nouvelle version 1.0 de Netplan sera incluse dans la distribution. Ubuntu 24.04 et sera livré en Debian 13.
Netplan 1.0 marque la première version stable significative, éliminant certaines fonctionnalités obsolètes depuis longtemps. La suppression de la dette technique a rendu la base de code plus facile à maintenir et a supprimé les obstacles qui empêchaient la mise en œuvre de certaines nouvelles idées. En plus de stabiliser l'API de la bibliothèque libnetplan1, la nouvelle version contient les modifications suivantes :
- Prise en charge simultanée de WPA2 et WPA3.
- Prise en charge des périphériques réseau Mellanox VF-LAG avec SR-IOV (Single-Root I/O Virtualization).
- Nouvelles options "hairpin" et "port-mac-learning" utiles lors de la configuration des tunnels VXLAN à l'aide de FRRouting.
- Un nouvel ensemble de frameworks pour le langage Python (python3-netplan), simplifiant l'intégration avec des systèmes tiers.
- La commande « netplan status -diff » permet d'évaluer visuellement les différences entre l'état réel des paramètres et les fichiers de configuration.

L'utilisation de netplan unifie la définition des fichiers de configuration de base utilisés par NetworkManager et systemd-networkd, éliminant ainsi le besoin d'apprendre les détails des formats de configuration de chaque système. L'essence du fonctionnement de netplan est que pendant le processus de démarrage initial, il lit les paramètres réseau de base à partir des fichiers « /{lib,etc,run}/netplan/*.yaml » et écrit la configuration dans le répertoire /run dans un format approprié. pour un traitement ultérieur dans systemd-networkd ou NetworkManager.

Caractéristiques du Netplan :
- Ignorer les appareils non marqués dans la configuration ;
- Toute la configuration est stockée uniquement dans le fichier source YAML (sans utiliser /etc/network/interfaces) ;
- Possibilité de diviser la configuration en plusieurs fichiers (par exemple, pour exporter les paramètres libvirt et lxd) ;
- Options flexibles pour choisir et modifier le backend.
- La description des paramètres de l'interface réseau dans netplan est réalisée à l'aide d'une syntaxe déclarative, qui permet de décrire assez simplement la structure d'un réseau complexe.
Parmi les avantages de netplan par rapport à ifupdown :
- Syntaxe déclarative ;
- Possibilité d'utiliser des masques pour les noms d'interface réseau, les adresses MAC, les pilotes et autres composants ;
- Prise en compte du contexte lors de l'analyse de la hiérarchie des paramètres d'interface réseau, ce qui vous permet de transmettre correctement et dans le bon ordre les paramètres aux gestionnaires (dans ifupdown, lors de l'analyse de configurations complexes, les problèmes causés par les conditions de concurrence ne peuvent être exclus).
Source: opennet.ru
