summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/network/networkd-dhcp6.c3
-rw-r--r--src/network/networkd-link.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c
index f83ff54369..e67e51f7ef 100644
--- a/src/network/networkd-dhcp6.c
+++ b/src/network/networkd-dhcp6.c
@@ -211,6 +211,9 @@ int dhcp6_configure(Link *link) {
assert(link);
+ if (link->dhcp6_client)
+ return 0;
+
r = sd_dhcp6_client_new(&client);
if (r < 0)
return r;
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
index f97600e2b5..ba64473cd3 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -2089,7 +2089,8 @@ static int link_configure(Link *link) {
return r;
}
- if (link_dhcp6_enabled(link)) {
+ if (link_dhcp6_enabled(link) ||
+ link_ipv6_accept_ra_enabled(link)) {
r = dhcp6_configure(link);
if (r < 0)
return r;