如何将端口转发到虚拟机并将其用作服务器

默认情况下,VirtualBox和VMware都使用NAT网络类型创建虚拟机。如果您希望在虚拟机内运行服务器软件,则需要更改其网络类型或通过虚拟NAT转发端口。

虚拟机通常不需要从虚拟机外部访问,所以默认设置对大多数人来说都是可以的。它实际上提供了一些安全性,因为它将虚拟机与传入连接隔离。

选择桥接网络

对于NAT网络类型,您的主机操作系统执行网络地址转换。虚拟机共享您的主计算机的IP地址,不会接收任何传入流量。您可以改用桥接网络模式-在桥接模式下,虚拟机将显示为网络上的独立设备,并具有自己的IP地址。

要在VirtualBox中更改虚拟机的网络类型,请右键单击虚拟机并选择设置。如果您无法单击“设置”,则在进行这些更改之前,您需要关闭虚拟机的电源。

在“网络设置”部分中选择桥接适配器网络模式,然后单击“确定”。有关每种网络模式的更多信息,请参考VirtualBox手册中的网络模式简介部分。

此过程在VMware应用程序中类似。首先,右键单击已关闭的虚拟机,然后选择虚拟机设置。

选择“网络适配器”虚拟硬件设备,选择桥接网络连接类型,然后单击“确定”。

将端口转发到虚拟机

如果出于某些原因您更喜欢使用NAT网络模式,您还可以通过虚拟机的NAT转发端口。请注意,这些步骤中只有一个是必需的-如果您启用了上面的桥接网络,则不必转发端口。

一度,您必须使用VBoxManage命令来转发VirtualBox中的端口,但是VirtualBox现在包含一个简单的图形化端口转发窗口。如果您需要使用VBoxManage命令而不是使用图形界面来设置端口转发,您可以在VirtualBox的手册中找到执行此操作的说明。

要在VirtualBox中转发端口,请首先通过选择菜单中的设置选项打开虚拟机的设置窗口。

在虚拟机的配置窗口中选择Network窗格,展开Advanced部分,然后单击Port Forwarding按钮。请注意,此按钮仅在您使用NAT网络类型时才有效-如果您使用NAT,则只需要转发端口。

使用VirtualBox的端口转发规则窗口转发端口。您不必指定任何IP地址-这两个字段是可选的。

注意:虽然您不必输入任何IP详细信息,但将Host IP框留空将使VirtualBox侦听0.0.0.0-换句话说,它将接受来自本地网络的所有流量并将其转发到您的虚拟机。在主机IP框中输入127.0.0.1,VirtualBox将只接受源自您的计算机(换句话说,主机操作系统)的流量。

如果您使用的是VMware,则需要使用虚拟网络编辑器(Vmnetcfg)应用程序来执行此操作。VMware Workstation用户可以选择[编辑]->[虚拟网络编辑器]将其打开。

遗憾的是,此实用程序不包含在VMware Player中。有一些方法可以通过从VMware Player安装程序解压vmnetcfg.exe文件来自行安装它,但我在最新版本的VMware Player VMware Player 5.0中找不到vmnetcfg.exe实用程序-它可能不再包含在安装程序中。如果您使用的是VMware Player,您仍然可以使用桥接网络模式来访问您的服务器。

请记住,这只是使虚拟机内的服务器软件可访问的过程的一部分。您还需要确保:

在虚拟机内部运行的防火墙软件没有阻止连接。(您可能需要允许来宾操作系统防火墙中的服务器程序。)。 您主机上的防火墙软件没有阻止连接。(这仅适用于具有端口转发的NAT模式-主机的防火墙不会干扰桥接网络模式。)。 您的路由器正确转发端口-只有当您要从Internet访问虚拟机时才需要这样做。(请在此处参阅我们的路由器转发端口指南。)

相关文章