Important Rules for Working with Netplan Templates
-
- Spaces: Never use the
Tabkey for indentation. Use spaces only (typically a 2-space or 4-space indentation step). - Validation: Always run the
sudo netplan trycommand before applying changes permanently. This prevents you from losing remote access to your server if there is a syntax error.
- Spaces: Never use the
To find out interfaces name use ip link or networkctl status
# DHCP
network:
version: 2
renderer: networkd
ethernets:
ens18:
dhcp4: true
# IP Static
network:
version: 2
renderer: networkd
ethernets:
ens18:
dhcp4: false
addresses:
- 192.168.1.100/24
nameservers:
addresses:
- 8.8.8.8
- 1.1.1.1
routes:
- to: default
via: 192.168.1.1
# More than one IP on the interface
network:
version: 2
renderer: networkd
ethernets:
ens18:
dhcp4: false
addresses:
- 192.168.1.100/24
- 10.0.0.50/24
routes:
- to: default
via: 192.168.1.1
# IP Static + rename the interface. Exm: ens18 to eth0 using a MAC address
network:
version: 2
renderer: networkd
ethernets:
eth0:
match:
macaddress: 00:00:00:00:20:04
set-name: eth0
dhcor4: false
addresses:
- 192.168.88.104/24
nameservers:
addresses:
- 8.8.8.8
routes:
- to: default
via: 192.168.88.254
# Bonding / LACP
network:
version: 2
renderer: networkd
ethernets:
ens18:
dhcp4: false
ens19:
dhcp4: false
bonds:
bond0:
interfaces:
- ens18
- ens19
dhcp4: true
parameters:
mode: 802.3ad
mii-monitor-interval: 100
# Bridge (KVM/LXC)
network:
version: 2
renderer: networkd
ethernets:
ens18:
dhcp4: false
bridges:
br0:
interfaces:
- ens18
dhcp4: false
addresses:
- 192.168.1.150/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses:
- 8.8.8.8
parameters:
stp: false
forward-delay: 0