概览

image-20190716220900658

官方文档介绍-6.2. Introduction to Networking Modes

  • 未指定 (Not attached)

    • VirtualBox向客户报告存在网卡,但不连接。
  • 网络地址转换 (NAT) (Network Address Translation (NAT))

    • 如果您只想浏览Web、下载文件和查看客户机内部的电子邮件,那么这种默认模式应该就足够了,您可以跳过本节的其余部分。请注意,在使用Windows文件共享时存在一定的限制。
  • NAT 网络 (NAT Network)

    • NAT网络是一种允许出站连接的内部网络
  • 桥接网卡 (Bridged networking)

    • 这是针对更高级的网络需求,比如网络模拟和在客户机中运行服务器。当启用时,VirtualBox将连接到您安装的网卡之一,并直接交换网络数据包,从而绕过主机操作系统的网络堆栈。
  • 内部网络 (Internal networking)

    • 这可以用来创建一种不同的基于软件的网络,它对选定的虚拟机是可见的,但对运行在主机上的应用程序或外部世界是不可见的
  • 仅主机(Host-Only)网络 (Host-only networking)

    • 这可以用来创建一个包含主机和一组虚拟机的网络,而不需要主机的物理网络接口。相反,在主机上创建一个类似于Loopback接口的虚拟网络接口,提供虚拟机和主机之间的连接。
  • 通用驱动 (Generic networking)

    • 通过允许用户选择可以包含在Oracle VM VirtualBox中或分发在扩展包中的驱动程序,很少使用共享相同通用网络接口的模式。
模式虚拟机 → 主机主机 ← 虚拟机虚拟机1 ↔︎ 虚拟机2虚拟机 → Net/Lan虚拟机 ← Net/Lan
Host-only
Internal
Bridged
NAT端口转发端口转发
NATservice端口转发端口转发

网络地址转换 (NAT)

NAT:Network Address Translation,网络地址转换

特点:

  1. 虚拟机可以访问主机(及网络中其他主机), 主机(及网络中其他主机)不能访问虚拟机, 是单向的.
  2. 虚拟机与虚拟机是相互独立的, 不能互相访问
  3. 可以通过端口转发(Port forward)实现主机访问虚拟机

适用场景:

  1. 主机通过网线或wifi联网后, 虚拟机可以通过主机访问网络
  2. 配置端口转发(Port forward)后, 主机可以访问虚拟机上的服务 (e.g. 数据库)

ip样式:

ip 10.0.2.15

网关 10.0.2.2

原理:

虚拟机的请求传递给NAT Engine,由它来利用主机进行对外的网络访问,返回的数据包再由NAT Engine给虚拟机。

VirtualBox中配置

image-20190716225507743

image-20190716225641439

桥接网卡 (Bridged networking)

它是通过主机网卡,架设了一条桥,直接连入到网络中了。因此,它使得虚拟机能被分配到一个网络中独立的IP,所有网络功能完全和在网络中的真实机器一样。

网桥模式下的虚拟机,你把它认为是真实计算机就行了。

特点:

  1. 虚拟机与主机(及网络中其他主机)可以互相访问
  2. 多个虚拟机之间也可以互相访问
  3. IP一般是DHCP动态分配的, 与主机的ip是同一网段

以上各点基于一个前提:主机可以上网, 如果主机不可以上网,所有1-3特点均无, 这时主机的VirtualBox Host-Only Network 网卡是有ip的,192.168.56.1

VirtualBox配置:

image-20190716231807350

内部网络 (Internal networking)

虚拟机与外网完全断开,只实现虚拟机于虚拟机之间的内部网络模式。

特点:

  1. 虚拟机与虚拟机的关系:在设置网络时,两台虚拟机设置同一网络名称, 可以相互访问
  2. 虚拟机不可访问主机及外网

仅主机(Host-Only)网络

特点:

1. 虚拟机不可以上网
  1. 虚拟机之间可以ping通
  2. 虚拟机可以ping通主机(注意虚拟机与主机通信是通过主机的名为VirtualBox Host-Only Network的网卡,因此ip是该网卡ip 192.168.56.1,而不是你现在正在上网所用的ip)
  3. 主机可以ping通虚拟机

应用场景:

在主机无法上网的情况下(主机可以上网的情况下可以用host-only,也可以用桥接),需要搭建一个模拟局域网,所有机器可以互访

参考资料

givencui 博客首发, 转载请注明来自GivenCui


本文由 givencui 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

楼主残忍的关闭了评论