Ubuntu 12.04上的Node.js WebServer在Internet上不可见(外部IP)

路由器: IP:192.168.1.1
主机操作系统: Windows 7(64位) – IP:192.168.1.2
客户操作系统(VMware): Ubuntu 12.04 LTS(64位) – IP:192.168.1.10

客户操作系统通过VMWare具有NAT和桥接连接。

我运行一个基本的Node.js服务器/网站监听端口8000.端口转发路由器的内部/外部端口:8000

我可以通过局域网(通过Windows操作系统)访问我的网站,但不能通过任何外部的电脑或互联网访问我的网站。

尝试:
(1)禁用Ubuntu防火墙“ufw”。
(2)Windows 7防火墙被禁用。
(3)即使对于apache2或任何其他服务器,问题仍然存在。
结果:没有变化

另外外部端口扫描(外部IP上的nmap)显示我的端口8000被“过滤”而不是打开。
Win 7中的端口8000上运行相同的Node.js服务器也正常工作。 端口8000是“打开”的。

我已经尝试了好几天在线解决scheme,但没有任何进展。 任何解决scheme/想法请吗?

你说,你转发了路由器上的端口。
但是,您需要将端口从主机系统转发到您的访客系统。
您可以在VMWare设置中执行此操作。 转到NAT设置(编辑>虚拟networking设置> NAT)并编辑VMnet主机。 然后按“端口转发”button,转发端口8000到8000。

查看VMWare支持文章:
http://www.vmware.com/support/ws5/doc/ws_net_nat_advanced.html

问题解决了

我切换到“ Oracle的VirtualBox ”,它的工作完美无瑕。

可以通过以下方式来使用虚拟服务器:
(1)具有端口转发的NAT连接。
(2)NAT和桥接连接。

我使用了选项2,并使用静态IP(192.168.1.10)进行桥接连接。 NAT连接默认为DH​​CP的192.168.1.2。

路由器端口转发端口为8000,出端口为8000,出站IP为192.168.1.10

为了一个清晰简洁的教程 ,这里有一个很好的链接 – > http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a -服务器/

在“VMWare”上也是可能的,但在我看来,“VirtualBox”更简单。