我正在尝试将 vagrant 与 Windows 一起用作客户机。
当我使用 config.vm.network 配置具有静态 IP 的仅主机网络时,该设置不起作用。
这是我的 Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "win08r2"
config.vm.guest = :windows
config.ssh.max_tries = 1
config.ssh.timeout = 10
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
config.vm.network :private_network, ip :"192.168.56.10"
config.vm.network :public_network
end
vm 的 ip 类似于 196.254.xx.xx 或其他,与 192.168.56.10 不同。
我的 vagrantfile 有问题吗?
谢谢,
答案1
我无法让我的 CentOS vm 使用 vagrant 的私有网络获取 IP。它用该 IP 创建了一个新接口,但没有使用它。我最终这样做了
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "3072", "--cpus", "2", "--natnet1", "10.252/16"]
end
除了分配一些资源之外,此行还将强制 virtualbox 使用 10.252 的 nat。二十.yy。第一个接口的默认 ip 是 10.252。0.15. 每个界面后增加二十增加了 2。yy 保持为 15。这是 virtualbox 的行为,而不是 vagrant 的行为。希望这能有所帮助。
答案2
这个设置对我有用:
config.vm.network "hostonly", "192.168.56.10"
如果你想访问你的主机,你的主机 IP 地址将是192.168.56.1
答案3
如果您在底层使用 VirtualBox,则可以禁用该网络主机的 DHCP。
例如,如果您的网络接口是vboxnet0
,请打开 VirtualBox,导航到File > Preferences > Network
并单击Host-only Networks
选项卡。
然后选择 后单击编辑按钮来编辑您的网络接口vboxnet0
。编辑对话框打开后,导航到DHCP Server
选项卡并取消选中Enable DHCP
选项。
这样,网络接口就不会自动分配 IP。