IP, маршрутизация и IPv6

Проблемы с MTU на Mac

MTU — это размер самого большого пакета, который отправляет интерфейс. Если какой-то участок пути пропускает только пакеты поменьше, большие передачи могут зависать.

Относится к: macOS 13 Ventura и новее для шагов в «Системных настройках». Команды Терминала работают во всех актуальных версиях macOS.Проверено: 29 октября 2026 г.

Симптомы

  • Некоторые сайты начинают загружаться и останавливаются.
  • Мелкие запросы проходят, а выгрузки или большие загрузки зависают.
  • Проблемы начинаются только с включённым VPN или только в одной сети.

Вероятные причины

  • Участок с меньшим MTU. PPPoE, VPN-туннели и некоторые мобильные каналы передают пакеты меньше, чем стандартный Ethernet с его 1500 байтами.
  • Заблокированные сообщения ICMP. Брандмауэр, блокирующий ICMP, может помешать Mac узнать, что пакет слишком большой.
  • MTU, заданный вручную. Значение, выставленное вручную, может оказаться слишком большим или слишком маленьким для этой сети.

Как проверить

  1. Найдите имя устройства каждого сетевого порта, например en0 для Wi-Fi.

    networksetup -listallhardwareports
  2. Покажите MTU интерфейса.

    networksetup -getMTU en0
  3. Отправьте ping с 1472 байтами данных и установленным флагом Don't Fragment. Вместе с 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. Выберите меню Apple > «Системные настройки» > «Сеть». Нажмите службу, затем «Подробнее», затем «Оборудование».

  3. В меню «Настроить» выберите «Вручную», затем введите MTU.

  4. Или задайте его в Терминале. В этом примере — 1492, распространённое значение для PPPoE.

    networksetup -setMTU en0 1492

    Нужен пароль администратора.

  5. Чтобы вернуть автоматический MTU, используйте эту команду.

    networksetup -setMTUAndMediaAutomatically en0

    Нужен пароль администратора.

  6. Для VPN меняйте MTU в приложении VPN, если там есть такая настройка.

Вопросы

Почему 1472 даёт 1500?

У пакета ping по IPv4 20-байтовый заголовок IP и 8-байтовый заголовок ICMP. 1472 байта данных плюс 28 байт заголовков дают 1500.

Почему 1492 для PPPoE?

PPPoE добавляет собственный заголовок внутри кадра Ethernet. RFC 2516 ограничивает MRU для PPPoE 1492 байтами.

Источники

Источники проверены 29 октября 2026 г. Man-страницы — те, что установлены вместе с macOS; откройте любую командой man <name> в Терминале.