---
title: "Mac 上的虚拟机无法上网：UTM、Parallels 和 VMware 的网络模式 · Kilobat 指南"
url: "https://kilobat.app/zh-hans/guides/vm-no-internet-mac"
description: "UTM、Parallels Desktop 或 VMware Fusion 中的虚拟机无法上网，而 Mac 可以。请检查网络模式、VPN 和过滤器。"
---

# UTM、Parallels 或 VMware 虚拟机在 Mac 上无法上网

虚拟机通过虚拟机 App 在 Mac 上设置的某种模式连接互联网。共享或 NAT 模式通过 Mac 联网。桥接模式则让虚拟机作为另一台电脑出现在你的网络上。

**让你的智能体来解决**拷贝一条提示词，适用于 Claude Code、Codex 或任何能使用终端的智能体。

我的 Mac 出现了这个问题：UTM、Parallels 或 VMware 虚拟机在 Mac 上无法上网。请阅读 https://kilobat.app/zh-hans/guides/vm-no-internet-mac.md，并和我一起逐步处理。如果缺少 Kilobat CLI，请安装：brew install seifip/kilobat/kilobat。请你自己运行指南中的终端和 kilobat 检查，并告诉我发现了什么。列出只有我才能完成的步骤。更改任何设置之前先问我。

适用于：macOS 14 Sonoma 及更高版本上的 UTM、Parallels Desktop 和 VMware Fusion。 · 核查日期：2026 年 11 月 7 日

## 症状

- Mac 可以上网，但客户机系统不能。
- 客户机有 IP 地址，但网站无法加载。
- 在桥接模式下，客户机没有获得 IP 地址，或获得了错误的地址。
- 在 Mac 上开启 VPN 之前，虚拟机正常工作。
- 虚拟机在 macOS 更新或虚拟机 App 更新后停止工作。

## 可能的原因

- **Wi-Fi 上的桥接模式。**UTM 表示，使用 Wi-Fi 接口桥接可能需要额外配置。Parallels 表示，桥接问题可能来自本地网络。
- **没有互联网的模式。**UTM 的“仅主机”模式会阻止 WAN 流量，所以客户机无法上网。VMware 的 Host-only 模式只把虚拟机连接到 Mac。
- **Mac 上的 VPN 或安全 App。**Apple 表示，VPN 和其他网络监控软件可能影响互联网访问。虚拟机的流量也会经过该软件。
- **针对虚拟机 App 的防火墙规则。**对 Mac 上的防火墙 App 来说，虚拟机的流量来自虚拟机 App 的进程。针对该 App 的阻止规则也会阻止客户机。
- **客户机系统自身的设置。**客户机可能有错误的 DNS 服务器、防火墙，或需要在客户机中安装驱动程序的网卡。

## 如何检查

1. 确认 Mac 本身可以上网。
2. 打开虚拟机的设置，找到网络模式，例如“共享网络”、“桥接”或“仅主机”。
3. 在客户机中，显示 IP 地址和网关。在 Linux 上使用 `ip addr`，在 Windows 上使用 `ipconfig`。
4. 在客户机中，ping 网关。然后 ping 一个公网地址，例如 1.1.1.1。
5. 在客户机中，查询一个名称，例如 example.com。如果 ping 成功但名称查询失败，问题出在 DNS。
6. 在 Mac 上，列出 VPN 配置及其状态。

   ```
   scutil --nc list
   ```
7. 选取苹果菜单 >“系统设置”>“通用”>“登录项与扩展”。点按“网络扩展”旁边的信息按钮。

## 如何修复

