Skip to content
EN
← Все статьи

Что такое MTU: фрагментация и как исправить проблемы

MTU (Maximum Transmission Unit) — это максимальный размер пакета данных в байтах, который сетевой интерфейс может передать за один кадр без фрагментации. Для Ethernet стандартное значение — 1500 байт. Если пакет больше MTU канала, он либо разбивается на части, либо отбрасывается, что вызывает медленную или «зависающую» загрузку.

В этом руководстве разбираем, что такое MTU и MSS, какие значения типичны для Ethernet, PPPoE и VPN, как работает Path MTU Discovery и почему возникают «чёрные дыры MTU», как измерить оптимальный размер пакета командой Ping с флагом DF и как настроить MTU на роутере, Windows и Linux.

Что такое MTU

MTU задаёт верхнюю границу полезной нагрузки одного кадра канального уровня. Пакет IP размером до MTU передаётся целиком; если данные превышают лимит, отправитель или промежуточный маршрутизатор должен фрагментировать IP-пакет на несколько частей, которые собираются обратно на приёмной стороне. Фрагментация увеличивает накладные расходы и снижает надёжность: потеря одного фрагмента означает повтор всего исходного пакета.

Важно различать MTU и MSS. MSS (Maximum Segment Size) — это максимальный объём данных TCP в одном сегменте, без заголовков. На классическом Ethernet MSS = MTU − 40 байт (20 байт заголовка IPv4 + 20 байт заголовка TCP), то есть 1500 − 40 = 1460 байт. Для IPv6 вычитается 60 байт. Хосты согласуют MSS при установке TCP-соединения (в SYN-пакете), поэтому корректный MSS часто снимает проблемы фрагментации ещё до передачи данных.

MTU относится к канальному уровню (L2) и применяется к любому IP-пакету на интерфейсе, независимо от протокола транспортного уровня. MSS — понятие исключительно TCP: UDP-трафик (DNS, QUIC, игровой) не согласует размер сегмента и полагается только на MTU и фрагментацию. Именно поэтому неправильный MTU по-разному влияет на TCP и UDP: TCP-приложения могут «спастись» через MSS clamping, а UDP-приложения — нет, и там фрагментация или потеря пакетов проявляется острее.

Типичные значения MTU

Значение MTU зависит от технологии канала и наличия инкапсуляции. PPPoE (частый вариант для DSL) добавляет 8 байт заголовка, поэтому его MTU снижается до 1492. Туннели VPN добавляют собственные заголовки (шифрование, инкапсуляция), из-за чего эффективный MTU падает ещё сильнее. Jumbo frames применяются в ЦОД и локальных сетях 1/10 Гбит/с для снижения нагрузки на CPU.

Тип соединенияТиповой MTU (байт)Рекомендуемый MSS
Ethernet (стандарт)15001460
PPPoE (DSL)14921452
PPTP VPN14001360
IPsec VPN1400–14381360–1398
WireGuard14201380
OpenVPN (UDP)1500 (интерфейс ~1428)~1388
Jumbo frames (ЦОД)90008960

Значения для VPN ориентировочны: точный overhead зависит от алгоритма шифрования, режима (UDP/TCP) и версии протокола. Всегда проверяйте фактический MTU измерением, а не только теоретическим расчётом.

Path MTU Discovery и чёрные дыры

