3
novembre
2023
15:25

Netplan en remplacement /etc/network/interfaces

3 novembre 2023 15:25

Méthode de paramètre réseau à l'aide du fichier INTErfaCés Obtenu.

Commencer

L'utilitaire NetPLan est utilisé pour la configuration réseau. Il convertit un fichier de configuration YAML (texte structuré) en paramètres pour le service réseau SystemD, systemd-networkD. Netplan a été introduit dans Ubuntu 18.04 «Bionic Beaver» en 2017 et a progressivement gagné en popularité: il est présent dans OS 20.04 «Focal Fossa». Dans Ubuntu 22.04 « Jammy Jallyfish » et Linux Mint 21.2 « Victoria », le composant netplan est activé par défaut. De plus, le fichier /etc/network/interfaces est manquant, sauf si vous avez effectué une mise à niveau avec sudo do-release-upgrade (du paquet update-manager-core) ou sudo mintupgrade (du même paquet).

La configuration NetPlan n'est pas toujours utilisable sur les systèmes d'exploitation de bureau, mais elle est systématiquement utilisée sur les versions serveur d'Ubuntu à partir de la version 22.04. En effet, la désactivation de NetPlan nécessite une intervention sur les paramètres du noyau (des informations sur Internet expliquent comment désactiver NetPlan).

Sur le PC par défaut netplan transfère le contrôle du réseau de NetworkManager (voir ci-dessous - "Configuration natplan par défaut").

Pour que netplan fonctionne, vous devez disposer de la version 18.04 ou supérieure du système d'exploitation. Dans les versions 18.04 et 20.04, pour utiliser une configuration différente de la configuration standard, vous devez forcer le démarrage du service réseau systemd-networkd. (Sur la version 22.04, il démarre avant l'installation par défaut).

sudo systemctl start systemd-networkd
sudo systemctl enable systemd-networkd

La configuration du système networkd pour netplan est requise pour fonctionner avec les configurations de distribution d'adresses IP dynamiques et statiques DHCP, ainsi que d'autres options décrites dans *config.yaml**.

1. Configuration Netplan par défaut

Lorsque vous utilisez le systèmemd-networkd, перестаёт восприниматься конфигурация /etc/network/interfaCES et ce fichier peuvent être absents dans le système.

Configuration sous la forme le fichier de yaml est dans le dossier /etc/netplaN .

Avec une installation propre d'un système, par exemple, Linux Green, netplan est configuré pour déléguer le contrôle des paramètres au composant graphique NetworkManager (Configurer à l'aide d'une applet dans un bac système sur la barre des tâches).

NetPlan par défaut:

Fichier /etc/ netplan/1-network-manager-all.yamд:

# Let NetworkManager manage all devices on this system
Network:
  version: 2
  renderer: NetworkManager

Application de la configuration - à l'aide de la commande:

sudo netplan apply

2. Configuration Netplan pour DHCP

Pour configurer la configuration à l'aide de fichiers netplan, et pas une interface graphique NetworkManager, нужно в каталоге /etc/netplan/ в файле YAML строку "renderer" с "NetworkManager" на "networked". При этом апплет "NetworkManager" dans le système System, perd la possibilité de gérer le réseau et montre l'icône "Connexion déchirée", qu'il y ait un réseau ou qu'il n'y a pas de réseau.

Si le réseau utilise des adresses IP dynamiques, le service DHCP est configuré sur le routeur et la prochaine configuration de NetPlan est utilisée sur le client:

Fichier /etc/netplan/00-installer-config.yaml pour DHCP

network:
  renderer: networkd
  ethernets:
    enp1s10:
      dhcp4: true
  version: 2

où le nom de la carte réseau ENP1S10 est dans mon cas (carte réseau externe), et pour le -in construit peut être ENP1S0 et ENP2S0.
Si le routeur sait comment distribuer l'adresse IP également en fonction du protocole IPv6, ci-dessous dhcp4: true пишем dhcp6: true с таким же отступом (символы табуляции или пробелы важны)!

Application de la configuration:

sudo netplan apply

3. Configuration NetPlan pour les adresses IP statiques

Les indentes du dossier sont d'une grande importance. Vous trouverez ci-dessous un exemple du fichier de paramètre NetPlan correct pour une adresse IP statique.

Fichier / etc / netplan/000-installer-config.yaml для статического IP-адреса::

