HOST 無法透過 Virtualbox 上的 NAT 網路連接到 GUEST,但其他裝置除外

HOST 無法透過 Virtualbox 上的 NAT 網路連接到 GUEST,但其他裝置除外

它讓我對 NAT 網路感到困惑,但我可以使用 VMware 和 Parallels Desktop 來做到這一點。

我知道 NAT 是如何運作的,只需要解釋一下這種情況。

以下內容來自官方文件。為什麼HOST無法透過NAT連接GUEST? 在此輸入影像描述

答案1

如果您想要使用 NAT 網路從主機連線到來電賓電腦:

首先,建立一個 NAT 網路 - 在 VirtualBox Manager 中建立網絡,檔案 -> 首選項 -> 網絡,並為其命名。

將名為 NAT 網路的名稱指派給 VirtualBox 網路設定中的每台來賓電腦。

記下運行來賓電腦時分配給它們的 IP 位址。類似於 10.0.2.15 或 10.0.2.4。在 Posix 系統中,執行「ifconfig」並查看 em0 顯示的 IP 位址。記錄哪個位址到達哪台客戶機。

編輯 NAT 網路的連接埠轉送。在 VirtualBox 管理員中,前往檔案 -> 首選項 -> 網絡,然後按一下您正在使用的 NAT 網路的編輯按鈕。按一下連接埠轉送。新增將主機上的連接埠轉送到來賓上的 IP 位址 + 連接埠的規則(您不需要為主機設定 IP 位址,這是可選的)。

答案2

我想了一下,想到了一個易於實施的理想解決方案。

新增第二個接口!

第一個是虛擬機器與網際網路通訊的 NAT 介面。另一個是僅主機介面。就我而言,我正在安裝 CentOS 來賓作業系統。新介面出現,兩者都在各自的網路上獲得了 IP。僅主機不建立預設路由,因此不會發生衝突。它就是有效的。我使用 VirtualBox 中定義的僅主機網路上的 IP 從主機公開存取來賓作業系統。

答案3

要使用 NAT 網路從主機連接到達賓虛擬機,只需新增連接埠轉送即可。

之後,您可以像訪問本機連接埠一樣存取轉送的連接埠:

ssh root@localhost

在此輸入影像描述

答案4

2年前就被這個咬過。為了簡單起見,我希望所有的來賓都與主機的 VirtualBox 介面位於同一子網路中,透過 SSH 或 VNC 連接到其中的任何一個。並且讓他們互相看到並訪問互聯網(僅限客戶端)。

由於我有大約10 個來賓虛擬機用於開發,在一台經常從一個網絡更改為另一個網絡的筆記型電腦主機上,我無法使用橋接(希望為所有來賓使用固定IP,以便從主機輕鬆訪問) 。

NAT 網路幾乎是完美的,除了訪客和主機之間沒有通訊。

僅主機網路幾乎是完美的,除了客人無法上網。

我最終設法獲得了一個工作配置,其中一個最小的 Debian VM 充當具有兩個介面的 DNSmasq,以及這兩個介面的橋接器。好吧,直到上週,由於與另一個軟體衝突,我剛剛關閉了 virtualbox 網路接口,當重新啟用它時,主機到訪客的訪問將不再起作用。

2 小時後,設法恢復客人的網路存取權限,或是客人之間的存取權限,而不是主機的存取權限。

也許可以嘗試將所有來賓作為最後的手段僅主機,並且網關虛擬機執行 NAT,儘管將兩個 NAT 菊花鏈連接起來會非常難看,並且來賓之間和主機之間具有不同的地址。

相關內容