diff options
author | Runar Borge <runar@borge.nu> | 2020-02-13 22:54:11 +0100 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2020-02-14 05:06:38 +0100 |
commit | dbc186526c4c470e1639dc6484cc697f16a91328 (patch) | |
tree | fc54d2ffceda5e995b0d4526368063b1cab99325 /python | |
parent | 6ec5e8cf0b7596c96be0eecea2c3c4e4b20212ca (diff) | |
download | vyos-1x-dbc186526c4c470e1639dc6484cc697f16a91328.tar.gz vyos-1x-dbc186526c4c470e1639dc6484cc697f16a91328.zip |
T2034: Disallow removal of default loopback addresses
The removal of interfaces loopback lo results in all address being
removed from the loopback interface. (also not cli controlled addresses)
In this process 127.0.0.1/8 and ::1/128 are also removed witch results
in error for services that are dependent on these adresses, this includes
eg. snmp and ssh
Removal of these addresses needs to be disallowed by the config backend
and removal of the whole config block interfaces loopback lo needs to
result in removal of all non-default addresses only.
Diffstat (limited to 'python')
-rw-r--r-- | python/vyos/ifconfig.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/python/vyos/ifconfig.py b/python/vyos/ifconfig.py index 52eab5717..e5f50130f 100644 --- a/python/vyos/ifconfig.py +++ b/python/vyos/ifconfig.py @@ -826,6 +826,9 @@ class LoopbackIf(Interface): """ # remove all assigned IP addresses from interface for addr in self.get_addr(): + if addr in ["127.0.0.1/8", "::1/128"]: + # Do not allow deletion of the default loopback addresses + continue self.del_addr(addr) # question: do we also delerte the loopback address? 127.0.0.1/8 |