![无法通过 NAT 连接到 VMWare 虚拟机](https://linux22.com/image/1361089/%E6%97%A0%E6%B3%95%E9%80%9A%E8%BF%87%20NAT%20%E8%BF%9E%E6%8E%A5%E5%88%B0%20VMWare%20%E8%99%9A%E6%8B%9F%E6%9C%BA.png)
我目前正在阅读 Yahoo 的 Hadoop 教程这里。我按照教程的指示安装了 VMWare Player 并运行虚拟机。但是,无论我怎么尝试,我都无法从主机连接到我的客户机。
默认是 NAT 模式。当我尝试运行 时ifconfig
,我得到了以下地址:
192.168.187.128
尝试从客户机内部 ping 它会成功,但尝试从主机 ping 它会失败。我使用的是 Windows 7(主机)和 Ubuntu(客户机)。
我尝试将 VMWare 的网络模式改为“Host-only”。在这种情况下,虚拟机的网络部分初始化似乎出现故障:
DHCPRequest of 192.168.187.128 on eth10 to 255.255.255.255 port 67
DHCPRequest of 192.168.187.128 on eth10 to 255.255.255.255 port 67
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 3
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 4
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 11
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 9
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 15
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 9
DHCPDiscover on eth10 to 255.255.255.255 port 67 interval 9
No DHCPOffers received
Trying recorder lease 192.168.187.128
PING 192.168.187.2 (192.168.187.2) 56(84) bytes of data.
--- 192.168.187.2 ping statistics ---
1 packets transmited, 0 recieved, +1 errors, 100% packet loss ,time 0ms
再次,从主机 ping 失败。使用“桥接”模式会导致类似的情况。
任何想法?
答案1
我在设置域时遇到过类似的问题。默认情况下,Windows 7 设置为拒绝 PING 请求以及其他请求。根据您的 Linux 发行版,它可能也会设置为拒绝。(但如果我正确阅读了您的帖子,则在这种情况下似乎不是这样)
如果您确实希望看到 Windows 的响应,则需要关闭防火墙(不建议这样做,但出于测试目的这样做是可以的)。进入高级安全 Windows 防火墙,然后关闭网络的相应防火墙(如果您无法弄清楚,则关闭所有防火墙)。
作为另一种选择,您可以在入站/出站规则中为 PING 创建例外。
桥接模式使 VMware 客户端与主机“共享”网络连接,并且它就像是同一 LAN 上的一台机器一样。它会请求 IP 地址和所有内容。然后两台“机器”之间的通信通过路由器进行。
(http://www.vmware.com/support/ws4/doc/network_bridged_ws.html)
通过使用 NAT 模式,VMware 会将您的主机 PC 用作某种“路由器”,并为其分配该 LAN 内的 IP 地址。因此,在这种情况下,所有通信都是直接的。但实际上,当尝试访问网络外部(可以访问互联网)时,它会对 IP 地址/所有内容进行完整转换。
(http://www.vmware.com/support/ws55/doc/ws_net_configurations_nat.html)
主机模式在两台计算机之间建立直接连接,无法超越此范围。默认情况下不启用 DHCP,因此您需要手动设置。
任何一个都应该可以满足您的目的,但重要的是要注意消息传输方式和 IP 地址分配方式的差异。
答案2
我也遇到了同样的问题:从我的 Win7 主机到我的 Ubuntu 客户机(客户机使用 NAT)的所有 ping 都会超时。在我的例子中,原因是我的主机有一个VPN 连接开放(虚拟专用网络),因此我的所有 ping 都被转发到我的机器外部,而不是留在 NAT 区域内。
一旦我关闭 VPN,一切都会按预期运行。
答案3
我通过切换到 VirtualBox 并选择“Virtual Box Host Only 以太网适配器”解决了我的问题。
为了从 VMWare 导入 .vmdk 文件,需要创建一个新的虚拟机并选择该文件作为硬盘。
答案4
在 VMWare 上,转到虚拟网络并删除所有文件。问题现在应该已经解决,因为 VMWare 现在将使用文件vmnat.exe
将 VM 连接到互联网。
如果此方法无效,请创建一个新的虚拟网络。同时请记住在此过程之间进行一些重启,因为它有一些好处。