为仅主机网络配置的 IP 地址不在允许的范围内

The IP address configured for the host-only network is not within the allowed ranges

我在 macOS 上 运行 vagrant up 时遇到此错误:

The IP address configured for the host-only network is not within the allowed ranges. Please update the address used to be within the allowed ranges and run the command again.

Address: 192.168.10.10 Ranges: 192.168.56.0/21

同样的 Vagrantfile 以前可以,但现在不行了。

有什么想法吗?

我发现“问题”在 VirtualBox 6.1.26 之后开始出现。

解决方法是在你的 macOS /etc/vbox/networks.conf 上创建一个内容为

的新文件
* 10.0.0.0/8 192.168.0.0/16
* 2001::/64

确保包含 星号 *。那么这个问题应该就没有了。

关于networks.conf的内容,可以在https://www.virtualbox.org/manual/ch06.html#network_hostonly

找到

系统升级后,我在 macOS 上遇到了同样的问题。 在Security & Privacy下的System Preferences中,启用VirtualBox / Oracle解决了它。

通过如下修改 vagrantfile,它适用于我。

cfg.vm.network "private_network", ip:"192.168.56.10"

我刚刚将 IP 地址从“192.168.1.10”更改为“192.168.56.10”。

(感谢@苗宏博的回答link(https://www.virtualbox.org/manual/ch06.html#network_hostonly))

如果您没有创建 Vagrantfile,则不建议直接更改它。 你可以改用这个

vagrant config static_ip 192.168.56.2

IP地址可以是192.168.56.2 - 192.168.63.254范围内的任何一个。确保在进行更改后 运行 vagrant reload

轻松解决

$ mkdir /etc/vbox/
$cd /etc/vbox/

vbox$ sudo vi networks.conf

  * 10.0.0.0/8 192.168.0.0/16
  * 2001::/64

这些是我为解决问题而采取的一些故障排除步骤。

  1. 在安全和隐私下的系统偏好设置中,启用 VirtualBox / Oracle。
  2. 更改后重启 VirtualBox

如果这些不能解决问题,请检查您的 Vagrant 文件中的以下内容。

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| os = "generic/ubuntu2004" net_ip = "192.168.50"

如您所见,给定的 ip 范围不是 vagrant 正在寻找的。将 net_ip 值更改为 192.168。56 .

这将解决问题。