dhcp: fallback to internal DHCP plugin if plugin does not support address family

Maybe DHCP plugins should be configurable per address family and be
re-loadable via SIGHUP. But that just adds complexity while we actually
want to get away from these plugins.

Nowadays we always have the "internal" DHCP plugin, which is known to
support both IPv4 and IPv6. One day, we should get rid of all plugins
and only use one implementation (that works well). The "internal" plugin
is supposed to be that.

That also means, that we are not going to add more (external) DHCP
plugins and we are not going to invest much work in the existing plugins
(except the "internal" plugin).

Some DHCP plugins are known to not support IPv6. If the user selects
"dhcpcd" we should just fallback to the internal plugin. What's the
point of letting the activation fail? Probably users shouldn't use
"dhcpcd" plugin anyway, but that's a different story. This fallback
could be a problem with forward compatibility if we ever would add IPv6
support to "dhcpcd". But we won't.

Also, we are going to add "n-dhcp4" as replacement for the systemd based
code. For a time, there will be an experimental plugin "nettools" that
eventually will become the new "internal" plugin. Until that happens,
we want for IPv6 automatically fallback to systemd based "internal"
plugin. This patch will make that simple.
14 jobs for th/dhcp-plugin-fallback-for-addr-family in 35 minutes and 7 seconds (queued for 1 second)
Status Job ID Name Coverage
  Test
passed #348041
allowed to fail
checkpatch

00:01:30

manual #348046
allowed to fail manual
t_centos:7.5.1804
passed #348047
t_centos:7.6.1810

00:17:22

passed #348050
t_debian:9

00:24:05

passed #348052
t_debian:sid

00:17:41

manual #348051
allowed to fail manual
t_debian:testing
passed #348042
t_fedora:28

00:32:14

passed #348043
t_fedora:29

00:35:04

passed #348044
t_fedora:30

00:34:32

manual #348045
allowed to fail manual
t_fedora:rawhide
passed #348048
t_ubuntu:16.04

00:18:14

passed #348049
t_ubuntu:18.04

00:14:26

 
  External
passed NetworkManager test verification

passed NetworkManager test verification

05:30:53