我有一个在 Ubuntu 主机下运行 Windows 的 Virtual Box,VM 有一个我需要访问的小型 IIS Web 应用程序。我知道我可以使用各种工具远程访问 VM,但是如果我可以通过路由器将 VM 公开给公众,这样我就可以仅使用 URL(子域)访问 VM 上的应用程序会更方便。
目前我已经创建了一个指向我的家庭路由器 IP 地址的子域。我使用(“我的 IP 是什么”谷歌搜索)获得了 IP。
但这会击中路由器并停在那里。我需要以某种方式告诉路由器所有来自外部的传入 HTTPS 请求都将转发到我的虚拟机。同时我不想阻止家中所有设备的互联网访问,所以我可能需要过滤 HTTP 请求以转发到 VM,使其只是来自该子域 url 或命中的请求HTTP。我还可以创建一个奇怪的端口名称,例如 1234,它会命中 VM,但会以某种方式转换为 HTTPS,因为这就是 VM 所具有的。
我以前从未这样做过,因此非常感谢任何建议
谢谢!
路由器不知道虚拟机,因为它的网络通过主机建立隧道。您必须打开从路由器到主机系统的端口,并在 VM 的 Virtualbox 设置中 -> 网络 -> 端口转发将该端口转发到 VM。
如果你应该这样做是另一个问题,打开互联网端口总是有风险的,尤其是当你不知道自己在做什么时。