Path MTU Discovery (PMTUD) — механизм, описанный в RFC 1191, который позволяет хостам определить минимальный MTU на всём пути между отправителем и получателем. Отправитель ставит в IPv4-заголовке флаг DF (Don't Fragment). Если пакет встречает маршрутизатор с меньшим MTU, тот отбрасывает пакет и возвращает ICMP-сообщение «Fragmentation Needed» (тип 3, код 4) с указанием допустимого размера. Отправитель уменьшает размер и повторяет передачу.

Проблема возникает, когда межсетевые экраны или неправильно настроенные маршрутизаторы блокируют весь входящий ICMP. Тогда ICMP-сообщение «Fragmentation Needed» не доходит до отправителя, он продолжает слать пакеты слишком большого размера, а они молча отбрасываются. Это состояние называют «чёрной дырой MTU» (MTU black hole).

Характерные симптомы чёрной дыры и неправильного MTU:

  • TCP-соединение устанавливается (handshake проходит), но передача данных «зависает» — страница начинает грузиться и замирает;
  • сайты открываются частично: текст есть, картинки не подгружаются;
  • маленькие запросы (ping, DNS) работают, а крупные (загрузка файла, POST-формы) обрываются;
  • ошибки VPN: туннель поднимается, но приложения за ним не работают;
  • SSH подключается, но «падает» при выводе большого объёма текста.
Практическое правило: если мелкий трафик идёт, а крупный — нет, первым делом подозревайте MTU и заблокированный ICMP.

Как определить и настроить MTU

Оптимальный MTU находят методом подбора: отправляют ping с установленным флагом DF и постепенно уменьшают размер полезной нагрузки, пока пакеты не начнут проходить без фрагментации. К найденному размеру данных прибавляют 28 байт (20 байт IP-заголовка + 8 байт ICMP-заголовка) — это и есть искомый MTU.

Измерение размера пакета

В примерах ниже 1472 — это полезная нагрузка; 1472 + 28 = 1500, то есть стандартный Ethernet. Если 1472 не проходит, снижайте до 1464, 1452 и так далее.

# Windows: флаг -f запрещает фрагментацию, -l задаёт размер
ping -f -l 1472 enterno.io

# Linux: -M do ставит DF, -s задаёт размер полезной нагрузки
ping -M do -s 1472 enterno.io

# macOS: -D ставит DF, -s задаёт размер
ping -D -s 1472 enterno.io

Сообщение вида «Packet needs to be fragmented but DF set» (Windows) или «Message too long» (Linux) означает, что размер превышает MTU пути — уменьшайте значение.

Настройка MTU

# Windows: узнать имена интерфейсов
netsh interface ipv4 show subinterfaces

# Windows: установить MTU 1492 для нужного интерфейса
netsh interface ipv4 set subinterface "Ethernet" mtu=1492 store=persistent

# Linux: временно (до перезагрузки)
ip link set dev eth0 mtu 1492

# Linux: постоянно через netplan/NetworkManager или /etc/network/interfaces

На роутере MTU задаётся в настройках WAN-интерфейса (для PPPoE обычно 1492). Дополнительно во многих прошивках есть опция MSS Clamping — она автоматически подгоняет MSS в TCP-пакетах под реальный MTU туннеля, что надёжно лечит проблемы фрагментации, даже когда PMTUD сломан.

Порядок действий при диагностике удобно свести к короткому чек-листу:

  1. убедитесь, что мелкий трафик работает, а крупный — обрывается (симптом MTU);
  2. найдите максимальную полезную нагрузку тестом ping с DF и прибавьте 28 байт;
  3. сравните результат с типовым MTU для вашего типа подключения из таблицы выше;
  4. установите найденный MTU на интерфейсе (роутер, ОС) и повторите тест;
  5. если проблема повторяется в VPN — включите MSS clamping на шлюзе.

Не задавайте MTU больше, чем поддерживает канал: значение выше физического лимита не ускорит сеть, а спровоцирует фрагментацию и повторные передачи. Оптимальный MTU — это максимальный размер, который проходит по всему пути без фрагментации, а не абстрактно «большое» число.

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

Быстро оценить доступность узла и время отклика помогает наш бесплатный инструмент Ping и проверка портов: он покажет потери пакетов и задержку, что косвенно указывает на проблемы канала. Для комплексной диагностики заголовков и доступности сайта используйте проверку HTTP-заголовков enterno.io.

Смежные материалы: как исправить высокий пинг и потерю пакетов, тонкая настройка TCP-соединений и устранение ошибки ERR_CONNECTION_CLOSED.

Частые вопросы

Какое значение MTU выбрать по умолчанию?

Для обычного проводного Ethernet-подключения оставляйте стандартные 1500 байт. Если у вас DSL с PPPoE, ставьте 1492. Для VPN уменьшайте MTU до значения, найденного тестом ping с флагом DF. Не меняйте MTU наугад: неверное значение ухудшит, а не улучшит соединение.

Чем MTU отличается от MSS?

MTU — это максимальный размер всего кадра на канальном уровне, включая заголовки IP и TCP. MSS — только объём данных TCP без заголовков. На Ethernet MSS = MTU − 40 байт для IPv4. Хосты согласуют MSS при установке соединения, тогда как MTU задаётся на интерфейсе.

Что такое чёрная дыра MTU?

Это ситуация, когда пакеты с флагом DF превышают MTU пути, а ICMP-сообщение «Fragmentation Needed» блокируется файрволом и не доходит до отправителя. В результате крупные пакеты молча теряются: соединение устанавливается, но передача данных зависает. Лечится уменьшением MTU или включением MSS clamping.

Нужны ли jumbo frames дома?

Обычно нет. Jumbo frames (MTU 9000) полезны в дата-центрах и локальных сетях для передачи больших объёмов данных с меньшей нагрузкой на процессор. Дома их поддержка редко даёт выигрыш и требует, чтобы все устройства в сегменте использовали одинаковый увеличенный MTU, иначе появится фрагментация.

Почему VPN работает медленно или обрывается?

Часто причина — слишком большой MTU туннеля. VPN добавляет заголовки шифрования, снижая эффективный MTU до 1400 и ниже. Если оставить 1500, крупные пакеты фрагментируются или теряются. Уменьшите MTU VPN-интерфейса и при возможности включите MSS clamping на шлюзе.

Источники

Проверьте ваш сайт прямо сейчас

Проверить доступность сайта →
Другие статьи: Сети
Сети
ERR_CONNECTION_CLOSED: причины и как исправить
13.07.2026 · 118 просм.
Сети
Лучшие онлайн-сканеры портов 2026
15.06.2026 · 61 просм.
Сети
ТСПУ, DPI и замедление трафика: как это работает и проверить
13.07.2026 · 104 просм.
Сети
ERR_CONNECTION_RESET: причины и решение
23.06.2026 · 329 просм.