VirtualBox 网络模式概览
VirtualBox 提供了多种网络模式,以满足不同的使用场景,理解每种模式的原理是正确配置的关键。

NAT (Network Address Translation) - 网络地址转换
这是 VirtualBox 默认的网络模式。
- 工作原理:就像你家里的路由器,你的虚拟机在 VirtualBox 内部有一个独立的私有 IP 地址(如
0.2.15),但外部网络(包括你的 Mac 主机)看不到这个地址,VirtualBox 在你的 Mac 主机上创建一个虚拟网卡,充当一个路由器,将虚拟机的网络请求转发出去。 - 特点:
- 虚拟机可以访问外网:可以轻松上网、下载更新。
- 主机无法访问虚拟机:这是最核心的限制,你的 Mac 无法直接从终端
ping通或通过浏览器访问虚拟机提供的服务(如 Web 服务器)。 - 虚拟机之间可以通信:如果所有虚拟机都使用 NAT 模式,它们之间可以通过私有 IP 互相访问。
- 配置简单:无需任何额外设置,开箱即用。
- 适用场景:
- 日常上网、学习软件、编程环境搭建,只要虚拟机能连上互联网即可。
- 不需要从主机访问虚拟机服务的场景。
Bridged Adapter (桥接模式)
- 工作原理:将虚拟机的虚拟网卡直接“桥接”到你 Mac 的一个物理网卡上(如 Wi-Fi 或以太网),虚拟机就像在你的局域网中增加了一台独立的物理计算机。
- 特点:
- 虚拟机拥有独立 IP:它会从你的路由器(DHCP 服务器)获取一个与你 Mac 在同一网段的 IP 地址(你的 Mac 是
168.1.100,虚拟机可能是168.1.101)。 - 主机和外部网络都可以访问虚拟机:你的 Mac 和局域网内的任何其他设备都可以像访问一台普通电脑一样访问虚拟机。
- 虚拟机可以访问外网:和物理电脑一样,可以正常上网。
- 需要额外配置:需要在虚拟机网络设置中选择正确的物理网卡进行桥接。
- 虚拟机拥有独立 IP:它会从你的路由器(DHCP 服务器)获取一个与你 Mac 在同一网段的 IP 地址(你的 Mac 是
- 适用场景:
- 需要将虚拟机作为局域网中的一台独立服务器时(如文件服务器、Web 服务器、游戏服务器)。
- 需要测试网络应用,模拟真实网络环境时。
- 需要从其他设备访问虚拟机时。
Host-only Adapter (仅主机模式)
- 工作原理:创建一个完全隔离的私有网络,只有你的 Mac 主机和虚拟机在这个网络中,它不会连接到外部网络。
- 特点:
- 高度隔离:虚拟机无法访问互联网。
- 主机可以访问虚拟机:你的 Mac 可以通过一个特殊的私有 IP 地址(通常是
168.56.x网段)访问虚拟机。 - 虚拟机可以访问主机:虚拟机也可以访问 Mac 主机。
- 虚拟机之间可以通信:所有使用 Host-only 模式的虚拟机都可以在这个私有网络中互相通信。
- 适用场景:
- 创建一个安全的、隔离的测试环境,不希望虚拟机接触外网。
- 开发和调试需要与主机通信,但又不希望泄露到外网的应用。
- 搭建一个本地开发集群,节点间需要互相通信,但不需要外网。
Internal Network (内部网络)
- 工作原理:与 Host-only 类似,但它创建的私有网络是完全封闭的,它不包含你的 Mac 主机,只包含虚拟机。
- 特点:
- 完全封闭:虚拟机之间可以互相通信,但无法访问你的 Mac 主机,也无法访问外网。
- 需要指定网络名称:为了让虚拟机在同一个内部网络中,你必须在创建时为它们指定完全相同的“内部网络名称”。
- 适用场景:
- 模拟一个完全封闭的网络环境,例如模拟一个只有几台服务器、没有网关的企业内网。
- 进行网络安全测试,模拟被攻击的内部网络。
Generic Driver (不支持)
这是一个高级选项,用于使用第三方网络驱动程序,通常用于特定硬件或云环境,在常规使用中很少遇到。
在 macOS 上的配置步骤
安装 VirtualBox Extension Pack
这是至关重要的一步,Extension Pack 提供了 USB 2.0/3.0 支持、NVMe 设备直通、网络功能(如 PXE 启动)等。
- 访问 VirtualBox 下载页面。
- 下载与你 VirtualBox 版本完全匹配的 Extension Pack。
- 打开 VirtualBox,点击
文件->偏好设置。 - 切换到
扩展标签页,点击添加按钮,选择你刚刚下载的.vbox-extpack文件。 - 在弹出的窗口中同意条款并安装。
为虚拟机配置网络
- 关闭你的虚拟机。网络配置必须在虚拟机关闭状态下进行。
- 在 VirtualBox 主窗口中,选中你的虚拟机,点击
设置。 - 切换到
网络标签页。 - 在
连接方式的下拉菜单中,选择你想要使用的模式(NAT, Bridged Adapter, Host-only Adapter)。 - 高级设置:你可以调整网卡(
1)、勾选连接方式(启用/禁用网卡)、设置混杂模式(通常用全部允许)等。
macOS 特有的问题与解决方案
在 macOS 上使用 VirtualBox,尤其是 Apple Silicon (M1/M2/M3) 芯片,可能会遇到一些特定问题。

问题 1:Apple Silicon (M1/M2/M3) 芯片用户无法使用 NAT 模式
- 现象:在 Apple Silicon Mac 上创建的虚拟机,NAT 模式可能无法工作,虚拟机无法连接到互联网。
- 原因:这是 VirtualBox 在 Apple Silicon 上已知的限制。
- 解决方案:改用 Bridged Adapter 模式,对于大多数只需要上网的场景,桥接模式是完美的替代方案。
问题 2:找不到 Bridged Adapter 的物理网卡(Wi-Fi/以太网)
- 现象:在桥接模式下,
名称下拉菜单是空的,或者只有一个en0: Wi-Fi,但没有以太网选项。 - 原因:macOS 网络接口命名方式不同,或者 VirtualBox 未正确检测到网卡。
- 解决方案:
- 打开 macOS 的
系统设置->网络。 - 查看你当前正在使用的网络接口名称,通常是 Wi-Fi 或 以太网。
- 回到 VirtualBox 的网络设置,在
名称下拉菜单中选择对应的接口(如en0: Wi-Fi)。 - 如果列表为空,尝试重启你的 Mac 和 VirtualBox。
- 打开 macOS 的
问题 3:Host-only 网络无法访问互联网
- 现象:虚拟机配置为 Host-only 模式后,可以 ping 通 Mac,但无法上网。
- 原因:这是 Host-only 模式的正常行为,它本身就是为隔离设计的。
- 解决方案:
- 方案A(推荐):如果需要虚拟机能上网,使用 NAT 模式。
- 方案B(高级):在 Mac 上开启 IP 转发,并配置 NAT,让 Mac 充当虚拟机的网关,这比较复杂,不推荐新手尝试。
问题 4:端口转发
这是 NAT 模式下实现主机访问虚拟机服务的最佳方式。
- 场景:虚拟机运行着一个 Web 服务器,端口是 80,你想从 Mac 的浏览器访问
http://localhost:8080,让它自动转发到虚拟机的 80 端口。 - 配置步骤:
- 确保虚拟机网络设置为
NAT模式。 - 在网络设置页面,点击
端口转发按钮。 - 点击右上角的
添加按钮,新建一条规则:- 名称:任意,如
web-forward。 - 协议:TCP。
- 主机 IP:留空(代表 `127.0.0
- 名称:任意,如
- 确保虚拟机网络设置为

