微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CentOS修改/etc/resolv.conf 重启network后又恢复到原来的状态?

问题描述:解决CentOS 7.4重启后/etc/resolv.conf被重置的问题

云资源的服务器/etc/resolv.conf文件原先的配置如下:

image.png


解决方法:/etc/resolv.conf保存DNS是暂时的,当重新启动network时,/etc/resolv.conf恢复到了初始状态,要想更改,可尝试下边的方法


一、修改/etc/sysconfig/network-scripts/ifcfg-eth0

在其中的加入你要添加的DNS,如下图

image.png

之后保存退出,执行server network restart,则在/etc/resolv.conf中会自动添加你刚才在ifcfg-eth0中添加的DNS信息(如下图),且重启仍有效。

image.png


二、修改网卡配置,增加“PEERDNS=no”

image.png

保存退出,执行server network restart,原先的这两个“

search openstacklocal

nameserver 114.114.114.114

”参数没有了,在/etc/resolv.conf中会自动添加只有你刚才在ifcfg-eth0中添加的DNS信息(如下图),且重启仍有效。

image.png


三、不需要dns话,只要增加“PEERDNS=no”参数,重启网络卡后resolv.conf文件为空,如下图:

image.png

至此结束


番外:

在Linux中,DNS的配置文件位于/etc/resolv.conf,里面主要有三个字段,分别是nameserver, domain, search

我们简单看一下以下例子:

# Generated by NetworkManager
domain example.com
search example.com
nameserver 192.168.1.100

这里domain和search是一个作用,在俩这同时存在时,前者失效。

当访问的域名不能被DNS解析时,resolver会将该域名加上search指定的参数,重新请求DNS,直到被正确解析或试完search指定的列表为止。


peerdns字段的作用域分两种情况:

为yes时:1 如果在网卡(ifcfg-eth0)中设置了DNS地址,或者开启了dhcp client(proto为dhcp)时,此项认为yes,所以每次NetworkManager进行重写时,

都会获取dhcp client抓到的dns信息对nameserver和search字段进行重写。

为no时: 不会对/etc/resolv.conf进行重写


版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。