From e0b344f3c8210e07bd75ba7f6d8f22a8f01570d3 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Sat, 24 Feb 2024 23:55:14 +0300 Subject: [PATCH] =?utf8?q?=D0=A4=D1=80=D0=B0=D0=B3=D0=BC=D0=B5=D0=BD=D1=82?= =?utf8?q?=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82=D0=BE?= =?utf8?q?=D0=B2=20gif-=D1=82=D1=83=D0=BD=D0=BD=D0=B5=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit При использовании gif/gre/stf туннелей в FreeBSD, отправляемые пакеты форсированно фрагментируются если размером больше минимального MTU IPv6 (1280 байт). sys/netinet6/in6_gif.c: [...] /* * force fragmentation to minimum MTU, to avoid path MTU discovery. * it is too painful to ask for resend of inner packet, to achieve * path MTU discovery for encapsulated packets. */ return (ip6_output(m, 0, NULL, IPV6_MINMTU, 0, NULL, NULL)); Так как у меня gif-туннель используется для инкапсуляции IPv4 трафика поверх динамически маршрутизируемого IPv6, который поверх слонокадров идёт, а MTU gif-туннеля = 1500, то куча пакетов фрагментируется без какой-либо необходимости. Всё же на пустом месте чуть ли не удваивать количество пакетов не очень приятно, поэтому можно просто поменять этот IPV6_MINMTU на ноль. -- 2.44.0