CentOS DNS resolv重启无效的解决方法

分类: LINUX

    直接修改/etc/resolv.conf不行。必须要在/etc/sysconfig/network-scripts/ifcfg-eth0里面最后 加上dns的设置。要不然,重启后,肯定使用eth0设置中没有设dns的相关信息,使/etc/resolv.conf恢复到原来的状态。

# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=none
HWADDR=00:xx:19:xx:xx:xx
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
NETMASK=255.255.255.0
IPADDR=xxx.xxx.xxx.xxx
GATEWAY=xxx.xxx.xxx.xxx
DNS1=8.8.8.8 #google dns服务器, 根据实际情况更换
DNS2=8.8.4.4 #google dns服务器,根据实际情况更换

这样设置后/etc/resolv.conf里面根本就不需要设置。
# service network restart
可以发现/etc/resolv.conf里面就有两个dns的解析ip了。

# cat /etc/resolv.conf

Generated by NetworkManager
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain

DNS解析设置成功。

    在此要强调一点的是,直接修改/etc/resolv.conf这个文件是没用的,网络服务重启以后会根据/etc/sysconfig /network-scripts/ifcfg-eth0来重载配置,如果ifcfg-eth0没有配置DNS,那么resolv.conf会被冲掉,重 新变成空值。

哎,不知道为啥以前装的系统没有出现这样的情况呢?

修改host文件

# vi /etc/hosts

添加你需要的项,格式如下:
.

编辑后,你需要重新启动一下你的网络。

# /etc/init.d/networking restart


附:如何判断dns服务器不响应了
# ping www.baidu.com    #ping不通
# ping 8.8.8.8                  #可以ping通
一般来说你的dns应该就有问题了

原文地址:https://www.cnblogs.com/lcword/p/5915210.html