阻止网络管理器更新resolv.conf

时间:2018-08-10 10:13:58

标签: dns centos networkmanager

我在/etc/resolv.conf中更改了名称服务器,但是当我在CentOS中连接vpn时,网络管理器将我以前的DNS推回到/etc/resolv.conf中。

我不希望网络管理员将从DHCP接收到的DNS服务器添加到我的/etc/resolv.conf。

有解决方案吗?

3 个答案:

答案 0 :(得分:1)

防止在Linux中更新文件的“强力”方法可能是使用chattr,例如,您可以这样做:

chattr +i /etc/resolv.conf

要删除i - Immutable属性,以便您可以再次修改文件,请运行:

chattr -i /etc/resolv.conf

另一种方法是将/etc/NetworkManager/NetworkManager.conf配置为不修改DNS:

[main]
dns=none

从男人那里来

dns
       Set the DNS (resolv.conf) processing mode.

       default: The default if the key is not specified. NetworkManager will update
       resolv.conf to reflect the nameservers provided by currently active connections.

       dnsmasq: NetworkManager will run dnsmasq as a local caching nameserver, using a "split
       DNS" configuration if you are connected to a VPN, and then update resolv.conf to point
       to the local nameserver.

       none: NetworkManager will not modify resolv.conf.

答案 1 :(得分:0)

设置dns=none仍可能使网络管理器无法正常工作-如果在ifcfg文件中也指定了 DOMAIN ,则NM仍会写入文件,但会跳过所有dns:es建议设置以下内容:

rcmanager=unmanaged 

这告诉网络管理员不要完全按照文档触摸/etc/resolv.conf

答案 2 :(得分:0)

我已经阅读了几个建议设置rc-manager = unmanaged而不是dns = none的stackoverflow页面。我只是想从手册页中指出有关dns = none的以下文档。

无:NetworkManager不会修改resolv.conf。 这意味着rc-manager不受管理。