]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: always enable IPv4 ACD for statically configured IPv4LL address 19947/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 15 Jun 2021 21:54:47 +0000 (06:54 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 16 Jun 2021 04:19:26 +0000 (13:19 +0900)
src/network/networkd-address.c

index afcbb12473bd00f6c0fc1303969cf5f1b287f08b..04ad2aa69d4beab3dea59e312ba6a76533695bde 100644 (file)
@@ -2115,6 +2115,13 @@ static int address_section_verify(Address *address) {
             !FLAGS_SET(address->duplicate_address_detection, ADDRESS_FAMILY_IPV6))
                 address->flags |= IFA_F_NODAD;
 
+        if (address->family == AF_INET && in4_addr_is_link_local(&address->in_addr.in) &&
+            !FLAGS_SET(address->duplicate_address_detection, ADDRESS_FAMILY_IPV4)) {
+                log_debug("%s: An IPv4 link-local address is specified, enabling IPv4 Address Conflict Detection (ACD).",
+                          address->section->filename);
+                address->duplicate_address_detection |= ADDRESS_FAMILY_IPV4;
+        }
+
         return 0;
 }