summaryrefslogtreecommitdiff
path: root/python/vyos/ifconfig
diff options
context:
space:
mode:
Diffstat (limited to 'python/vyos/ifconfig')
-rw-r--r--python/vyos/ifconfig/interface.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/python/vyos/ifconfig/interface.py b/python/vyos/ifconfig/interface.py
index 36f258301..892495dec 100644
--- a/python/vyos/ifconfig/interface.py
+++ b/python/vyos/ifconfig/interface.py
@@ -901,6 +901,11 @@ class Interface(Control):
if isinstance(new_addr, str):
new_addr = [new_addr]
+ # ensure DHCP/DHCPv6 is stopped (when not configured explicitly)
+ for proto in ['dhcp', 'dhcpv6']:
+ if proto not in new_addr:
+ self.del_addr(proto)
+
# determine IP addresses which are assigned to the interface and build a
# list of addresses which are no longer in the dict so they can be removed
cur_addr = self.get_addr()