---
title: "Mac MTU 问题：页面卡住，小请求正常 · Kilobat 指南"
url: "https://kilobat.app/zh-hans/guides/mtu-problems-mac.html"
description: "在 Mac 上小请求正常，但大页面、上传或 VPN 流量卡住。找出能通过的最大数据包，并设置 MTU。"
---

IP、路由与 IPv6

# Mac 上的 MTU 问题

MTU 是接口发送的最大数据包大小。如果路径中某段链路只接受更小的数据包，大型传输就可能卡住。

适用于：“系统设置”步骤适用于 macOS 13 Ventura 及更高版本。“终端”命令适用于所有当前 macOS 版本。 · 核查日期：2026年10月29日

## 症状

- 有些网站开始加载后就停住了。
- 小请求正常，但上传或大文件下载会卡住。
- 只有开启 VPN 时，或只在某个网络上才出现问题。

## 可能的原因

- **链路的 MTU 较小。**PPPoE、VPN 隧道和部分移动网络链路承载的数据包比标准以太网（1500 字节）更小。
- **ICMP 消息被阻止。**阻止 ICMP 的防火墙会让 Mac 无法得知数据包过大。
- **手动设置的 MTU。**手动设置的值对当前网络来说可能过大或过小。

## 如何检查

1. 找到每个网络端口的设备名称，例如 Wi-Fi 是 `en0`。

   ```
   networksetup -listallhardwareports
   ```
2. 显示接口的 MTU。

   ```
   networksetup -getMTU en0
   ```
3. 发送一个带 1472 字节数据、设置了“禁止分片”位的 ping。加上 28 字节的报头，正好 1500 字节。

   ```
   ping -D -s 1472 -c 3 1.1.1.1
   ```
4. 如果没有收到回复，尝试更小的值。找出能收到回复的最大值，再加上 28。

   ```
   ping -D -s 1464 -c 3 1.1.1.1
   ```
5. 显示接口可接受的 MTU 范围。

   ```
   networksetup -listValidMTURange en0
   ```

## 如何修复

1. 仅在网络服务商或管理员建议时，或完成上述测试后，才更改 MTU。
2. 选取苹果菜单 >“系统设置”>“网络”。点按服务，点按“详细信息”，然后点按“硬件”。
3. 将“配置”设为“手动”，然后输入 MTU。
4. 也可以在“终端”中设置。此示例使用 1492，这是 PPPoE 的常见值。

   ```
   networksetup -setMTU en0 1492
   ```

   需要管理员密码。
5. 要恢复自动 MTU，使用以下命令。

   ```
   networksetup -setMTUAndMediaAutomatically en0
   ```

   需要管理员密码。
6. 对于 VPN，如果 VPN App 提供此设置，就在其中更改 MTU。

## 常见问题

**为什么 1472 对应 1500？**

IPv4 ping 数据包包含 20 字节的 IP 报头和 8 字节的 ICMP 报头。1472 字节数据加上 28 字节报头，正好 1500。

**为什么 PPPoE 用 1492？**

PPPoE 会在以太网帧内加入自己的报头。RFC 2516 将 PPPoE 的 MRU 限制为 1492 字节。

## 参考资料

- networksetup(8)，macOS 27.2 自带的 man 手册页
- ping(8)，macOS 27.2 自带的 man 手册页
- [Apple 支持：在 Mac 上更改硬件设置](https://support.apple.com/guide/mac-help/change-hardware-settings-on-mac-mchlp2505/mac)
- [RFC 2516：A Method for Transmitting PPP Over 以太网 (PPPoE)](https://www.rfc-editor.org/rfc/rfc2516)

参考资料核查于 2026年10月29日。man 手册页为 macOS 自带版本；在“终端”中用 `man <name>` 打开。

## 相关指南

- [Mac 上的 IPv6 问题](https://kilobat.app/zh-hans/guides/ipv6-problems-mac.html): 大多数网络会同时为 Mac 分配 IPv4 和 IPv6 地址。
- [Mac 上 VPN 已连接但无法上网](https://kilobat.app/zh-hans/guides/vpn-connected-no-internet.html): VPN 会通过隧道发送流量。
- [Mac 上 SSH 和 Git 超时](https://kilobat.app/zh-hans/guides/ssh-git-timeouts.html): SSH 和 Git 需要与服务器之间有可用的 TCP 连接。
- [在“终端”中查看 Mac 网络设置](https://kilobat.app/zh-hans/guides/network-settings-terminal.html): macOS 自带命令行工具，可以显示与“系统设置”中相同的网络设置，而且信息更多。
