Écrire une nouvelle réponse car tant de réponses sont juste fausses.
Ne pas modifier 50-cloud-init.yaml
, 00-installer-config.yaml
ou TOUS les fichiers générés par le système/fichiers de packages.
De https://netplan.io/examples/ :
"Pour configurer netplan, enregistrez les fichiers de configuration sous /etc/netplan/ avec une extension .yaml (par exemple /etc/netplan/config.yaml) .."
L'installateur/système l'a fait. Maintenant vous devez le remplacer.
Consultez également man netplan-generate
pour les règles régissant la lecture des configurations réseau à partir de /etc/netplan/*.yaml
(et ailleurs).
Pour mettre à jour correctement la zone netplan pour utiliser une IP statique au lieu du DHCP par défaut :
Éditez/Créez un nouveau fichier (le nombre préfixé et le trait d'union ainsi que l'extension .yaml sont importants) :
sudo nano /etc/netplan/99-custom-network.yaml
Ajoutez votre YAML correctement formaté à ce fichier. Un exemple d'IP statique :
network:
ethernets:
ens160:
dhcp4: false
addresses: [10.10.10.5/24]
gateway4: 10.10.10.1
nameservers:
addresses: [10.10.10.100,8.8.8.8,8.8.4.4]
version: 2
(Remarque : Mon périphérique réseau est ens160
- pas eth0
- ajustez selon vos besoins.)
Enregistrez.
Puis exécutez sudo netplan apply
.
Assurez-vous que votre interface réseau semble correcte et fonctionne (ip ad
/ ping
).
Puis redémarrez. Retestez.
Cela suit les instructions de netplan.io ainsi que la règle générale de ne pas modifier les fichiers existants/installés lorsque c'est possible. Dans /etc/netplan/
et des zones de configuration similaires de type conf.d/ vous devriez toujours opter pour un fichier personnalisé/nouveau numéroté haut (si possible) plutôt que de modifier des fichiers de packages installés.
C'est pourquoi ils ont des fichiers numérotés dans ces zones de configuration (dans /etc/netplan/ et autres). Plus le numéro sur le fichier est élevé, plus il est lu en dernier.
Ainsi, quelque chose avec "99-" ajouté devant sera généralement lu en dernier et REMPLACERA tout ce qui a été répété avant. Donc, si une interface réseau est définie en DHCP dans "00-installer-config.yaml", et/ou "50-cloud.init.yaml", les paramètres pour la même interface dans un fichier "99-*.yaml" remplaceront tout ce qui a été lu précédemment.
Généralement ces fichiers YAML installés NE seront PAS écrasés, mais ce n'est pas une logique valide pour ne pas suivre la "norme" conf.d d'utiliser des fichiers personnalisés pour remplacer et éviter de modifier des fichiers installés. Cela ne prend pas de temps supplémentaire. Ajoutez un fichier dans netplan. C'est tout. Donc, il n'y a aucune excuse comme j'ai pu le constater dans les commentaires du type "eh bien, ça a fonctionné jusqu'à présent...".
Ainsi, modifier les fichiers *.yaml netplan par défaut fonctionnera techniquement (généralement), mais vous devriez éviter de les utiliser quand c'est possible.