Se presenta la versión 1.1 de la herramienta Netplan, que desarrolla el formato para almacenar configuraciones de interfaces de red y las utilidades asociadas para gestionar configuraciones de red. Netplan permite almacenar parámetros en formato YAML y proporciona backends que abstraen el acceso a la configuración para NetworkManager y systemd-networkd. Esta herramienta se utiliza en la distribución Ubuntu desde la versión 17.10 y en las compilaciones de Debian 12 para sistemas en la nube. El proyecto es desarrollado por Canonical con la participación de empleados de Microsoft y Deutsche Telekom. El código del proyecto está escrito en Python y C, y se distribuye bajo la licencia GPLv3.
El funcionamiento de netplan se basa en leer configuraciones de red de los archivos '/{lib,etc,run}/netplan/*.yaml' durante el proceso de arranque inicial y escribir la configuración en el directorio /run en un formato adecuado para su posterior procesamiento en systemd-networkd o NetworkManager. Toda la configuración se almacena únicamente en el archivo YAML original sin utilizar '/etc/network/interfaces', permitiendo dividir la configuración en varios archivos, por ejemplo, para separar en archivos distintos las configuraciones de libvirt y lxd. La descripción de los parámetros de las interfaces de red se realiza mediante una sintaxis declarativa que permite describir la estructura de una red compleja de manera bastante sencilla.
A diferencia del formato ifupdown, en netplan se aplica una sintaxis declarativa; existe la posibilidad de usar máscaras para nombres de interfaces de red, direcciones MAC, controladores y otros componentes; al analizar la jerarquía de parámetros de las interfaces de red se toma en cuenta el contexto, lo que permite transmitir correctamente las configuraciones a los manejadores (en ifupdown, al analizar configuraciones complejas, pueden surgir problemas debido a condiciones de carrera).
En esta nueva versión:
- Capacidad de redefinir la lógica del servicio systemd-networkd-wait-online para esperar interfaces de red internas (link-local) específicas y aquellas que son enrutables (con estado routable).
- Soporte para cambiar la configuración del modo eswitch (embedded-switch-mode) para interfaces de red sin funciones virtuales (VF, virtual-function) en dispositivos SR-IOV (Single Root I/O Virtualization).
- Soporte para banderas que permiten influir en el analizador de configuración para ignorar configuraciones individuales incorrectas sin detener la generación de toda la configuración del backend.
- Se han realizado correcciones que resuelven problemas específicos de ProtonVPN y Microsoft Azure Linux.
Fuente: opennet.ru
