I think there are actually two similar bugs here. The first I think is caused by [1], which I have confirmed is present in impish, but not focal or jammy. This can be demonstrated by the following:
$ resolvectl dns eth0 8.8.8.8 8.8.4.4 1.1.1.1
$ resolvectl dns eth0
Link 110 (eth0): 8.8.8.8 8.8.4.4 1.1.1.1
$ resolvectl dns eth0 "" # This SHOULD clear all DNS servers
$ resolvectl dns eth0
Link 110 (eth0): 8.8.4.4 1.1.1.1 # Only 8.8.8.8 was removed.
I think the second issue is caused by [2], which I have confirmed is present in impish and jammy, but not focal. This can be demonstrated by the following:
$ resolvectl domain eth0 search1.internal search2.internal search3.internal
$ resolvectl domain eth0
Link 2 (ens3): search1.internal search2.internal search3.internal
$ resolvectl domain eth0 "" # This SHOULD clear all search domains
$ resolvectl domain eth0
Link 2 (ens3): search2.internal search3.internal # Only search1.internal was removed
I think there are actually two similar bugs here. The first I think is caused by [1], which I have confirmed is present in impish, but not focal or jammy. This can be demonstrated by the following:
$ resolvectl dns eth0 8.8.8.8 8.8.4.4 1.1.1.1
$ resolvectl dns eth0
Link 110 (eth0): 8.8.8.8 8.8.4.4 1.1.1.1
$ resolvectl dns eth0 "" # This SHOULD clear all DNS servers
$ resolvectl dns eth0
Link 110 (eth0): 8.8.4.4 1.1.1.1 # Only 8.8.8.8 was removed.
I think the second issue is caused by [2], which I have confirmed is present in impish and jammy, but not focal. This can be demonstrated by the following:
$ resolvectl domain eth0 search1.internal search2.internal search3.internal
$ resolvectl domain eth0
Link 2 (ens3): search1.internal search2.internal search3.internal
$ resolvectl domain eth0 "" # This SHOULD clear all search domains
$ resolvectl domain eth0
Link 2 (ens3): search2.internal search3.internal # Only search1.internal was removed
[1] https:/ /github. com/systemd/ systemd/ issues/ 19651 /github. com/systemd/ systemd/ issues/ 23027
[2] https:/