Configuration réseau avec Netplan sur Ubuntu 18.04

Avec la version 18.04 (Bionic Beaver) Ubuntu est passé à Netplan pour la configuration des interfaces réseau.

C'est un système de configuration basé sur YAML, qui simplifie le processus de configuration.

Fichiers de configuration

Ce nouvel outil remplace le fichier de configuration (/etc/network /interfaces) qui avait été précédemment utilisé pour configurer les interfaces réseau sur Ubuntu.
Les fichiers de configuration se trouvent maintenant sous la forme de fichiers YAML à l'emplacement /etc/netplan/*.yaml.

Assurez-vous de respecter les normes YAML lorsque vous modifiez le fichier. Une erreur de syntaxe peut engendrer une mauvaise lecture du fichier de configuration.

Un fichier 01-netcfg.yaml est utilisé pour configurer la première interface.

Vous trouverez ci-dessous la configuration par défaut pour une interface utilisant DHCP :

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0f0:
      dhcp4: yes

Vous pouvez voir ci-dessous une liste des options de configuration les plus courantes et une description de leur utilisation.

Option Exemple Description
addresse [192.168.1.2/24, 62.210.123.123/32] Une liste d'adresses IP à affecter à une interface. Le format utilise la notation CIDR.
gateway4 192.168.1.1 L'adresse IP de votre passerelle IPv4 locale.
dhcp4 true Définir si DHCP est activé pour IPv4 - true ou false
dhcp6 true Définir si DHCP est activé pour IPv6 - true ou false

Configuration d'une IP failover avec Netplan

Pour configurer une adresse IP failover, vous devez éditer le fichier /etc/netplan/01-netcfg.yaml et configurer une mise en réseau statique pour votre serveur.

Les adresses IP doivent être écrites avec leur notation CIDR. Le masque de réseau est:

  • /24 pour l'adresse IP principale du serveur
  • /32 pour chaque adresse IP failover

Votre fichier de configuration devrait ressembler à l'exemple suivant:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0f0:
      addresses: [163.172.123.123/24, 212.83.123.123/32]
      gateway4: 163.172.123.1
      nameservers:
        addresses: [ "62.210.16.6", "62.210.16.7" ]

Une fois le fichier édité et sauvegardé, recharger la configuration avec la commande suivante: sudo netplan apply

Configuration d'une adresse IP failover dans une machine virtuelle

Lorsque vous configurez une adresse IP failover dans une machine virtuelle, vous devez spécifier la route qui sera utilisée par la machine virtuelle. Votre fichier de configuration devrait ressembler à ceci:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      dhcp6: no
      addresses: [fail.over.ip.address/32]
      gateway4: 62.210.0.1
      nameservers:
        addresses: [62.210.16.6, 62.210.16.7]
      routes:
      - to: 62.210.0.1/32
        via: fail.over.ip.address
        scope: link

Configuration de l'interface RPN sur un Dedibox

L'interface réseau principale de votre Dedibox est configurée automatiquement lors de l'installation du serveur.
Pour utiliser le RPN avec votre serveur, vous devez manuellement configurer la deuxième interface.

Étape 1 - Détecter les noms d'interfaces réseau de votre serveur

Le nom des interfaces réseau peut être différent d'un serveur à un autre, car cela dépend de la configuration matérielle.
Pour détecter le nom de votre interface RPN, lancez ifconfig -a et vérifiez la liste de toutes les interfaces correspondant à l'interface RPN en comparant les adresses MAC (1). Le nom de l'interface RPN sera affiché dans la liste (2):

Etape 2 - Configuration du fichier d'interfaces

Dans notre exemple, l'interface réseau RPN est nommée enp1s0f1. Nous devons l'ajouter au fichier /etc/netplan/01-netcfg.yaml avec une configuration via DHCP:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0f0:
      dhcp4: yes
    enp1s0f1:
      dhcp4: yes

Une fois que vous avez édité et sauvegardé le fichier, vous pouvez recharger la configuration avec la commande suivante: sudo netplan apply

Étape 3 - Testez la configuration

Une fois la nouvelle configuration activée, votre serveur obtiendra l'adresse IP RPN en quelques secondes à partir d'un serveur DHCP. Vous pouvez vérifier la configuration en exécutant ifconfig:

Vous remarquez que l'interface a obtenu son adresse IP RPN et vous pouvez tester la connexion en faisant un ping à san-1.rpn.online.net:

Configuration de la passerelle RPNv1

Certains services comme le RPN-SAN sont actuellement disponibles uniquement dans le RPNv1 et pour les utiliser, vous devez configurer une passerelle RPNv1. Vous pouvez demander un bloc des adresses RPNv1 dans votre console de gestion et configurer VLAN pour votre RPN comme suit:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0f0:
      addresses: [ "163.172.123.123/24" ]
      gateway4: 163.172.123.1
      nameservers:
        addresses: [ "62.210.16.6", "62.210.16.7" ]
    enp1s0f1: {}
    
  vlans:
    vlan.2002:
        id: 2002
        link: enp1s0f1
        addresses: [ "10.88.109.228/28", "192.168.1.2/24" ]
        gateway4: 10.88.109.225
        routes:
          - to: 10.88.0.0/13
            via: 10.88.109.225
            on-link: true