Windows Guest VM在Ubuntu KVM主机上没有互联网

我在Ubuntu 12上运行的KVM中安装了Windows 7作为guest虚拟机.Windows似乎运行良好,但不能访问任何外部域或IP。

客人可以ping主机的IP,主机可以ping客人的IP,但就是这样。

我使用默认的NAT设置,其他人报告应该工作。 我能做些什么来解决这个问题?

编辑:我也有在相同的主机上运行的VirtualBox,也运行Windows虚拟机,它的互联网工程就好了。

编辑:Ubuntu主机的路由表:

user@localhost:~$ netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth2 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth2 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 

virbr0是我尝试在Virtualbox中设置桥接时剩下的一些旧桥,但是由于Virtualbox使用NAT来查找,因此它不再使用。 我曾尝试使用它与KVM,但没有成功。

经过一番讨论后,@laine指出了解决scheme。

显然,resolv.conf文件在Ubuntu 12.04上是缺less的(至less在我的linux mint 13的安装上)。 它被一些resolvconf目录树所取代。

为了让客人上互联网:我不得不

  1. sudo iptables –flush =>在主机上,可能已经过时了,我不知道。 它清除了一些规则。
  2. 在/etc/resolv.conf中添加“nameserver8.8.8.8”
  3. 重启

之后,它的工作

编辑:请注意,第2步也在主机上执行。 我认为这是Linux的薄荷(Ubuntu的12.04),这是缺less/etc/resolv.conf文件。

有没有理由不能使用桥接networking? 当虚拟机需要访问互联网时,我总是以桥接模式运行,而且我通常会推荐它(你没有给出任何桥接模式可能不是好主意的理由)。 就networking连接而言,虚拟机被视为一stream的公民。

您在虚拟机上使用了错误的网卡。 我曾经在Oracle虚拟机的Ubuntu 12.04上运行xp / 7/8,没有问题。 不要只使用nat主机types的网卡。 使用在networking上给你一个物理地址的选项,这样你有一个单跳到网关。