Você não deseja configurar endereços na ponte e na interface física, que é o que acontece quando você tem o dhcp4: true configurado nos dois locais. Para corresponder à configuração descrita no link , o seu yaml do netplan deve ser semelhante :
$ cat /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
enp0s31f6:
dhcp4: no
bridges:
br0:
interfaces: [enp0s31f6]
dhcp4: no
addresses: [10.0.1.100/24]
gateway4: 10.0.1.1
nameservers:
addresses: [10.0.1.1]
Observe que isso usa a configuração de endereço estático. O DHCP também funciona, mas não faz sentido ter outros arquivos de configuração em seu sistema (o openvpn.conf) com informações de IP configuradas estaticamente, mas usar o DHCP para a rede do host.
Você não precisa declarar essa interface como "opcional", que se relaciona apenas com o que outras unidades systemd aguardarão para que essa interface seja configurada na inicialização.
A outra parte da configuração do ifupdown que não traduz a netplan é o comando 'promisc': up ip link set $IFACE up promisc on
. Para fazer o equivalente em um sistema usando netplan, certifique-se de ter o pacote networkd-dispatcher
instalado e, em seguida, instale o seguinte script como /usr/lib/networkd-dispatcher/dormant.d/promisc_bridge
(de propriedade do root, marcado como executável):
#!/bin/sh
%código%
set -e