Linux

本地機器和遠端伺服器上執行的虛擬機之間的路由

  • March 3, 2015

我正在嘗試在我的本地機器(LM)和Host-only Networking在遠端伺服器(RS)上執行的 VirtualBox VM(VM,使用 Vagrant 創建並配置)之間建立路由。設置如下:

LM (OS: Windows 7, IP: 192.168.2.8)
VM (OS: Ubuntu server 14., IP: 192.168.50.4)
RS (OS: Ubuntu server 14., eth0: 192.168.2.204, vboxnet0: 192.168.50.1)

我嘗試將以下路由添加到我的本地電腦:

route add 192.168.50.0 mask 255.255.255.0 192.168.2.204

但是我只能ping遠端伺服器的第二個介面(即192.168.50.1),無法訪問VM。我該如何解決這個問題?

通常VirtualBox中的虛擬機都添加了NAT,所以虛擬機介面不會直接暴露在網路上。要公開它,請打開設置-> 網路並將“附加到:”從 NAT 更改為橋接適配器。然後,您可以決定是否要在 VM 內使用 DHCP 或靜態定址。

Host-only Networking 僅提供對同一台機器上的主機和其他 VM 的訪問,並且在不需要主機的物理網路介面時使用。

使用 Vagrantfile 設置橋接適配器:

DHCP

Vagrant.configure("2") do |config|
  config.vm.network "public_network"
end

靜態IP

Vagrant.configure("2") do |config|
  config.vm.network "public_network", ip: "192.168.2.205"
end

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