上次写了一篇Xshell登录虚拟机VirtualBox中的Ubuntu方法,后面发现虚拟机中的Ubuntu没办法联网,又折腾了半天搞定后,又看到关于VirtualBox在桥接模式下无法联网 解决方案,这个方案也没有尝试,就写写我现在使用的方案吧。

  1. 首先,将Virtualbox相应的虚拟机-设置-网络-网卡1,设置为仅主机网络;同时网卡2设置为网络地址转换,两个网卡都要勾上插入网线
  2. 打开Virtualbox-管理-主机网络管理器,将DHCP服务器关掉,设置成手动配置网卡,记下其IP地址,我的是 192.168.56.1
    主机网络管理器位置
    网络管理器设置
  3. 登录虚拟机,执行 sudo vi /etc/network/interfaces, 编辑网卡如下,其中enp0s3是用于主机用Xshell登录的,设置规则 address 前三段和前面第2步的IP保持一致为192.168.56,第四段不一样就行,我设置的是192.168.56.2, netmask设置为255.255.255.0, gateway设置为第二部的IP,我这就是192.168.56.1。然后设置第二个网卡enp0s8,设置成自动就好,这个网卡就是用来联网用的。
    虚拟机网卡配置
  4. 这样设置完,重启虚拟机应该就可以联网了,试一下 ping baidu.com,看一下已经可以ping通了。
  5. 要注意的是,在 /etc/network/interfaces 里面,可能原本只有一个网卡,可以通过 sudo lshw -class network 查询出来另外的网卡信息。还要另外注意,两个网卡的设置要和Virtualbox里面的一一对应,如果设置完不行,可以看一下这里的serial是否和Virtualbox里面的MAC地址对应上
    查询网卡信息
  6. 没想过过了一段时间,没有登陆虚拟机,虚拟机连不上外网了,查了半天,原来是因为用了两个网卡,而路由默认选择了内网的网卡去链接。也没有认真研究这些网卡的东西,按照参考的文章重新设置一下就好了。注意之前两个网卡配置要换一下。
    重新设置默认网卡
参考文章

VirtualBox下虚拟机和主机内网互通+虚拟机静态IP的网络配置
VirtualBox的四种网络连接方式
为VirtualBox中的Ubuntu配置双网卡
virtualbox虚拟机NAT模式下不能连接外网的解决方法


cheney
7 声望0 粉丝