虚拟机用了几天发现Ubuntu无法上网,打开命令终端,输入命令:
ping www.baidu.com结果显示名称无法识别,而直接与宿主机之间使用 IP 地址进行互ping,则可以ping得通。这说明是DNS服务出现了问题。
于是,修改/etd/resolv.conf文件,在这句话:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN //不要手动编辑该文件,你的改变会被重写后面加上
nameserver 8.8.8.8nameserver 114.114.114.114即可用了,但重新启动后你会发现他的内容又清空了,又无法解析域名了。
于是采用以下方法处理:
假如你是Unbuntu系统:
(1) 编辑 文件
sudo vi /etc/resolvconf/resolv.conf.d/head(2) 在该文件末尾一行写入自己需要的dns服务器
nameserver 8.8.8.8nameserver 114.114.114.114(3) 重启 resolvconf程序
sudo /etc/init.d/resolvconf restar假如你是Centos系统:
如果采用的网卡是eth0,系统默认自动使用 /etc/sysconfig/network-scripts/ifcfg-eth0 中的配置来设置 /etc/resolv.conf,因为 /etc/sysconfig/network-scripts/ifcfg-eth0 中我并没有配置DNS Server,所以导致 /etc/resolv.conf 中自然也就没有DNS配置信息,自然也就无法上网了。
处理方案:
在 /etc/sysconfig/network-scripts/ifcfg-eth0 中显式配置DNS就可,以下贴出基于静态IP配置的完整指令:
DEVICE=eth0HWADDR=08:00:27:44TYPE=Ethernet####UUID=a7fa8195-b6a5-440c-9056-340cc98700faONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=staticIPADDR=192.168.1.234NETMASK=255.255.255.0GATEWAY=192.168.1.1DNS1=114.114.114.114DNS2=8.8.8.8配置完毕以后,切记务必重启网卡:
service network restart