解决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地址重启不生效问题 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

你可能感兴趣的:(解决Cent0S 6.7直接在/etc/resolv.conf文件下修改DNS地址重启不生效问题)