Cent0S 6.7直接在/etc/resolv.conf文件下修改DNS地址重启不生效问题【转】

CentOS 6.7/Linux下设置IP地址

1:临时修改:

1.1:修改IP地址 # ifconfig eth0 192.168.2.104

1.2:修改网关地址 # route add default gw 192.168.2.1 dev eth0

1.3:修改DNS # echo "nameserver 192.168.2.1" >> /etc/resolv.conf         // 与主机的DNS服务器保持一致

这个时候就可以上网了,上网的IP地址为192.168.2.104,网关地址为192.168.2.1。但是这样的设置是临时性的,一旦重启网卡或者重启服务器,除了1.3的操作其他均会被还原,这样的方式只适合临时IP修改,想要永久性修改网卡配置文件,就需要修改相应的文件

2:永久性修改: 

2.1:修改IP地址
修改/etc/sysconfig/network-scripts/ifcfg-eth0文件,如果有多张网卡,则修改相应的网卡
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0                             #网卡对应的设备别名
BOOTPROTO=static                    #网卡获得ip地址的方式(默认为dhcp,表示自动获取)
HWADDR=08:00:27:F9:5B:B9    #网卡MAC地址(物理地址)
IPADDR=192.168.2.104             #IP地址
NETMASK=255.255.255.0          #子网掩码 
ONBOOT=yes                            #系统启动时是否激活此设备
2.2:修改网关地址
修改/etc/sysconfig/network文件
# vi /etc/sysconfig/network
NETWORKING=yes                #表示系统是否使用网络,no表示不能使用网络
HOSTNAME=doiido                #设置本机的主机名,要和/etc/hosts中设置的主机名相同
GATEWAY=192.168.100.1      #设置网关的IP地址
这个时候已经可以ping通IP地址,但是还无法ping通域名,因此需要修改DNS
2.3:修改DNS
修改/etc/resolv.conf文件
# vi /etc/resolv.conf
nameserver 192.168.2.1          #与主机DNS服务器保持一致
nameserver 114.144.114.114      #国内域名服务器
2.4:重启网卡
# service network restart
正在关闭接口 eth0: [确定]
关闭环回接口: [确定]
弹出环回接口: [确定]
弹出界面 eth0: [确定]
这个时候,系统就可以正常的上网了吗?按照正常情况是可以的,但是我在centos 6.7中这样尝试的时候,发现依然是只能ping通IP地址,不能访问域名。在网上查找了下

 

原来在Centos6.7下面直接修改/etc/resolv.conf不行。必须要在/etc /sysconfig/network-scripts/ifcfg-eth0里面最后加上dns的设置。要不然,重启后,肯定使用eth0设置中没有设 dns的相关信息,使/etc/resolv.conf恢复到原来的状态。
打开/etc/sysconfig/network-scripts/ifcfg-eth0,在里面加上DNS的配置
[root@localhost /]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
HWADDR=08:00:27:F9:5B:B9
TYPE=Ethernet
UUID=16b21d21-1ea0-4d4f-9d5d-4c164066cf15
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.2.104
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
DNS1=192.168.2.1                #可选择与主机DNS保持一致,也可使用谷歌的8.8.8.8,根据实际情况切换
DNS2=114.144.114.114         #国内域名服务器
~                           
保存退出后,可以发现/etc/resolv.conf里面根本就不需要设置。service network restart 后,可以发现/etc/resolv.conf里面就有两个dns的解析ip了。配置好以后重启网络,cat /etc/resolv.conf,可以看到如下参数:
[root@localhost /]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 192.168.2.1
nameserver 114.144.114.114

 

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

转自

Cent0S 6.7直接在/etc/resolv.conf文件下修改DNS地址重启不生效问题 - 搜索联系人 - 博客园 https://www.cnblogs.com/TenMiles/archive/2017/07/23/7224370.html

posted @ 2019-06-21 17:10 paul_hch 阅读(...) 评论(...) 编辑 收藏