运行 Web 服务器的 VirtualBox VM 无法通过外部 IP 访问

运行 Web 服务器的 VirtualBox VM 无法通过外部 IP 访问

我有一台运行 VirtualBox 的 Windows 7 计算机,其中有一个 Ubuntu 客户端。客户端安装了 Bitnami LAMP 堆栈。我已将客户端配置为桥接网络,并且我可以使用客户端的 IP 从 LAN 上的其他计算机顺利访问客户端 Web 服务器。

我正在尝试配置端口转发,以便可以从 LAN 外部访问 Web 服务器。(由于我使用的是 ATT 的 UVerse,因此路由器是 2WIRE 型号)。我已将端口 80 和 443 设置为访客 IP 的端口转发,其设置方式与我为之前的物理 Web 服务器设置端口转发的方式类似,运行良好。

但是,我似乎无法使用转发端口上的外部 IP 访问新的虚拟 Web 服务器。

我怀疑主机上的 Windows 防火墙存在问题,但禁用它并不能解决问题。有人能建议我下一步该怎么做吗?

编辑:我现在尝试使用 -- 禁用客户机上的防火墙sudo ufw disable,但这似乎也无济于事。但是,在更详细地检查路由器的端口转发后,我可能会发现问题。我的虚拟机名为“linux”,在路由器的配置页面中,它显示不一致。有时它会报告有效的 LAN IP,有时它不会显示任何 IP。即使它显示正确的 IP,路由器也会指示它已断开连接。

这是否表明 2WIRE 路由器与 VirtualBox 的桥接网络模式不能很好地兼容?

答案1

根据您所支付的互联网接入计划,一些 ISP 会阻止特定端口(例如端口 80),以防止“住宅”客户运行 Web 或电子邮件服务器。要诊断此问题,请尝试在备用端口(例如 8888)上运行 httpd 服务器。

另外,请确保为虚拟客户机分配静态私有 IP 地址。不要使用 dhcp。然后从路由器端口转发到该 IP 地址。端口转发时不要依赖网络名称:我发现它们不可靠。

相关内容