vagrant box的公共静态ip

Num*_*ata 13 networking nat routing vagrant

我有一个带有 1 个以太网卡和 2 个公共静态 IP(188.120.245.4 和 188.120.244.5)的服务器(Debian Squeeze)。

我想要什么:通过静态 IP (188.120.244.5) 访问设置虚拟框 (Ubuntu)。

我在尝试什么:

  • config.vm.forward_port - 好主意:在主机上用 188.120.244.5 设置接口“eth1:1”,并添加到 Vagrant 文件“config.vm.forward_port = hmm ..?”
  • config.vm.network :hostonly, "188.120.244.5" - 不工作。在主机上创建了新接口,IP 为“188.120.244.1”。当然 188.120.244.1 IP 不是我的,我无法通过这个 IP 访问我的服务器。
  • config.vm.network :bridged - 我很困惑这是如何工作的:)

我现在拥有的是:不工作的配置。

Debian-host-machine# cat Vagrantfile
Vagrant::Config.run do |config|
  config.vm.define :gitlab do |box_config|
    box_config.vm.box = "ubuntu"
    box_config.vm.host_name = "ubuntu"
    box_config.vm.network :bridged
    box_config.vm.network :hostonly, "188.120.244.5", :auto_config => false
  end
end

Debian-host-machine# ifconfig
eth1      Link encap:Ethernet  HWaddr 00:15:17:69:71:bb  
          inet addr:188.120.245.4  Bcast:188.120.247.255  Mask:255.255.248.0

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0

vboxnet0  Link encap:Ethernet  HWaddr 0a:00:27:00:00:00  
          inet addr:188.120.244.1  Bcast:188.120.246.255  Mask:255.255.255.0

Ubuntu-virtual-machine# ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:ee:8d:0c  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0

eth1      Link encap:Ethernet  HWaddr 08:00:27:45:71:87  

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
Run Code Online (Sandbox Code Playgroud)

如何通过网络中的公共静态 IP 访问虚拟盒子?

我使用的是 Oracle VM VirtualBox Manager 4.1.18 和 Vagrant 版本 1.0.3。

提前感谢您的反馈。

nev*_*ves 15

从 1.3.0 版开始:

Static IP can now be set on public networks. [GH-1745]
Run Code Online (Sandbox Code Playgroud)

你只需要把这个配置放在你的 Vagrantfile (文档)中

config.vm.network "public_network", ip: "192.168.0.200"
Run Code Online (Sandbox Code Playgroud)

这个 Vagrant 的东西真的很棒:-)