我使用Puphpet.com部署了一个带有VirtualBox 5.1.24的本地Ubuntu 16.04 LAMP开发机器。我使用VM IP地址(192.168.56.101)更新了/ etc / hosts。
$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 flippy
192.168.56.101 dev.mysite.com
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
我可以通过SSH连接到虚拟机,但我无法通过IP地址(192.168.56.101)或域名访问它。
Ping失败:
$ ping 192.168.56.101
PING 192.168.56.101 (192.168.56.101) 56(84) bytes of data.
^C
--- 192.168.56.101 ping statistics ---
164 packets transmitted, 0 received, 100% packet loss, time 166895ms
curl失败了:
$ curl -v 192.168.56.101
* Rebuilt URL to: 192.168.56.101/
* Trying 192.168.56.101...
* connect to 192.168.56.101 port 80 failed: Connection timed out
* Failed to connect to 192.168.56.101 port 80: Connection timed out
* Closing connection 0
curl: (7) Failed to connect to 192.168.56.101 port 80: Connection timed out
此外,主机上的netstat -rn
未显示虚拟机IP地址的路由:
$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlp1s0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlp1s0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp1s0
我还能检查什么?
答案 0 :(得分:0)
我提供了an answer here,我认为这是相关的,但是我会在这里发布,以及任何其他人想知道这个线程寻找解决方案。
这听起来很像bug in VirtualBox 5.1.24,修正于5.1.26。
问题似乎是VirtualBox无法为仅限主机的网络创建路由引起的。要检查是否是这种情况,在主机上运行vagrant up
后,从终端运行netstat -rn
。这将显示内核IP路由表中的可用路径。将有几行输出,但在其中你应该看到你的私人网络IP看起来像这样:
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.56.101 0.0.0.0 255.255.255.0 U 0 0 0 vboxnet3
如果您没有看到该IP的路由集,那么您可能已被此错误所困扰。升级到Virtualbox 5.1.26为我解决了这个问题(在Linux上。)但是puphpet.com在主页上说明了这一点:
官方推荐的Virtualbox版本是5.0.26!
所以你可能想回滚到那个版本