Hét év fejlesztés után megjelent a Netplan 1.0 eszközkészlet, amely a hálózati interfészek beállításait tároló formátumot és a hálózati konfigurációk kezeléséhez kapcsolódó segédeszközöket fejleszti. A Netplan YAML formátumban tárolja a paramétereket, és backendeket biztosít, amelyek elvonatkoztatják a konfigurációhoz való hozzáférést a NetworkManager és a systemd-networkd számára. A projekt kódja Python és C nyelveken íródott, és GPLv3 licenc alatt terjesztik.
A Canonical munkatársai mellett a Microsoft és a Deutsche Telekom alkalmazottai is részt vesznek a projekt fejlesztésében. A Netplan már használatban van az Ubuntu 17.10-es kiadása óta, alapértelmezett backendként van jelen a NetworkManagerben az Ubuntu 23.10 Desktop-ban, és alapértelmezettként alkalmazzák a hálózati beállítások kezelésére a Debian 12 hivatalos felhő rendszerképeiben. A Netplan támogatásához kapcsolódik a cloud-init és a Calamares telepítő is. Az új Netplan 1.0 kiadás része lesz az Ubuntu 24.04 disztribúciónak, és elérhető lesz a Debian 13-ban is.
A Netplan 1.0 az első jelentős stabil kiadás, amely megszabadult néhány régóta elavult funkciótól. A technikai adósság csökkentése egyszerűsítette a kódbázis karbantartását, és megszüntette azt az akadályt, amely gátolta néhány új ötlet megvalósítását. A libnetplan1 könyvtár API stabilizálása mellett az új verzióban a következő változások figyelhetők meg:
- Egyszerre támogatja a WPA2 és WPA3 protokollokat.
- Támogatás Mellanox VF-LAG hálózati eszközökhöz SR-IOV (Single-Root I/O Virtualization) módban.
- Új ‘hairpin’ és ‘port-mac-learning’ paraméterek, amelyek hasznosak VXLAN alagút beállítások során FRRouting használatával.
- Új Python köteg (python3-netplan), amely egyszerűsíti a harmadik féltől származó rendszerekkel való integrációt.
- A ‘netplan status —diff’ parancs, amely lehetővé teszi a tényleges beállítások és a konfigurációs fájlok közötti különbségek vizuális értékelését.

A netplan alkalmazása egységesíti a NetworkManager és a systemd-networkd által használt alap konfigurációs fájlok meghatározását, megszüntetve a szükségességét annak, hogy az egyes rendszerek konfigurációs formátumának részleteit meg kell ismerni. A netplan működésének lényege, hogy a kezdeti rendszerindítás során a ‘/{lib,etc,run}/netplan/*.yaml’ fájlokból olvassa a alap hálózati beállításokat, és a konfigurációt a /run könyvtárba írja egy olyan formátumban, amely megfelelő a systemd-networkd vagy a NetworkManager további feldolgozásához.

A Netplan jellemzői:
- Az eszközök figyelmen kívül hagyása, amelyeket nem jelöltek meg a konfigurációban;
- Az egész konfiguráció csak az eredeti YAML-fájlban tárolódik (anélkül, hogy a /etc/network/interfaces-t használnánk);
- Lehetőség a konfiguráció több fájlra bontására (például a libvirt és az lxd beállítások kiemelésére);
- Rugalmas backend választási és váltási lehetőségek.
- A netplan hálózati interfészek paramétereinek leírása deklaratív szintaxis segítségével történik, amely lehetővé teszi a bonyolult hálózat struktúrájának viszonylag egyszerű leírását.
A netplan előnyei az ifupdownnal szemben:
- Deklaratív szintaxis;
- A hálózati interfészek, MAC-címek, illesztőprogramok és egyéb komponensek neveinek maszkolásának lehetősége;
- A hálózati interfészek paramétereinek hierarchiájának értelmezésekor figyelembe kell venni a kontextust, ami lehetővé teszi a beállítások megfelelő és helyes sorrendben történő átadását a kezelőknek (az ifupdown esetében a bonyolult konfigurációk értelmezésekor problémát okozhatnak a versenyhelyzetek).
Forrás: opennet.ru

