Linux

VMware 埠轉發和 NAT。如何將主機的 IP 作為虛擬機中的主機名?

  • April 16, 2012

我試圖在我的本地網路上公開一個在 Linux 上執行的非常簡單的 Ruby 伺服器。

server = TCPServer.new(hostname, port)

我的 Linux VM 在 NAT 虛擬網路上執行192.168.73.X。我使用的埠是我使用1564VMware 中的“虛擬網路編輯器”轉發的。

然後我在我的 ruby​​ 程式碼中使用192.168.73.133as 。hostname

這很好用,如果我嘗試從主機連接到我的伺服器(包括我的主機的 IP 192.168.1.118

問題是我無法從網路上的其他電腦訪問它。

我猜主機名需要更改,但我不知道該放什麼(除了主機的 IP,但是當我這樣做時 ruby​​ 崩潰了)。我還讀到我需要在我的 linux 中創建一個路由,但我不知道是哪一個……

所以我認為我的問題是:我應該向我的 linux 添加什麼路由才能將主機的 IP 地址放在主機名中?

感謝您的幫助。

好吧,我對自己很生氣…這是一個簡單的 Windows 防火牆問題(NAT 配置良好,我不需要添加路由)。

要禁用防火牆:

  1. 開始
  2. 控制面板(小圖示)
  3. Windows 防火牆
  4. 打開或關閉 Windows 防火牆(左欄)

感謝大家的幫助。

如果您的虛擬機是 NATed,那麼您必須連接到主機。主機會將流量重定向到訪客。沒有路由,沒有防火牆設置,沒有別的。你有一個 vmare 守護程序來完成這項工作。

如果您無法連接,這是因為您的主機沒有重定向流量。

用於netstat -anlptu查看 vmvare 守護程序是否綁定到 1564 埠。如果沒有,您的 vmware NAT 存在配置錯誤的問題。

SpacemanSpiff 讓我想到了另一個問題:如果您的訪客電腦有多個 NIC,那麼您可能會遇到路由問題。不在主機內部,而是在客戶機內部。

確保您的客人可以訪問本地網路上的電腦。使用跟踪路由。

要麼將預設路由設置到 NATed NIC,要麼通過 NATed NIC 添加到本地網路的路由。

引用自:https://serverfault.com/questions/379685