从网络访问客户虚拟机上的 webapp

从网络访问客户虚拟机上的 webapp

我在虚拟机(开发环境)上通过 tomcat 运行一个 webapp。我尝试在其他计算机(网络上的其他计算机和主机)上访问此 webapp,但失败了。

主机:Windows 8.1

访客:Windows 7

软件:VMWare Player

客户机以桥接模式设置连接,Windows 防火墙完全关闭。

localhost:8080/webapp我可以通过虚拟机上的以及(虚拟机名称为 topaz)访问 webapp topaz:8080/webapp,但不能通过主机或网络上的任何其他地方访问。

尝试从主机连接到 Web 应用程序VM's.ip.##.##:8080/webapp也不起作用。在此说明中,通过 ipconfig 报告的 VM IP 与 Google 报告的我的公共 IP 不同。但是,我在内部网络上。值得注意的是,我需要连接到此 Web 应用程序的任何设备都将在我的内部网络上。

如果我通过主机上的 Windows 资源管理器浏览网络,我可以看到虚拟机,但无法连接到它

不确定还有什么需要改变,任何帮助都值得感激

编辑:回应以下来自 harrymc 的评论,

已将桥接改为 NAT。仍然无法访问网络上的机器,共享文件夹仍在工作。在虚拟机中,localhost:8080/webapp和均可topaz:8080/webapp工作。仍然无法通过主机或其他机器连接。报告的 IP 以ipconfig192 开头,而 google 报告的 IP 以 205 开头。

切换回桥接模式后,ipconfig 报告 IP 以 172 开头。Google 报告的 IP 与处于 NAT 时相同,为 205。状态与之前相同。

卸载 VMware 工具,重新启动,使用“完成”选项重新安装。再次尝试桥接。没有成功。

编辑 2:卸载 VMWare 播放器,安装工作站,仍然没有运气

答案1

建议太多了,所以这里给出答案:

使用 VMware Workstation,在客户机中执行以下操作:

  1. 重新安装 VMware Tools
  2. 尝试将适配器设置为正确范围内的静态 IP 地址
  3. 删除虚拟机 > 设置 > 网络适配器并重新创建
  4. 添加第二个网络适配器
  5. 使用 Windows 更新全面修补 VM,包括可选更新(Bing 除外)
  6. 在 Windows 设备管理器中重新安装网络驱动程序:找到 Intel Pro/1000 MT 网络连接设备,然后尝试使用“让我从计算机上的设备驱动程序列表中选择”来“更新驱动程序软件”
  7. 在设备管理器中,删除英特尔(R) PRO/1000 MT 网络连接设备并重新启动
  8. 在以管理员身份运行的命令提示符 (cmd) 中使用重置 TCP/IP:
    netsh int ip reset c:\resetlog.txt
    通过输入重置 Winsock 设置
    netsh winsock reset

每完成一步后重新启动并再次测试 ipconfig。
作为最后的努力,您可以再次尝试 VMWare Player。

最好在开始之前备份虚拟机,以防万一。

如果没有任何效果,我唯一的建议就是联系 VMWare 支持或访问 VMWare 论坛。

答案2

您很可能正在处理 VMware Player 的网络限制。具体来说,就是无法编辑网络设置。这是 Workstation 中的一项功能,但 Player 中没有(您还指望免费提供什么?;-) 请查看此内容Player 6 和 Workstation 10 之间的功能比较

我认为你应该下载 Workstation 的评估版并进行测试。或者,如果你不局限于 VMware,可以尝试微软虚拟PC或者虚拟盒。它们应该能够读取您的 VMDK,并且是免费的。

答案3

在托管 Web 应用的计算机上安装代理服务器,并从其他设备连接到该代理。您的设备能够解析计算机上的主机名,即使它是在计算机的本地 hosts 文件中定义的,因为它使用代理进行 DNS 解析。

相关内容