По умолчанию в RouterOS для L2TP установлен MTU 1450. Я тоже был в недоумении, потому что могу включить IPSec поверх L2TP с тем же MTU, и это все равно работает без потери пакетов. Моя конфигурация IPSec использует кодирование cbc(aes) + hmac(sha512). У меня отключен MRRU, и пакеты ESP не инкапсулируются в NAT-T, так что накладных расходов от UDP-заголовка нет. Я протестировал это, отправив пинг с включенным флагом не-фрагментации и размером полезной нагрузки 1422, что дает ICMP-пакет размером 1450 байт. Пакеты не терялись, и ответы приходили через туннель в том же размере. Поскольку это работало, я думал, что все в порядке, долгое время. Я ошибался. Я запустил инструмент сниффера на внешнем интерфейсе и заметил, что есть ESP-пакеты размером 68 байт, помимо IP-пакетов размером 1500 байт (не считая 14 байт заголовка Ethernet). Я подумал, что, может быть, RouterOS делает прозрачную фрагментацию? Поэтому я попытался очистить кэши маршрутов и снизить MTU до 1430: они все еще есть, но теперь лишние пакеты размером 52 байта. Попробовал 1410: все еще есть, но лишние пакеты теперь размером 36 байт. Попробовал 1405: все еще есть, лишние пакеты все еще размером 36 байт. Попробовал 1404: больше никаких лишних маленьких пакетов. Входит в 1404! Явно, что размеры пакетов, скорее всего, связаны с дополнением блочного шифрования и другими заголовками. Уменьшение до 1400, вероятно, не хватит для PPPoE-узлов. Поскольку заголовок PPPoE составляет 8 байт, ему все равно придется фрагментироваться. Инкапсуляция NAT-T ESP потребует еще 8 байт. Возможно, RouterOS выполняет фрагментацию и восстановление, похожие на MRRU, когда пакет не вмещается, даже если MRRU отключен.