我已將 VirtualBox 從 6.1.26-2 升級到 6.1.28-3(在 Manjaro 中),然後我無法使用 Vagrant 設定專用網路。這是我的 Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.hostname = "Name"
config.vm.network :forwarded_port, guest: 22, host: 2336, id: 'ssh'
config.vm.network :private_network, ip: "10.1.45.3", netmask: "255.255.0.0"
end
當我執行 a 時vagrant up
,我得到: 僅主機網路配置的 IP 位址不在允許的範圍內。請將先前的位址更新到允許的範圍內,然後再次執行該命令。
Address: 10.1.45.3
Ranges: 192.168.56.0/21
Valid ranges can be modified in the /etc/vbox/networks.conf file. For
more information including valid format see:
https://www.virtualbox.org/manual/ch06.html#network_hostonly
我按照連結中的指南並使用以下命令建立了檔案 /etc/vbox/networks.conf:
0.0.0.0/0 ::/0
而且,當我再次跑步時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: 10.1.45.3
Ranges:
Valid ranges can be modified in the /etc/vbox/networks.conf file. For
more information including valid format see:
https://www.virtualbox.org/manual/ch06.html#network_hostonly
為什麼「範圍」為空?我嘗試使用其他值的範圍,但它沒有改變任何東西。
我檢查了 NAT 介面的 IP,沒有衝突(10.0.2.15/24)。
答案1
*
該行的開頭有一個缺失。文件網路設定檔應該:
* 0.0.0.0/0 ::/0
答案2
您可以使用 CIDR 表示法新增網路遮罩和位址範圍IP 位址範圍解釋對於您想要從訪客向主機公開的 IP 位址。將以下內容新增至文件中/etc/vbox/networks.conf
,然後執行以下操作vagrant reload
:
* 10.1.45.0/24
這有效地分隔了網路 IP 位址的前 24 位元(即前 3 個八位元組),其餘部分是從 0 到 255 的位址範圍。