Network configuration with Netplan on Ubuntu
- You have an account and are logged into the Dedibox console
- You have created and installed a dedicated server
Since the release of its version 18.04, Bionic Beaver, Ubuntu has switched to Netplan for the configuration of network interfaces. It is a YAML based configuration system, which simplifies the configuration process.
Configuration files
This tool replaces the /etc/network/interfaces
configuration file that had been previously used to configure the network interfaces on Ubuntu.
The configuration files are now located as YAML files in /etc/netplan/*.yaml
.
Make sure you respect the YAML standards when you edit the file, as syntax errors might cause errors in your configuration.
The 01-netcfg.yaml
file is used to configure the first interface. Below you can find the default configuration for an interface using 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
Following you can see a list of the most common configuration options and a description of how they are used.
Option | Example | Description |
---|---|---|
addresses | 192.168.1.2/24, 62.210.123.123/32 | A list of IP addresses to be assigned to an interface. The format uses CIDR notation. |
gateway4 | 192.168.1.1 | The IP address of your local IPv4 gateway. |
dhcp4 | true | Set whether DHCP is enabled for IPv4 – true of false |
dhcp6 | true | Set whether DHCP is enabled for IPv6 – true or false |
Configuring failover IP with Netplan
To configure a failover IP, you have to edit the file /etc/netplan/01-netcfg.yaml
and configure static networking for your server. The IP addresses have to be written with their CIDR notation. The netmask is /24
for the principal IP of the server and /32
for each failover IP. Your configuration file should look like in the following example:
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" ]
Once you have edited and saved the file you can reload the configuration with the following command:
sudo netplan apply
Configuring failover IP for virtual machines
When you configure a failover IP in a virtual machine, you have to specify the route that will be used by the VM. Your configuration file should look like the following example:
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