在流浪时,guest虚拟机框被分配了错误的IP地址并导致以下错误:
...
...
SSH address: 127.0.0.1:2222
serverbox: SSH username: vagrant
serverbox: SSH auth method: private key
serverbox: Warning: Connection timeout. Retrying...
serverbox: Warning: Connection timeout. Retrying...
serverbox: Warning: Connection timeout. Retrying...
...
我在家里和办公室工作,所以必须始终根据我所处的位置重新配置Vagrantfile中的IP地址分配,因为子网是不同的。 (192.168.x.x与10.80.x.x)
直到昨天才行得很好。我不知道是什么导致了这些问题,因为我没有做出任何调整。
Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "512"]
end
config.vm.network "public_network", ip: '10.80.2.144'
#config.vm.network "public_netowrk", ip: '192.168.1.144'
end
...
Vagrantfile应该将我的访客箱放在10.80.x.x地址上,但netstat显示我的邮箱仍然在192.168.x.x地址上。这意味着我无法使用guestbox,因为它将进入一个超出界限的子网。
我已经完成了停止和重新启动以及完全重新启动我的CPU并检查以确保BIOS中的虚拟化已启用。
我也尝试过vb.gui = true,但是我的机器运行无头。 Virtualbox的预览日志记录屏幕可能会提供一些有用的信息,但它很小,我无法从中做出任何贡献。如果有人对如何制作更大的东西有任何建议可能会有很大的帮助。
更新:
所以我的解决方案是一个不受欢迎的解决方案,但我的工作日已经被鱼雷击中,需要继续前进,所以我只是摧毁了我的盒子并重新开始。
显然,我的钥匙变得不安全了。不知道是怎么回事,但是新的盒子取代了我的钥匙。
答案 0 :(得分:7)
我对你的问题的建议。
更改IP后,在该实例上运行vagrant reload
和vagrant provision
。
如果没有解决您的问题,请尝试第二个:
将public_network更改为private_network
config.vm.network "private_network", ip: '10.80.2.144'
#config.vm.network "private_network", ip: '192.168.1.144'
答案 1 :(得分:2)
只需在Vagrantfile和vagrant reload
中添加这两行config.vm.network "forwarded_port", guest: 80, host: 8080,
auto_correct: true
config.vm.network "private_network", ip: "192.168.100.1",
auto_config: false
希望问题将得到解决。
答案 2 :(得分:0)
注意强>
这个答案不是解决问题的方法。当您无法进入流浪盒时调试问题可能会有所帮助
我使用了
来解决问题1.8.1
5.0.12r104815
Vagrantfile
选项config.vm.network "private_network", ip: "10.50.50.3"
以下步骤帮助我解决了我的问题:
Vagrantfile
vb.gui = true
中启用了GUI
vagrant up
检查了devbox中的接口IP
$ sudo ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'
10.0.2.15
检查了本地VirtualBox界面(带ifconfig
):
vboxnet8 Link encap:Ethernet HWaddr 0a:00:27:00:00:08
inet addr:10.50.50.1 Bcast:10.50.50.255 Mask:255.255.255.0
inet6 addr: fe80::800:27ff:fe00:8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:258 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:39147 (39.1 KB)
我看到虚拟机的ip不适合主机vboxnet8
接口ip范围。
我尝试使用vagrant reload
重新加载VM,但没有成功。唯一帮助我的是使用vagrant destroy -f
,vagrant up
重置虚拟机(请参阅下面的其他评论)。
这怎么可能发生?在第一次启动VM后,我的一个配置脚本更改了/etc/ssh/sshd_config
,之后无效。然后脚本重新启动ssh导致连接问题。
Vagrant启动了虚拟机,但我无法进入虚拟机。
然后我必须更改导致奇怪情况的private_network
ip。
最后,/etc/ssh/sshd_config
有效再次修复我的问题。