Netplan et comment le préparer correctement

Ubuntu est un système d'exploitation incroyable, je n'ai pas travaillé avec le serveur Ubuntu depuis longtemps et cela ne servait à rien de mettre à niveau mon bureau à partir de la version stable. Et il n'y a pas si longtemps, j'ai dû faire face à la dernière version du serveur Ubuntu 18.04, ma surprise n'a pas connu de limites lorsque j'ai réalisé que j'étais infiniment en retard et que je ne pouvais pas mettre en place un réseau car le bon vieux système de configuration des interfaces réseau par la modification du fichier /etc/network /interfaces a échoué. Et qu’est-ce qui est venu le remplacer ? quelque chose de terrible et à première vue complètement incompréhensible, découvrez « Netplan ».

Pour être honnête, au début, je ne comprenais pas ce qui se passait et "pourquoi est-ce nécessaire, parce que tout était si pratique", mais après un peu de pratique, j'ai réalisé que cela avait son propre charme. continuons avec ce qu'est Netplan, c'est un nouvel utilitaire pour les paramètres réseau dans Ubuntu, du moins "Je n'ai rien vu de tel dans d'autres distributions." Une différence significative entre Netplan est que la configuration est écrite dans le langage YAML, oui, vous avez bien entendu YAML, les développeurs ont décidé de rester dans l'air du temps (et peu importe à quel point ils l'élogent, je pense toujours que c'est un langage terrible). Le principal inconvénient de ce langage est qu'il est très sensible aux espaces, regardons la configuration à l'aide d'un exemple.

Les fichiers de configuration se trouvent le long du chemin /etc/netplan/filename.yaml, entre chaque bloc il doit y avoir + 2 espaces.

1) L'en-tête standard ressemble à ceci :

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4:no

Regardons ce que nous avons fait maintenant :

  • réseau : - c'est le début du bloc de configuration.
  • renderer: networkd - nous indiquons ici le gestionnaire de réseau que nous utiliserons, c'est soit networkd, soit NetworkManager
  • version : 2 - ici, si je comprends bien, se trouve la version YAML.
  • ethernets : - ce bloc indique que nous allons configurer le protocole ethernet.
  • enps0f0 : — indique quelle carte réseau nous allons configurer.
  • dhcp4:no - désactivez DHCP v4, pour 6 v6 dhcp6 respectivement

2) Essayons d'attribuer des adresses IP :

    enp3s0f0:
      dhcp4:no
      macaddress: bb:11:13:ab:ff:32
      addresses: [10.10.10.2/24, 10.10.10.3/24]
      gateway4: 10.10.10.1
      nameservers:
        addresses: 8.8.8.8

Ici, nous définissons le serveur Poppy, IPv4, Gateway et DNS. Notez que si nous avons besoin de plus d’une adresse IP, nous les écrivons séparées par des virgules avec un espace obligatoire après.

3) Et si nous avons besoin collage?

  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1

  • bonds : - un bloc expliquant que nous allons configurer le bonding.
  • bond0 : - nom d'interface arbitraire.
  • interfaces : - un ensemble d'interfaces collectées dans un bond-ding, "comme indiqué précédemment, s'il y a plusieurs paramètres, nous les décrivons entre crochets."
  • paramètres : — décrire le bloc de paramétrage
  • mode : – spécifiez le mode par lequel la liaison fonctionnera.
  • mii-monitor-interval : — définit l'intervalle de surveillance sur 1 seconde.

À l'intérieur du bloc nommé bond, vous pouvez également configurer des paramètres tels que les adresses, la passerelle4, les routes, etc.

Nous avons ajouté de la redondance pour notre réseau, il ne reste plus qu'à installer vlan et la configuration peut être considérée comme terminée.

vlans: 
    vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      gateway: 10.10.10.1
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true

  • vlans : — déclare le bloc de configuration du vlan.
  • vlan10 : — nom arbitraire de l'interface vlan.
  • id : — balise de notre vlan.
  • lien : — interface à travers laquelle le vlan sera accessible.
  • routes : — déclarer un bloc de description d'itinéraire.
  • — to : — définit l'adresse/le sous-réseau vers lequel la route est nécessaire.
  • via : – spécifiez la passerelle via laquelle notre sous-réseau sera accessible.
  • on-link : — nous indiquons que les itinéraires doivent toujours être enregistrés lorsque le lien est établi.

Faites attention à la façon dont je place les espaces ; c'est très important dans YAML.

Nous avons donc décrit les interfaces réseau, créé des liaisons et même ajouté des VLAN. Appliquons notre configuration, la commande netplan apply vérifiera notre configuration pour les erreurs et l'appliquera en cas de succès. Ensuite, la configuration sera levée d'elle-même au redémarrage du système.

Après avoir collecté tous les blocs de code précédents, voici ce que nous avons obtenu :

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0f0:
      dhcp4: no
    ensp3s0f1:
      dhcp4: no
  bonds:
    bond0:
      dhcp4: no
      interfaces: [enp3s0f0, enp3s0f1]
      parameters: 
        mode: 802.3ad
        mii-monitor-interval: 1
  vlan10:
      id: 10
      link: bond0
      dhcp4: no
      addresses: [10.10.10.2/24]
      routes:
        - to: 10.10.10.2/24
          via: 10.10.10.1
          on-link: true
  vlan20:
    id: 20
    link: bond0
    dhcp4: no
    addresses: [10.10.11.2/24]
    gateway: 10.10.11.1
    nameserver:
      addresses: [8.8.8.8]
    

Maintenant, notre réseau est prêt à fonctionner, tout s'est avéré moins effrayant qu'il y paraissait au début et le code s'est avéré très beau et lisible. PC merci pour netplan il y a un excellent manuel sur le lien https://netplan.io/.

Source: habr.com

Ajouter un commentaire