问题提出

在使用virutal box的时候,想要主机通过ssh连接到virtual box中的虚拟机。但总是出现问题,主机总是无法ping通虚拟机。为了解决这个问题,仔细分析了下virtual box的网络配置

virtual box的网络配置说明

virtualbox可选的网络模式有七种

  • Not attached, 表示没插网线,所以网络是断的。
  • Network Address Translation (NAT), 此模式下,虚拟机可以访问主机和外网,但主机、外网及其他虚拟机都不能直接访问该虚拟机。
  • NAT Network, 此模式相比NAT模式,虚拟机之间可以相互访问。
  • Bridged adapter,此模式下,虚拟机类似于内网的一台其他机器,所以它可以访问内网中的其他机器以及外网,内网中的其他机器也可以直接访问它,在该模式下,虚拟机之间也是可以访问的。
  • Internal networking,此模式下,只有虚拟机之间可以相互访问。
  • Host-only networking,此模式下,只有虚拟机和主机、虚拟机和虚拟机之间可相互访问。
  • Generic networking,一般不用。

不同的网络配置下,虚拟机主机局域网, 外网之间的可访问规则可以使用下图清晰的说明:
在这里插入图片描述

问题解决

方案1

使用Bridged adapter模式,TODO

方案2

使用两个网络adpater, 其中一个使用Network Address Translation (NAT)模式,这样可以访问外网,主机;另一个使用Host-only networking模式,这样主机可以访问虚拟机。在arch linux种到此步便配置成功了。

在ubuntu种使用ifconfig出现只有两个网卡问题

  1. 查看所有网卡ifconfig -a
  2. 配置另一个网卡信息,本例种是enp0s8
$sudo vi /etc/network/interfaces

# 更改后的内容为
source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto enp0s3
iface enp0s3 inet dhcp

auto anp0s8
iface enp0s8 inet dhcp

  1. VirtualBox的各种网络模式要如何选择?
  2. 彻底搞定VirtualBox虚拟机的网络设定
  3. 为VirtualBox中的Ubuntu配置双网卡
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