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
來賓作業系統具有 NAT 和通過 VMWare 的橋接連接。
我正在執行一個基本的 Node.js 伺服器/網站,監聽埠 8000。埠轉發路由器,內部/外部埠:8000
我可以在區域網路(通過 Windows 作業系統)上訪問我的網站,但不能從其外部的任何電腦或通過網際網路訪問。
試過:
(1)禁用Ubuntu防火牆“ufw”。
(2) Windows 7 防火牆禁用。
(3) 即使對於 apache2 或任何其他伺服器,問題仍然存在。
結果:沒有變化
外部埠掃描(外部 IP 上的 nmap)也顯示我的埠 8000 被“過濾”而不是打開。
在 Win 7 的埠 8000 上執行相同的 Node.js 伺服器也可以正常工作。埠 8000 是“開放的”。
我已經嘗試了幾天的“很多”線上解決方案,但沒有任何進展。請問有什麼解決方案/想法嗎?
問題解決了。
我切換到“ Oracle 的 VirtualBox ”,它執行完美。
可以通過 -
(1) 帶有埠轉發的 NAT 連接來使用虛擬伺服器。
(2) NAT 和橋接連接。
我使用選項 2 並使用靜態 IP(192.168.1.10) 進行橋接連接。NAT 連接由 DHCP 預設為 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”上要簡單得多。
你說,你轉發了路由器上的埠。
但是您需要將埠從您的主機系統轉發到您的訪客系統。
您可以在 VMWare 設置中執行此操作。轉到 NAT 設置(編輯 > 虛擬網路設置 > NAT)並編輯 VMnet 主機。然後按下“埠轉發”按鈕,將埠8000轉發到8000。
請參閱 VMWare 支持文章: http: