Is there a way to automatically add network interfaces to systemd-networkd and/or netplan?
Solution 1:
systemd-networkd can apply a configuration to multiple interfaces at once, using a wildcard [Match]
.
For example:
# cat /etc/systemd/network/99-wildcard.network
[Match]
Name=en*
[Network]
DHCP=yes
This will bring up DHCP on any interface whose name starts with en
(which is every wired interface).
Solution 2:
This is possible using a match rule within the netplan config, for those who'd prefer to keep it all in one place. Here's a simple solution I've been using in my pre-configured images for USB interfaces with varying device names:
/etc/netplan/01-netcfg.yaml:
network:
version: 2
renderer: networkd
ethernets:
eth:
match:
name: en*
dhcp4: yes
Further details here: Netplan reference