如果ping域名的时候出现ping:unknown host xxx.xxx
但是ping IP地址的时候可以通的话
可知是dns服务器没有配置好,
查看一下配置文件/etc/resolv.conf,里面是否有nameserver xxx.xxx.xxx.xxx,比如使用dns服务器 nameserver 8.8.8.8,如果有,修改一个可用的dns服务器,如8.8.8.8或者4.4.4.4,保存退出即可!
当然,如果连ip都ping 8.8.8.8都ping不通的话,那么就说明网络配置有问题:可以这样解决:
1,首先查看ifconfig是否有内网ip地址,如果没有,那么配置一下
ifconfig eth0 192.168.1.100 up,
可以同时配置好掩码:
另外使用route命令查看一下当前的默认网关,如果没有,也配置一个,
route add default gw 192.168.1.1,
配置好这两个以后,就可以正常的ping通网络了,如果还不能ping www.baidu.com,那么就要去查看dns服务器啦
但是这种添加网关的方法只是一次性的。
重启虚拟机后又没有默认网关了。
第二种方法:
设置网关
vi /etc/sysconfig/network-scripts/ifcfg-eth0
添加
GATEWAY=192.168.1.1
然后重新启动网络服务:
service network restart
确保可用DNS解析
[root@localhost Desktop]# grep hosts /etc/nsswitch.conf
输出
hosts: files dns
该文件/etc/nsswith.conf是SUN公司开发的一种扩展name server switch。用于设置文件读取的顺序,如是先读取/etc/hosts文件,还是先查找DNS服务器。
hosts: files dns 指定先查找/etc/hosts文件,如果失败,则到DNS服务器查找与域名相对应的主机信息。
4)测试DNS
ping www.baidu.com
上面这种方法我不知道是否可以,因为我执行service network restart
会报错network: unrecognized service
且ping www.baidu.com还是不通
所以,以上两种方法我觉得都不行。
第三种方法:
编辑/etc/network/interfaces 的文件,
#gedit /etc/network/interfaces
在 auto lo
iface lo inet loopback
的后面加上:
auto eth0
iface eth0 inet static
address 192.168.1.252
netmask 255.255.255.0
gateway 192.168.1.1
broadcast 192.168.1.255
然后保存退出,重启 networking:
#/etc/init.d/networking restart
broadcast广播的意思嘛 在IP地址中,如果最后一个数字是255,则一定是一个广播地址。
可以测试将虚拟机重启,再ping www.baidu.com,依然可以ping通
建议使用第三种方法。
from:http://blog.csdn.net/menlinshuangxi/article/details/7968955