HomeDedibox NetworkNetworkHow to
Configure Network with Netplan on Ubuntu
Jump toUpdate content

Network configuration with Netplan on Ubuntu

Reviewed on 31 July 2023 • Published on 20 August 2021
Requirements:

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.

Important:

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.

OptionExampleDescription
addresses192.168.1.2/24, 62.210.123.123/32A list of IP addresses to be assigned to an interface. The format uses CIDR notation.
gateway4192.168.1.1The IP address of your local IPv4 gateway.
dhcp4trueSet whether DHCP is enabled for IPv4 – true of false
dhcp6trueSet 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
See Also