Description of problem: Nmstate-1.4 introduced global DNS, it can be applied and changed well, but cannot be removed or changed to auto DNS. Version-Release number of selected component (if applicable): nmstate-1.4.3-1.el8_6.x86_64 nispor-1.2.3-1.el8.x86_64 NetworkManager-1.36.0-13.el8_6.x86_64 DISTRO=RHEL-8.6.0-updates-20230417.5 How reproducible: 100% Steps to Reproduce: # make sure there is no any suitable interface to store these DNS echo " dns-resolver: config: search: - usersys.redhat.com server: - 8.8.8.8 - 10.68.5.26 " | nmstatectl apply echo " dns-resolver: config: {} " | nmstatectl apply Actual results: 2023-04-18 16:16:27,936 root DEBUG Nmstate version: 1.4.3 2023-04-18 16:16:27,937 root DEBUG Applying desire state: {'dns-resolver': {'config': {}}} 2023-04-18 16:16:28,000 root DEBUG NetworkManager version 1.36.0 2023-04-18 16:16:28,006 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:28,008 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:28,010 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:28,036 root DEBUG Async action: Create checkpoint started 2023-04-18 16:16:28,038 root DEBUG Checkpoint /org/freedesktop/NetworkManager/Checkpoint/4 created for all devices 2023-04-18 16:16:28,038 root DEBUG Async action: Create checkpoint finished 2023-04-18 16:16:28,054 root DEBUG Nispor: current network state {'ifaces': {'ens3f1': {'name': 'ens3f1', 'iface_type': 'ethernet', 'state': 'up', 'mtu': 1500, 'flags': ['broadcast', 'lower_up', 'multicast', 'running', 'up'], 'mac_address': '90:e2:ba:8a:d8:39', 'permanent_mac_address': '90:e2:ba:8a:d8:39', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': False}, 'features': {'fixed': {'fcoe-mtu': False, 'highdma': True, 'loopback': False, 'netns-local': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ipv4': False, 'tx-checksum-ipv6': False, 'tx-fcoe-segmentation': False, 'tx-gso-list': False, 'tx-gso-robust': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tcp-ecn-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'esp-hw-offload': True, 'esp-tx-csum-hw-offload': True, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'rx-all': False, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-hashing': True, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp-gro-forwarding': False, 'rx-udp_tunnel-port-offload': True, 'rx-vlan-filter': True, 'rx-vlan-hw-parse': True, 'tx-checksum-ip-generic': True, 'tx-checksum-sctp': True, 'tx-esp-segmentation': True, 'tx-generic-segmentation': True, 'tx-gre-csum-segmentation': True, 'tx-gre-segmentation': True, 'tx-gso-partial': True, 'tx-ipxip4-segmentation': True, 'tx-ipxip6-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True, 'tx-udp-segmentation': True, 'tx-udp_tnl-csum-segmentation': True, 'tx-udp_tnl-segmentation': True, 'tx-vlan-hw-insert': True}}, 'coalesce': {'rx_usecs': 1, 'tx_usecs': 0}, 'ring': {'rx': 512, 'rx_max': 4096, 'tx': 512, 'tx_max': 4096}, 'link_mode': {'auto_negotiate': False, 'ours': ['FIBRE', '10000baseT/Full', 'Pause'], 'speed': 10000, 'duplex': 'full'}}, 'sriov': {'vfs': []}}, 'ens4f1': {'name': 'ens4f1', 'iface_type': 'ethernet', 'state': 'up', 'mtu': 1500, 'flags': ['broadcast', 'lower_up', 'multicast', 'running', 'up'], 'mac_address': '00:0a:f7:05:83:42', 'permanent_mac_address': '00:0a:f7:05:83:42', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': False}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'highdma': True, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-ntuple-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gso-list': False, 'tx-gso-robust': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'loopback': False, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-hw': False, 'rx-gro-list': False, 'rx-hashing': True, 'rx-lro': True, 'rx-udp-gro-forwarding': False, 'rx-udp_tunnel-port-offload': True, 'rx-vlan-filter': True, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-gre-csum-segmentation': True, 'tx-gre-segmentation': True, 'tx-gso-partial': True, 'tx-ipxip4-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True, 'tx-udp_tnl-csum-segmentation': True, 'tx-udp_tnl-segmentation': True, 'tx-vlan-hw-insert': True}}, 'coalesce': {'rx_usecs': 24, 'tx_usecs': 48}, 'ring': {'rx': 453, 'rx_max': 4078, 'tx': 4078, 'tx_max': 4078}, 'link_mode': {'auto_negotiate': False, 'ours': ['1000baseT/Full', 'FIBRE', '10000baseT/Full', 'Pause', 'Asym_Pause'], 'speed': 10000, 'duplex': 'full'}}, 'sriov': {'vfs': []}}, 'ens3f0': {'name': 'ens3f0', 'iface_type': 'ethernet', 'state': 'up', 'mtu': 1500, 'flags': ['broadcast', 'lower_up', 'multicast', 'running', 'up'], 'mac_address': '90:e2:ba:8a:d8:38', 'permanent_mac_address': '90:e2:ba:8a:d8:38', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': False}, 'features': {'fixed': {'fcoe-mtu': False, 'highdma': True, 'loopback': False, 'netns-local': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ipv4': False, 'tx-checksum-ipv6': False, 'tx-fcoe-segmentation': False, 'tx-gso-list': False, 'tx-gso-robust': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tcp-ecn-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'esp-hw-offload': True, 'esp-tx-csum-hw-offload': True, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'rx-all': False, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-hashing': True, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp-gro-forwarding': False, 'rx-udp_tunnel-port-offload': True, 'rx-vlan-filter': True, 'rx-vlan-hw-parse': True, 'tx-checksum-ip-generic': True, 'tx-checksum-sctp': True, 'tx-esp-segmentation': True, 'tx-generic-segmentation': True, 'tx-gre-csum-segmentation': True, 'tx-gre-segmentation': True, 'tx-gso-partial': True, 'tx-ipxip4-segmentation': True, 'tx-ipxip6-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True, 'tx-udp-segmentation': True, 'tx-udp_tnl-csum-segmentation': True, 'tx-udp_tnl-segmentation': True, 'tx-vlan-hw-insert': True}}, 'coalesce': {'rx_usecs': 1, 'tx_usecs': 0}, 'ring': {'rx': 512, 'rx_max': 4096, 'tx': 512, 'tx_max': 4096}, 'link_mode': {'auto_negotiate': False, 'ours': ['FIBRE', '10000baseT/Full', 'Pause'], 'speed': 10000, 'duplex': 'full'}}, 'sriov': {'vfs': []}}, 'eno2': {'name': 'eno2', 'iface_type': 'ethernet', 'state': 'down', 'mtu': 1500, 'flags': ['broadcast', 'multicast', 'up'], 'mac_address': '20:04:0f:fa:75:b1', 'permanent_mac_address': '20:04:0f:fa:75:b1', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': True}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'loopback': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-hashing': False, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp_tunnel-port-offload': False, 'rx-vlan-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gre-csum-segmentation': False, 'tx-gre-segmentation': False, 'tx-gso-list': False, 'tx-gso-partial': False, 'tx-gso-robust': False, 'tx-ipxip4-segmentation': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-udp_tnl-csum-segmentation': False, 'tx-udp_tnl-segmentation': False, 'tx-vlan-hw-insert': True, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'highdma': True, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-udp-gro-forwarding': False, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True}}, 'coalesce': {'rx_max_frames': 5, 'rx_max_frames_irq': 5, 'rx_usecs': 20, 'rx_usecs_irq': 0, 'stats_block_usecs': 0, 'tx_max_frames': 53, 'tx_max_frames_irq': 5, 'tx_usecs': 72, 'tx_usecs_irq': 0}, 'ring': {'rx': 200, 'rx_max': 2047, 'tx': 511, 'tx_max': 511}, 'link_mode': {'auto_negotiate': True, 'ours': ['10baseT/Half', '10baseT/Full', '100baseT/Half', '100baseT/Full', '1000baseT/Half', '1000baseT/Full', 'Autoneg', 'TP'], 'speed': 0, 'duplex': 'unknown'}}}, 'ens4f0': {'name': 'ens4f0', 'iface_type': 'ethernet', 'state': 'up', 'mtu': 1500, 'flags': ['broadcast', 'lower_up', 'multicast', 'running', 'up'], 'mac_address': '00:0a:f7:05:83:40', 'permanent_mac_address': '00:0a:f7:05:83:40', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': False}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'highdma': True, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-ntuple-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gso-list': False, 'tx-gso-robust': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'loopback': False, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-hw': False, 'rx-gro-list': False, 'rx-hashing': True, 'rx-lro': True, 'rx-udp-gro-forwarding': False, 'rx-udp_tunnel-port-offload': True, 'rx-vlan-filter': True, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-gre-csum-segmentation': True, 'tx-gre-segmentation': True, 'tx-gso-partial': True, 'tx-ipxip4-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True, 'tx-udp_tnl-csum-segmentation': True, 'tx-udp_tnl-segmentation': True, 'tx-vlan-hw-insert': True}}, 'coalesce': {'rx_usecs': 24, 'tx_usecs': 48}, 'ring': {'rx': 453, 'rx_max': 4078, 'tx': 4078, 'tx_max': 4078}, 'link_mode': {'auto_negotiate': False, 'ours': ['1000baseT/Full', 'FIBRE', '10000baseT/Full', 'Pause', 'Asym_Pause'], 'speed': 10000, 'duplex': 'full'}}, 'sriov': {'vfs': []}}, 'eno1': {'name': 'eno1', 'iface_type': 'ethernet', 'state': 'up', 'mtu': 1500, 'flags': ['broadcast', 'lower_up', 'multicast', 'running', 'up'], 'ipv4': {'addresses': [{'address': '10.73.131.141', 'prefix_len': 23, 'valid_lft': '42815sec', 'preferred_lft': '42815sec'}]}, 'ipv6': {'addresses': [{'address': '2620:52:0:4982:2204:fff:fefa:75b0', 'prefix_len': 64, 'valid_lft': '2591988sec', 'preferred_lft': '604788sec'}, {'address': 'fe80::2204:fff:fefa:75b0', 'prefix_len': 64, 'valid_lft': 'forever', 'preferred_lft': 'forever'}]}, 'mac_address': '20:04:0f:fa:75:b0', 'permanent_mac_address': '20:04:0f:fa:75:b0', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': True}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'loopback': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-hashing': False, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp_tunnel-port-offload': False, 'rx-vlan-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gre-csum-segmentation': False, 'tx-gre-segmentation': False, 'tx-gso-list': False, 'tx-gso-partial': False, 'tx-gso-robust': False, 'tx-ipxip4-segmentation': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-udp_tnl-csum-segmentation': False, 'tx-udp_tnl-segmentation': False, 'tx-vlan-hw-insert': True, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'highdma': True, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-udp-gro-forwarding': False, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True}}, 'coalesce': {'rx_max_frames': 5, 'rx_max_frames_irq': 5, 'rx_usecs': 20, 'rx_usecs_irq': 0, 'stats_block_usecs': 0, 'tx_max_frames': 53, 'tx_max_frames_irq': 5, 'tx_usecs': 72, 'tx_usecs_irq': 0}, 'ring': {'rx': 200, 'rx_max': 2047, 'tx': 511, 'tx_max': 511}, 'link_mode': {'auto_negotiate': True, 'ours': ['10baseT/Half', '10baseT/Full', '100baseT/Half', '100baseT/Full', '1000baseT/Half', '1000baseT/Full', 'Autoneg', 'TP'], 'peer': ['10baseT/Half', '10baseT/Full', '100baseT/Half', '100baseT/Full', '1000baseT/Full', 'Autoneg', 'Pause'], 'speed': 1000, 'duplex': 'full'}}}, 'lo': {'name': 'lo', 'iface_type': 'loopback', 'state': 'unknown', 'mtu': 65536, 'flags': ['loopback', 'lower_up', 'running', 'up'], 'ipv4': {'addresses': [{'address': '127.0.0.1', 'prefix_len': 8, 'valid_lft': 'forever', 'preferred_lft': 'forever'}]}, 'ipv6': {'addresses': [{'address': '::1', 'prefix_len': 128, 'valid_lft': 'forever', 'preferred_lft': 'forever'}]}, 'mac_address': '00:00:00:00:00:00', 'ethtool': {'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'highdma': True, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'loopback': True, 'netns-local': True, 'rx-all': False, 'rx-checksum': True, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-hashing': False, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp_tunnel-port-offload': False, 'rx-vlan-filter': False, 'rx-vlan-hw-parse': False, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': True, 'tx-checksum-ipv4': False, 'tx-checksum-ipv6': False, 'tx-checksum-sctp': True, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gre-csum-segmentation': False, 'tx-gre-segmentation': False, 'tx-gso-partial': False, 'tx-gso-robust': False, 'tx-ipxip4-segmentation': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': True, 'tx-nocache-copy': False, 'tx-scatter-gather-fraglist': True, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp_tnl-csum-segmentation': False, 'tx-udp_tnl-segmentation': False, 'tx-vlan-hw-insert': False, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': True}, 'changeable': {'rx-gro': True, 'rx-gro-list': False, 'rx-udp-gro-forwarding': False, 'tx-generic-segmentation': True, 'tx-gso-list': True, 'tx-sctp-segmentation': True, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': True, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True, 'tx-udp-segmentation': True}}}}, 'eno3': {'name': 'eno3', 'iface_type': 'ethernet', 'state': 'down', 'mtu': 1500, 'flags': ['broadcast', 'multicast', 'up'], 'mac_address': '20:04:0f:fa:75:b2', 'permanent_mac_address': '20:04:0f:fa:75:b2', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': True}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'loopback': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-hashing': False, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp_tunnel-port-offload': False, 'rx-vlan-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gre-csum-segmentation': False, 'tx-gre-segmentation': False, 'tx-gso-list': False, 'tx-gso-partial': False, 'tx-gso-robust': False, 'tx-ipxip4-segmentation': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-udp_tnl-csum-segmentation': False, 'tx-udp_tnl-segmentation': False, 'tx-vlan-hw-insert': True, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'highdma': True, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-udp-gro-forwarding': False, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True}}, 'coalesce': {'rx_max_frames': 5, 'rx_max_frames_irq': 5, 'rx_usecs': 20, 'rx_usecs_irq': 0, 'stats_block_usecs': 0, 'tx_max_frames': 53, 'tx_max_frames_irq': 5, 'tx_usecs': 72, 'tx_usecs_irq': 0}, 'ring': {'rx': 200, 'rx_max': 2047, 'tx': 511, 'tx_max': 511}, 'link_mode': {'auto_negotiate': True, 'ours': ['10baseT/Half', '10baseT/Full', '100baseT/Half', '100baseT/Full', '1000baseT/Half', '1000baseT/Full', 'Autoneg', 'TP'], 'speed': 0, 'duplex': 'unknown'}}}, 'eno4': {'name': 'eno4', 'iface_type': 'ethernet', 'state': 'down', 'mtu': 1500, 'flags': ['broadcast', 'multicast', 'up'], 'mac_address': '20:04:0f:fa:75:b3', 'permanent_mac_address': '20:04:0f:fa:75:b3', 'ethtool': {'pause': {'rx': True, 'tx': True, 'auto_negotiate': True}, 'features': {'fixed': {'esp-hw-offload': False, 'esp-tx-csum-hw-offload': False, 'fcoe-mtu': False, 'hw-tc-offload': False, 'l2-fwd-offload': False, 'loopback': False, 'netns-local': False, 'rx-all': False, 'rx-fcs': False, 'rx-gro-hw': False, 'rx-hashing': False, 'rx-lro': False, 'rx-ntuple-filter': False, 'rx-udp_tunnel-port-offload': False, 'rx-vlan-filter': False, 'rx-vlan-hw-parse': True, 'rx-vlan-stag-filter': False, 'rx-vlan-stag-hw-parse': False, 'tls-hw-record': False, 'tls-hw-rx-offload': False, 'tls-hw-tx-offload': False, 'tx-checksum-fcoe-crc': False, 'tx-checksum-ip-generic': False, 'tx-checksum-sctp': False, 'tx-esp-segmentation': False, 'tx-fcoe-segmentation': False, 'tx-gre-csum-segmentation': False, 'tx-gre-segmentation': False, 'tx-gso-list': False, 'tx-gso-partial': False, 'tx-gso-robust': False, 'tx-ipxip4-segmentation': False, 'tx-ipxip6-segmentation': False, 'tx-lockless': False, 'tx-scatter-gather-fraglist': False, 'tx-sctp-segmentation': False, 'tx-tunnel-remcsum-segmentation': False, 'tx-udp-segmentation': False, 'tx-udp_tnl-csum-segmentation': False, 'tx-udp_tnl-segmentation': False, 'tx-vlan-hw-insert': True, 'tx-vlan-stag-hw-insert': False, 'vlan-challenged': False}, 'changeable': {'highdma': True, 'rx-checksum': True, 'rx-gro': True, 'rx-gro-list': False, 'rx-udp-gro-forwarding': False, 'tx-checksum-ipv4': True, 'tx-checksum-ipv6': True, 'tx-generic-segmentation': True, 'tx-nocache-copy': False, 'tx-tcp-ecn-segmentation': True, 'tx-tcp-mangleid-segmentation': False, 'tx-tcp-segmentation': True, 'tx-tcp6-segmentation': True}}, 'coalesce': {'rx_max_frames': 5, 'rx_max_frames_irq': 5, 'rx_usecs': 20, 'rx_usecs_irq': 0, 'stats_block_usecs': 0, 'tx_max_frames': 53, 'tx_max_frames_irq': 5, 'tx_usecs': 72, 'tx_usecs_irq': 0}, 'ring': {'rx': 200, 'rx_max': 2047, 'tx': 511, 'tx_max': 511}, 'link_mode': {'auto_negotiate': True, 'ours': ['10baseT/Half', '10baseT/Full', '100baseT/Half', '100baseT/Full', '1000baseT/Half', '1000baseT/Full', 'Autoneg', 'TP'], 'speed': 0, 'duplex': 'unknown'}}}}, 'routes': [{'address_family': 'ipv6', 'tos': 0, 'table': 254, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'unicast', 'flags': 0, 'dst': '::1/128', 'oif': 'lo', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 254, 'protocol': 'ra', 'scope': 'universe', 'route_type': 'unicast', 'flags': 0, 'dst': '2620:52:0:4982::/64', 'oif': 'eno1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 100, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 254, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'unicast', 'flags': 0, 'dst': 'fe80::/64', 'oif': 'eno1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 1024, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 254, 'protocol': 'ra', 'scope': 'universe', 'route_type': 'unicast', 'flags': 0, 'oif': 'eno1', 'gateway': 'fe80::ee3e:f701:b990:8a61', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 100, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'local', 'flags': 0, 'dst': '::1/128', 'oif': 'lo', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 0, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'local', 'flags': 0, 'dst': '2620:52:0:4982:2204:fff:fefa:75b0/128', 'oif': 'eno1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 0, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'local', 'flags': 0, 'dst': 'fe80::2204:fff:fefa:75b0/128', 'oif': 'eno1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 0, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'multicast', 'flags': 0, 'dst': 'ff00::/8', 'oif': 'eno1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'multicast', 'flags': 0, 'dst': 'ff00::/8', 'oif': 'ens3f0', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'multicast', 'flags': 0, 'dst': 'ff00::/8', 'oif': 'ens3f1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'multicast', 'flags': 0, 'dst': 'ff00::/8', 'oif': 'ens4f0', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv6', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'universe', 'route_type': 'multicast', 'flags': 0, 'dst': 'ff00::/8', 'oif': 'ens4f1', 'cache_clntref': 0, 'cache_last_use': 0, 'cache_expires': 0, 'cache_error': 0, 'cache_used': 0, 'cache_id': 0, 'cache_ts': 0, 'cache_ts_age': 0, 'metric': 256, 'perf': 0}, {'address_family': 'ipv4', 'tos': 0, 'table': 254, 'protocol': 'dhcp', 'scope': 'universe', 'route_type': 'unicast', 'flags': 0, 'oif': 'eno1', 'prefered_src': '10.73.131.141', 'gateway': '10.73.131.254', 'metric': 100}, {'address_family': 'ipv4', 'tos': 0, 'table': 254, 'protocol': 'kernel', 'scope': 'link', 'route_type': 'unicast', 'flags': 0, 'dst': '10.73.130.0/23', 'oif': 'eno1', 'prefered_src': '10.73.131.141', 'metric': 100}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'link', 'route_type': 'broadcast', 'flags': 0, 'dst': '10.73.130.0/32', 'oif': 'eno1', 'prefered_src': '10.73.131.141'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'host', 'route_type': 'local', 'flags': 0, 'dst': '10.73.131.141/32', 'oif': 'eno1', 'prefered_src': '10.73.131.141'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'link', 'route_type': 'broadcast', 'flags': 0, 'dst': '10.73.131.255/32', 'oif': 'eno1', 'prefered_src': '10.73.131.141'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'link', 'route_type': 'broadcast', 'flags': 0, 'dst': '127.0.0.0/32', 'oif': 'lo', 'prefered_src': '127.0.0.1'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'host', 'route_type': 'local', 'flags': 0, 'dst': '127.0.0.0/8', 'oif': 'lo', 'prefered_src': '127.0.0.1'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'host', 'route_type': 'local', 'flags': 0, 'dst': '127.0.0.1/32', 'oif': 'lo', 'prefered_src': '127.0.0.1'}, {'address_family': 'ipv4', 'tos': 0, 'table': 255, 'protocol': 'kernel', 'scope': 'link', 'route_type': 'broadcast', 'flags': 0, 'dst': '127.255.255.255/32', 'oif': 'lo', 'prefered_src': '127.0.0.1'}], 'rules': [{'action': 'table', 'address_family': 'ipv6', 'flags': 0, 'tos': 0, 'table': 255, 'protocol': 'kernel'}, {'action': 'table', 'address_family': 'ipv6', 'flags': 0, 'tos': 0, 'table': 254, 'priority': 32766, 'protocol': 'kernel'}, {'action': 'table', 'address_family': 'ipv4', 'flags': 0, 'tos': 0, 'table': 255, 'protocol': 'kernel'}, {'action': 'table', 'address_family': 'ipv4', 'flags': 0, 'tos': 0, 'table': 254, 'priority': 32766, 'protocol': 'kernel'}, {'action': 'table', 'address_family': 'ipv4', 'flags': 0, 'tos': 0, 'table': 253, 'priority': 32767, 'protocol': 'kernel'}]} 2023-04-18 16:16:28,068 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:28,070 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:28,070 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:28,071 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:29,109 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:29,112 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:29,113 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:30,155 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:30,158 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:30,159 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:31,200 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:31,203 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:31,204 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:31,204 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:31,205 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:32,251 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:32,254 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:32,255 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:32,255 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:32,256 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:33,302 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-18 16:16:33,305 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-18 16:16:33,306 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-18 16:16:33,306 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-18 16:16:33,306 root DEBUG Interface ethernet.eno3 found. Merging the interface information. 2023-04-18 16:16:33,306 root DEBUG Interface ethernet.eno4 found. Merging the interface information. 2023-04-18 16:16:33,306 root DEBUG Interface ethernet.ens3f0 found. Merging the interface information. 2023-04-18 16:16:33,307 root DEBUG Interface ethernet.ens3f1 found. Merging the interface information. 2023-04-18 16:16:33,307 root DEBUG Interface ethernet.ens4f0 found. Merging the interface information. 2023-04-18 16:16:33,307 root DEBUG Interface ethernet.ens4f1 found. Merging the interface information. 2023-04-18 16:16:33,338 root DEBUG Async action: Rollback to checkpoint /org/freedesktop/NetworkManager/Checkpoint/4 started 2023-04-18 16:16:33,340 root DEBUG Checkpoint /org/freedesktop/NetworkManager/Checkpoint/4 rollback executed 2023-04-18 16:16:33,340 root DEBUG Interface ens4f0 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface eno2 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface ens3f1 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface eno3 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface ens4f1 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface eno1 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface ens3f0 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface eno4 rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Interface lo rollback succeeded 2023-04-18 16:16:33,340 root DEBUG Async action: Rollback to checkpoint /org/freedesktop/NetworkManager/Checkpoint/4 finished Traceback (most recent call last): File "/usr/bin/nmstatectl", line 11, in <module> load_entry_point('nmstate==1.4.3', 'console_scripts', 'nmstatectl')() File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 74, in main return args.func(args) File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 366, in apply args.save_to_disk, File "/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py", line 419, in apply_state save_to_disk=save_to_disk, File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 140, in apply plugins, net_state, verify_change, save_to_disk, verify_retry File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 190, in _apply_ifaces_state _verify_change(plugins, net_state) File "/usr/lib/python3.6/site-packages/libnmstate/netapplier.py", line 197, in _verify_change net_state.verify(current_state) File "/usr/lib/python3.6/site-packages/libnmstate/net_state.py", line 111, in verify self._dns.verify(current_state.get(DNS.KEY)) File "/usr/lib/python3.6/site-packages/libnmstate/dns.py", line 223, in verify {DNS.KEY: cur_dns.config}, libnmstate.error.NmstateVerificationError: desired ======= --- dns-resolver: search: [] server: [] current ======= --- dns-resolver: search: - usersys.redhat.com server: - 8.8.8.8 - 10.68.5.26 difference ========== --- desired +++ current @@ -1,4 +1,7 @@ --- dns-resolver: - search: [] - server: [] + search: + - usersys.redhat.com + server: + - 8.8.8.8 + - 10.68.5.26 Expected results: Removed global DNS and use auto DNS instead(if a DHCP interface with DNS exists) Additional info:
Patch sent to upstream https://github.com/nmstate/nmstate/pull/2319
Verified with: nmstate-1.4.4-2.el8.x86_64 nispor-1.2.10-1.el8.x86_64 NetworkManager-1.40.16-4.el8.x86_64 DISTRO=RHEL-8.9.0-20230518.26