1. 将虚拟机设为共享模式。在 UTM 中，选择“共享网络”。在 Parallels 中，选择“Shared Network”。在 VMware Fusion 中，选择 NAT 模式“Share with my Mac”。
2. 更改模式后，重新启动客户机系统。
3. 如果你需要桥接模式，请桥接到以太网，而不是 Wi-Fi。
4. 在 UTM 中，如果共享模式失败，请尝试“模拟 VLAN”。UTM 在自己的进程中运行这个网络。
5. 暂时关闭 Mac 上的 VPN 做个测试。如果虚拟机随后正常，请阅读 VPN 厂商关于本地或共享流量的设置。
6. 更新虚拟机 App 和 macOS。安装虚拟机 App 提供的客户机工具。
7. 如果客户机有 IP 地址但无法上网，请检查客户机的 DNS 和防火墙设置。

## 使用 Kilobat

1. Kilobat 的检查在 Mac 上运行。当失败的代码在虚拟机中运行时，请使用 `--context vm`。报告会以一条要在客户机中运行的命令结尾。

   ```
   kilobat why example.com --context vm
   ```
2. Kilobat 把虚拟机的流量计在虚拟机 App 的进程名下。请查看当前配置中该 App 的规则。

   ```
   kilobat rules
   ```
3. 如果虚拟机 App 有阻止规则，请使用 `kilobat reset` 和该 App 的 bundle ID 将其移除。
4. 检查 Mac 上的 VPN 是否更改了 DNS 或路由。

   ```
   kilobat vpn
   ```

## 常见问题

**我应该使用哪种模式？**

UTM 建议为新的虚拟机使用“共享网络”。当桥接模式无法上网时，Parallels 建议使用“Shared Network”。

**虚拟机 App 需要“本地网络”权限吗？**

Apple 的本地网络隐私规则适用于 App，但 Apple 没有说明它们如何适用于客户机的流量。如果客户机无法访问本地设备，请在“系统设置”>“隐私与安全性”>“本地网络”中检查虚拟机 App。

**为什么有些 App 在使用 Apple 的 Virtualization 框架时无法提供桥接模式？**

Apple 表示，桥接的网络设备需要虚拟化软件的受限权利。NAT 设备则不需要。

## 参考资料

- [UTM 文档：网络 (QEMU)](https://docs.getutm.app/settings-qemu/devices/network/network)
- [UTM 文档：网络 (Apple Virtualization)](https://docs.getutm.app/settings-apple/devices/network/)
- [Parallels 知识库：桥接模式下的互联网连接问题](https://kb.parallels.com/124804)
- [Broadcom 知识库：了解 VMware Fusion 中的网络类型](https://knowledge.broadcom.com/external/article/303393)
- [Apple 开发者：VZNATNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vznatnetworkdeviceattachment)
- [Apple 开发者：VZBridgedNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzbridgednetworkdeviceattachment)
- [Apple 开发者：TN3179 Understanding local network privacy](https://developer.apple.com/documentation/technotes/tn3179-understanding-local-network-privacy)
- [Apple 支持：在 Mac 上更改“登录项与扩展”设置](https://support.apple.com/guide/mac-help/mchlbcf0dfe2/mac)
- [Apple 支持：如果 Mac 无法通过 Wi-Fi 连接到互联网](https://support.apple.com/en-us/101588)
- scutil(8)，macOS 27.2 自带的 man 手册页

核对于 2026 年 11 月 7 日。

## 相关指南

- [无法从 Mac 访问 Docker 容器](https://kilobat.app/zh-hans/guides/docker-container-from-mac): Mac 上的 Docker 在 Linux 虚拟机中运行容器。
- [App 找不到本地网络上的设备](https://kilobat.app/zh-hans/guides/local-network-permission): macOS 15 Sequoia 及更高版本会在 App 连接本地网络设备前先征求许可。
- [Mac 上 VPN 已连接但无法上网](https://kilobat.app/zh-hans/guides/vpn-connected-no-internet): VPN 会通过隧道发送流量。
- [Mac 上内容过滤器屏蔽了网站](https://kilobat.app/zh-hans/guides/content-filter-blocking): 内容过滤器会检查网页流量并阻止某些网站。
- [macOS 防火墙阻止传入连接](https://kilobat.app/zh-hans/guides/macos-firewall-incoming): macOS 防火墙控制其他电脑向 Mac 发起的连接。
