diff --git a/src/network/networkd-address.c b/src/network/networkd-address.c index 44f77db3be..b083b632b1 100644 --- a/src/network/networkd-address.c +++ b/src/network/networkd-address.c @@ -709,6 +709,10 @@ int address_remove(Address *address) { link_ref(link); address_enter_removing(address); + + /* The operational state is determined by address state and carrier state. Hence, if we remove + * an address, the operational state may be changed. */ + link_update_operstate(link, true); return 0; }