CentOS "ping xxx.xxx.xxx.xxx ,未知的名称或服务"解决办法
新装了一个CentOS系统,配制成GUI服务器的方式。需要访问外网时,发现连不上。ping百度,提示未知的名称或服务。
首先怀疑是dns的问题。在桌面上看了设置,有dns设置。
然后依次ping ip,发现dns的ip“8.8.8.8”的ip可以通。查了下资料,发现这个文章里的现象和我的一致。
检查/etc/resolv.conf文件,也发现# Generated by NetworkManager。
[root@localhost ~]# cat /etc/resolv.conf # Generated by NetworkManager
按照文章的说法,这是安装桌面的时候安装了gnome的网络管理造成的,由它接管了网络设置。
尝试了文章的解决办法,发现要先按解决方案一:修改/etc/resolv.conf,添加nameserver 8.8.8.8 nameserver 8.8.4.4 ,然后停用NetworkManager,service NetworkManager stop。
然后采用解决方案二,对接口添加dns信息;编辑/etc/sysconfig/network-scripts/ifcfg-ens33,ens33是我的网卡名称,本来是在最下面添加:DNS1=8.8.8.8 和DNS2=8.8.4.4 。但是这2段内容本来就存在,因此不做修改重启网络:#service network restart
再ping百度,可以ping通。重启虚拟机,仍然可以配置,重新检查/etc/resolv.conf的内容,变成了:
[root@localhost ~]# cat /etc/resolv.conf ; generated by /usr/sbin/dhclient-script search localdomain nameserver 192.168.121.2
简要说下network-scripts/ifcfg-xxx和resolv.conf这2个配置文件:
network-scripts/ifcfg-xxx:ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。这就要用到/etc/sysconfig/network-scripts/ifcfg-xxx,在ifcfg-ethx文件配置中的网络信息在重启后仍然生效。
resolv.conf:这是DNS Client配置文件,
