有帮助的话请点个赞吧~

之前一直用VMware,新电脑内存小了点就换了个VirutalBox,然后因为要搞个课设需要两台虚拟机互通,就来学习一下虚拟网络的配置。

Ubuntu安装必需配置花里胡哨配置与一些高版本报错教程,可以根据需要点击链接看看哦。

环境

  • 主机:Win10
  • 虚拟机:Ubuntu 16.04

网络连接方式简介(参考官方文档)

先来个简单功能总结,不想看介绍可以直接一张表选择

模式虚拟机→主机主机→虚拟机虚拟机↔虚拟机虚拟机→Net/LANNet/LAN→虚拟机
NAT端口转发×端口转发
NATservice端口转发端口转发
Host-Only××
Internal××××
Bridged

网络地址转换(NAT)

  • 是默认模式,装好系统什么都不用改就可以直接联网。
  • 通过构造一个虚拟网卡,连接虚拟机的交换机以及NAT设备等,这个网卡不可见(VMware里面叫VMnet8),虚拟机发出和收到的请求经由NAT Engine处理实现网络访问。
  • 外部不可见,即外部ping不了虚拟机,其他虚拟机也ping不了。
  • ip地址通常为10.0.2.xx,因为默认虚拟网卡连接到10.0.2.0

NAT网络

  • 一种允许出站连接的内部网络
  • 好像……不太有用,不多介绍。

仅主机(Host-Only)网络

  • 在主机上虚拟一个专供虚拟机使用的host-only网卡,然后把虚拟主机桥接到上面,通过设置这个host-only网卡实现网络连接。
  • 可以在Windows网络适配器里看到一个VirtualBox Host-Only Network网卡,利用这个网卡进行通信。
  • 所有虚拟机都连在这个网卡下,所以相互之间可以访问,当然也属于同一网段。
  • 要访问主机或者上网需要一些额外设置,操作相对复杂一点。
  • ip地址通常为192.168.56.x,因为VirtualBox Host-Only Network网卡ip为192.168.56.1(网关)。

内部(Internal)网络

  • 用于创建不同类型的基于软件的网络,该网络对选定的虚拟机可见,但对主机上运行的应用程序或外部世界不可见。
  • 用得也不多,不多介绍。

通用驱动(Generic networking)

  • 共享相同通用网络接口的模式,允许用户选择可包含在 Oracle VM VirtualBox 中或分发到扩展包中的驱动程序。
  • 官方认证很少使用(rarely used mode)。

桥接网卡(Bridged)

  • 用于一些高级网络需求,例如网络模拟和用户机中运行的服务器。启用后,Oracle VM VirtualBox 将连接到主机安装的网卡之一并直接交换网络数据包,从而绕过主机操作系统网络堆栈。
  • 像是真实存在于主机网路中的一台主机,主机能上网才能上网。
  • ip与本机处于同一网段,因为网关和主机一样。

桥接方式配置网络

在主机新建一个网卡

方法一:开启热点

  • 在WIFI页面打开电脑的网络热点(最右边那个):在这里插入图片描述

  • 此时会自动创建一个网卡,打开网络适配器就可以看到:在这里插入图片描述

方法二:新建网卡

  • Win+X打开设备管理器;
  • 操作→添加过时硬件;
  • 安装我手动从列表选择的硬件→网络适配器→厂商:Microsoft;型号:KM-TEST环回适配器;
  • 创建完成,打开网络适配器就可以看到;
  • 右键打开连接了WIFI的那个网卡WLAN的属性,在共享选项卡里设置允许其他网络用户通过此计算机的Internet来连接,下面选择新建的那个网卡。

配置虚拟机网络

  • 关闭虚拟机打开设置→网络
  • 连接方式:桥接网卡,界面名称:(刚才新建的网卡)。

设置虚拟机网络

修改网络配置文件:

sudo gedit /etc/network/interfaces
添加内容:

auto enp0s3
iface enp0s3 inet dhcp

其中,enp0s3是网卡名称,DHCP表示自动获取ip地址,也可以改成static变成固定地址,下面加一行地址设置:

auto enp0s3
iface enp0s3 inet static
address 192.168.56.103

然后重启网络服务:

service network-manager restart

就配置完成啦。

ifconfig

可以看到配置结果,也可以ping主机、其他虚拟机或其他网络主机。


欢迎指正与讨论!
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