我有一个启动3个vms的Vagrant文件。 我需要两个VM没有任何互联网访问权限,但它们应该与 拥有互联网的第3个虚拟机位于同一网络上。
期望状态:
vm1 => NAT& 192.168.45.11
vm2 => 192.168.45.12
vm3 => 192.168.45.13
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "Debian-7-2"
config.vm.box_url= "https://dl.dropboxusercontent.com/u/197673519/debian-7.2.0.box"
config.vm.synced_folder ".", "/vagrant_data"
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "512"]
end
config.vm.define "r", primary: true do |router|
router.vm.box = "Debian-7-2"
config.vm.network :private_network, ip: "192.168.45.11"
end
config.vm.define "r1" do |roomate1|
roomate1.vm.box = "Debian-7-2"
config.vm.network :private_network, ip: "192.168.45.12"
end
config.vm.define "r2" do |roomate2|
roomate2.vm.box = "Debian-7-2"
config.vm.network :private_network, ip: "192.168.45.13"
end
end
我发现即使我将vm2和vm3配置为只有1个网络接口,它们也会启动2个网络接口。 (仅限主机和NAT)。我不想要NAT接口。
如何配置vagrant来启动没有nat的虚拟机,从而拒绝对虚拟机进行互联网访问?
答案 0 :(得分:3)
config.vm.provider :virtualbox do |vb|
vb.customize [
"controlvm", :id,
"setlinkstate1", "off",
]
end
这可能就是你想要的 - 这应该只是'断开NAT网络的电缆'。