diff --git a/TODO b/TODO index f0f2bcb12d..380fd494f2 100644 --- a/TODO +++ b/TODO @@ -78,9 +78,6 @@ Features: - ipv4ll with multiple interfaces doesn't work when both dhcp and ipv4ll is used. for some reasons the kernel will currently pick an ipv4ll source address to reach non-ipv4ll gateways. - - dhcp and ipv4ll should probably be skipped for "lo" devices, even - if the user has a catchall .network file installed, that might - theoretically match it. - the DHCP lease data (such as NTP/DNS) is still made available when a carrier is lost on a link. It should be removed instantly. - .network setting that allows overriding of the hostname to send to the dhcp server diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 1b7b1898c4..f726e2b570 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -1250,6 +1250,12 @@ static int link_initialized_and_synced(sd_rtnl *rtnl, sd_rtnl_message *m, } else if (r < 0) return r; + if (link->flags & IFF_LOOPBACK) { + log_debug_link(link, "matching network ignored for loopback link"); + link_enter_unmanaged(link); + return 1; + } + r = network_apply(link->manager, network, link); if (r < 0) return r;