Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

MTU Сетевое оборудование и VPN

Настройка MTU для AmneziaWG (WireGuard): Избегаем фрагментации

Обновлено: 10.09.2026 · Официальная документация ↗

Физика MTU в туннелях и симптомы сбоя (Black Hole Routing)

MTU (Maximum Transmission Unit) — это максимальный размер полезного блока данных, который может быть передан одним пакетом без фрагментации. WireGuard и его форк AmneziaWG (добавляющий обфускацию) инкапсулируют IP-пакеты внутрь UDP. Классический WireGuard добавляет 60 байт заголовков (20 IPv4 + 8 UDP + 32 WG). AmneziaWG из-за мусорных пакетов (junk packets) и измененных заголовков обфускации может требовать еще большего оверхеда. Симптомы неверного MTU: туннель работает, пинги ходят отлично (так как размер ICMP пакета мал), но при попытке открыть сайт или скачать файл TCP-сессия зависает на этапе Client Hello (TLS) или загрузки данных. Бизнес-риски: деградация скорости VPN, невозможность работы с веб-ресурсами и RDP.

Влияние фрагментации на VPN

СценарийЧто происходит с пакетомСимптом для пользователя
MTU клиента > MTU провайдераПровайдер дропает пакет, отправляет ICMP 'Fragmentation Needed'.Сайты не грузятся, "Black Hole" эффект, если ICMP заблокирован.
Path MTU Discovery (PMTUD) отключенTCP не может автоматически согласовать MSS (Maximum Segment Size).Зависание SSH-сессий, бесконечная загрузка тяжелых веб-страниц.

Алгоритм расчета и настройки MTU (MSS Clamping)

Сценарий 1: Расчет оптимального MTU для WireGuard/AmneziaWG

Если стандартный MTU провайдера (Ethernet) равен 1500, то безопасный MTU для WG = 1420. При использовании PPPoE у провайдера базовый MTU = 1492, тогда MTU для WG = 1412.

 Настройка MTU в конфигурации клиента (.conf)
[Interface]
PrivateKey = <Ваш_Ключ>
Address = 10.8.0.2/24
MTU = 1420  # Или 1380 для гарантированного прохождения через проблемные сети
DNS = 1.1.1.1

Сценарий 2: Включение MSS Clamping на сервере (iptables/nftables)

Даже если на клиенте MTU настроен неверно, сервер может принудительно переписывать размер TCP-сегмента (MSS) в проходящих транзитных пакетах, спасая ситуацию.

 Для Iptables (добавить в PostUp конфигурации сервера)
iptables -t mangle -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

 Для Nftables
nft add rule ip filter FORWARD tcp flags syn tcp option maxseg size set rt mtu

Типовые ошибки администраторов

  • Слепая установка MTU=1500: Установка MTU виртуального интерфейса WG равным физическому интерфейсу гарантирует фрагментацию. UDP-пакет WG просто не влезет во фрейм Ethernet.
  • Игнорирование обфускации AWG: AmneziaWG изменяет размеры заголовков (параметры Jc, Jmin, Jmax, S1, S2). В сильно зафильтрованных сетях (например, мобильный интернет) снижение MTU до 1360-1380 часто является единственным способом стабилизировать канал.
Сеть тормозит, а пакеты теряются в VPN-туннелях?
Проблема несовпадения MTU/MSS часто возникает при сложной топологии (SD-WAN, IPSec поверх GRE). Сетевые архитекторы ITSTM проведут глубокий анализ PCAP-дампов, найдут бутылочные горлышки фрагментации и настроят идеальный Path MTU Discovery.
💡 Практика специалистов: Практика ITSTM: Если клиенты подключаются через мобильные сети (3G/LTE), мы рекомендуем глобально устанавливать MTU туннеля WireGuard на 1360 или даже 1280 (минимальный стандарт IPv6). Потеря 2-3% пропускной способности из-за оверхеда полностью компенсируется отсутствием 'зависающих' TCP-сессий.

Частые вопросы (FAQ)

Как точно узнать максимальный MTU моего провайдера?

Используйте утилиту ping с запретом фрагментации. В Windows: 'ping 8.8.8.8 -f -l 1472'. Если пишет 'Требуется фрагментация', уменьшайте число (1472), пока пинги не пойдут. Ваш MTU = это число + 28 байт (IP/ICMP заголовки).

Почему пинги проходят, а сайты не открываются?

Пинг (ICMP Echo Request) по умолчанию отправляет всего 32 байта данных. Открытие сайта по HTTPS (TLS Handshake) генерирует пакеты максимального размера (1500 байт), которые не пролезают в туннель и отбрасываются.

Влияет ли MTU на скорость скачивания?

Да. Если MTU слишком мал, увеличивается накладной расход на заголовки (Overhead). Если слишком велик — происходит аппаратная фрагментация на маршрутизаторах, что сильно нагружает их CPU и снижает пропускную способность.

Где нужно менять MTU: на клиенте или на сервере?

Идеально — на обеих сторонах туннеля (в блоке [Interface] файлов конфигурации сервера и клиента) значения должны совпадать для симметричной передачи данных.

Полезные материалы
Рекомендуем