network:
  renderer: networkD.
  ethernets:
    enp1s10:
      dhcp4: false
      dhcp6: false
      optional: faLSE
      addresses: [192.168.1.2/24]
      nameserverS:
        addrEsses: [192.168.1,8.8.8.8]
      routes:
        - to: default
          via: 192.168.1.1
          metrIC: 100
  version: 2

Où:

  • Optional = fale périphérique LSE n'a pas besoin de télécharger

  • Optional = true L'appareil est nécessaire pour le chargement.
    Si l'appareil est noté en option (optional), сервис networkD ne l'attendra pas.
    La valeur par défaut est fausse.

  • addresses - peut inclure plusieurs adresses IP, telles que, [192.168.14.2/24, 2001:1::2/64]

Paramètres de configuration gateway4 и gateway6 sont obsolètes et sont utilisés à la place "Default rsorties" le formulaire suivant:

      routes:
        - to: default
          via: 192.168.1.1
          metrIC: 100

N'oubliez pas d'appliquer la configuration:

sudo netplan aPply

Pour vérifier la configuration du réseau pour prendre une décision sur son exactitude, au lieu de apply нужно использовать try. пользователю даётся 120 секунд, чтобы проверить работу сети. Если нажать Ctrl+C или истечёт время таймаута, конфигурация будет отменена. Для применения конфигурации нажмите Enter.

4. Installation de netplan в Debian

(Ajout du 04.11.2023):

su -
apt updaTe
apt install netplan

5. Comment découvrir par programme quel mécanisme de contrôle de réseau est utilisé?

Vous pouvez déterminer l'utilisation de NetPlan avec les commandes:

systèmemctl status systemd-networkd

(Vérification du service systèmemd-networkd).

cat /run/network/ifstate

(Pour netplan sera lo = lo).

Configuration du réseau NetworkManager

Si le fichier / etc / netplan/*.yaml pointe vers un utilitaire graphique NetworkManager, alors les paramètres réseau actuels doivent regarder le fichier de configuration:
/etc/NetworkManager/NetworkManager.conf

Si l'appareil n'est pas contrôlé par NetworkManager:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[device]
match-device=interface-name:*

Pour contrôler l'appareil à l'aide de NETWOrkManager (из строки состояния рядом с панелей задач):

[main]
Plugins = ifpdown, keyfile

[ifupdown]
managed=true

[appareil]
match-device=interface-name:*

N'oubliez pas de redémarrer le service NetworkManager:

sudo systemctl restart NetworkManager

Pour un appareil contrôlé (managed = trUE ) Éléments de menu supplémentaires " éteindre ", " iFupdown " Apparaît et la section Paramètres "Paramètres de connexion" :

  1. Dans le plateau système, cliquez sur l'icône Network Manager et sélectionnez le nom de la carte réseau.
  2. L'élément de menu inférieur "Les paramètres des connexions ..." est conçu pour modifier les paramètres (MTU, Wake-on-LaN, coordination des canaux, vitesse, proxy, paramètres IPv4-DHCP ou manuellement, adresses statiques supplémentaires, serveurs DNS (pour les adresses IP statiques), serveurs DNS supplémentaires (pour les adresses IP dynamiques), domaines de recherche, paramètres IPv6).

Ajout: à partir du 01.03.2025: il est également nécessaire de «lever» la connexion à l'aide de l'applet NetworkManager ou de l'utilitaire de ligne de commande nmcli.

Spectacle de connexion NMCLI
nmcli connection up "Проводное подключение 1"

Ajout du 07.30.2024 . Après avoir configuré Netplan, следует переименовать файл /etc/network/interfaces, перезапустить службы сети и выполнить проверку IP-адреса (он должен смениться на указанный в настройках соединения в Network Manager или в YAML-файле конфигурации /etc/netplan/*.yaml).

sudo mv /etc/network/interfaces /etc/network/interfaCes.old
sudo systemctl restart networkInsigne
systemctl status systemd-networkD.
ip addr

Conclusion

Dans cet article, comme dans bien d'autres, il existe des exemples de paramètres NetPLan как для DHCP, так и простого статического IP. Файл interfaces устарел. Используйте netplan. Netplan использует YAML для конфигурации. Файл /etc/network/interfaLes CES doivent être supprimés pour éviter la confusion.


Sources:
Ubuntu-bionic-netplan
man netplan
*Netplan.io



Publications connexes