PMTUD

0 views
Skip to first unread message

Dmitriy Smirnov

unread,
Feb 6, 2022, 1:01:03 PMFeb 6
to
hi, All!

а не поговорить ли нам о MTU и IPv6?

Решил я субботне-воскресным вечером побаловаться с NPTV6, всё конечно
транслирует, но обнаружил, что не всё оно транслирует, а именно ICMP PTB. Без
трансляции хост ловит сообщение о слишком большом пакете, понижает мту и жизнь
продолжается. Вот только не спрашивайте зачем что-то там транслировать, когда
адресов вагон и тележка, вот захотелось время убить =)

почитал всякие статейки о мировых тенденция и всё такое, если можно так
выразиться. Основной смысл - не везде нативный в6, кто-то режет icmp, криво
настроенный mss и всё в таком духе.

Как я понимаю, путей соб-но два: играться с MTU и/или активировать PMTUD
Blackhole Detection. Я пока что для себя решил остановиться на втором варианте
и не трогать MTU, работает хреновина =)

У кого какие мысли/практика?

wbr, Dmitriy.

Alex Korchmar

unread,
Feb 6, 2022, 1:01:04 PMFeb 6
to
Dmitriy Smirnov <Dmitriy...@f352.n5010.z2.fidonet.org> wrote:

DS> У кого какие мысли/практика?
no user will ever ask you for ipv6.

> Alex
P.S. хотя колхоз-то тоже дело добровольное...

Eugene Grosbein

unread,
Feb 6, 2022, 2:01:03 PMFeb 6
to
06 февр. 2022, воскресенье, в 22:44 NOVT, Dmitriy Smirnov написал(а):

DS> Как я понимаю, путей соб-но два: играться с MTU и/или активировать PMTUD
DS> Blackhole Detection. Я пока что для себя решил остановиться на втором
DS> варианте и
DS> не трогать MTU, работает хреновина =)
DS> У кого какие мысли/практика?

Я в эту сторону в контексте IPv6 ещё не ковырял,
но если в IPv4 неадекваты фильтруют ICMP, ломая IPv4 PMTUD,
то совершенно непонятно, что им помешает делать то же самое
с ICMPv6.

А вроде бы в IPv6 задачу фрагментирования непролазящего
крупного пакета возложили на транзитные роутеры вместо того,
чтобы им посылать need-fragment, как в IPv6?

Eugene

Eugene Grosbein

unread,
Feb 6, 2022, 3:01:02 PMFeb 6
to
06 февр. 2022, воскресенье, в 20:46 NOVT, Alex Korchmar написал(а):

DS>> У кого какие мысли/практика?
AK> no user will ever ask you for ipv6.

Я вот, перебирая хостеров дешевых виртуалок,
внезапно обнаружил, что многих есть вариант с IPv6-only
и оно почти вдвое дешевле, чем самый дешевый вариант с IPv4,
типа $2.5 против $4 или $5.

Когда сервисов IPv6-only наберется критическая масса,
юзера начнут спрашивать IPv6. Единичные запросы от наших юзеров
были уже несколько лет назад и изредка повторяются.

Eugene
--
Устав от вечных упований,
Устав от радостных пиров

Dmitriy Smirnov

unread,
Feb 6, 2022, 3:01:02 PMFeb 6
to
hi, Eugene!

07 Feb 22 01:10, Eugene Grosbein wrote to Dmitriy Smirnov:

DS>> активировать PMTUD Blackhole Detection. Я пока что для себя решил
DS>> остановиться на втором варианте и не трогать MTU, работает
DS>> хреновина =) У кого какие мысли/практика?

EG> Я в эту сторону в контексте IPv6 ещё не ковырял,
EG> но если в IPv4 неадекваты фильтруют ICMP, ломая IPv4 PMTUD,
EG> то совершенно непонятно, что им помешает делать то же самое
EG> с ICMPv6.

EG> А вроде бы в IPv6 задачу фрагментирования непролазящего
EG> крупного пакета возложили на транзитные роутеры вместо того,
EG> чтобы им посылать need-fragment, как в IPv6?

вот этот посыл (ICMP PTB) и не доходит при трансляции в частности, крутить в
ipfw_nptv6 особо и нечего, но тем не менее получилась такая конструкция как
PMTUD Blackhole. Ладно, попробую еще поковыряться на досуге, может чего мимо
глаз прошло и мысль какая появится.

Если не брать во внимание мой, быть может, частный случай, то на Anycast такая
"беда" весьма актуальная, когда ответ идет с одной стороны, а посыл следует в
другую.

wbr, Dmitriy.

Dmitriy Smirnov

unread,
Feb 6, 2022, 3:01:03 PMFeb 6
to
hi, Alex!

06 Feb 22 20:46, Alex Korchmar wrote to Dmitriy Smirnov:

DS>> У кого какие мысли/практика?
AK> no user will ever ask you for ipv6.

>> Alex
AK> P.S. хотя колхоз-то тоже дело добровольное...

Только тут вопрос не столь в трансляции или реализации оной во фрибсде, а PMTUD
Blackhole в целом и кто и как с этим "живет", но в твоем случае уже выяснили -
никак =)

wbr, Dmitriy.

Eugene Grosbein

unread,
Feb 7, 2022, 6:01:02 AMFeb 7
to
07 февр. 2022, понедельник, в 00:20 NOVT, Dmitriy Smirnov написал(а):

DS> Только тут вопрос не столь в трансляции или реализации оной во фрибсде, а
DS> PMTUD
DS> Blackhole в целом и кто и как с этим "живет", но в твоем случае уже
DS> выяснили -
DS> никак =)

PMTUD, основанный на надежде, что ICMP пройдет и будет обработан корректно,
нежизнеспособен - доказано историей IPv4. Либо фрагментировать
на транзитном роутере (в IPv4 это достигается принудительным снятием
бита Don't Fragment), либо реализовывать Blackhole Detection
на отправителе, ну а в TCP есть MSS.

Eugene
--
Поэты - страшные люди. У них все святое.

Dmitriy Smirnov

unread,
Feb 7, 2022, 11:01:03 PMFeb 7
to
hi, Eugene!

07 Feb 22 16:36, Eugene Grosbein wrote to Dmitriy Smirnov:

DS>> Только тут вопрос не столь в трансляции или реализации оной во
DS>> фрибсде, а PMTUD Blackhole в целом и кто и как с этим "живет", но
DS>> в твоем случае уже выяснили - никак =)

EG> PMTUD, основанный на надежде, что ICMP пройдет и будет обработан
EG> корректно, нежизнеспособен - доказано историей IPv4. Либо
EG> фрагментировать на транзитном роутере (в IPv4 это достигается
EG> принудительным снятием бита Don't Fragment), либо реализовывать
EG> Blackhole Detection на отправителе, ну а в TCP есть MSS.

вот, detection и включил, только вот может у этого решения есть свои подводные
камни.

зы: я уж думал, что пляски с mtu ушли в историю со времен IPv4, ан нет, все еще
актуально даже с IPv6 =)

wbr, Dmitriy.

Eugene Grosbein

unread,
Feb 9, 2022, 2:01:03 AMFeb 9
to
08 февр. 2022, вторник, в 08:41 NOVT, Dmitriy Smirnov написал(а):

DS> вот, detection и включил, только вот может у этого решения есть свои
DS> подводные
DS> камни.

Есть: подбор таймаутов при перепосылках между разными уровнями "плато",
а так же рост таблицы соответствий IP/MTU и подбор таймаута устаревания
данных в таблице.

DS> зы: я уж думал, что пляски с mtu ушли в историю со времен IPv4, ан нет,
DS> все еще
DS> актуально даже с IPv6 =)

С IPv6 даже хуже, потому что там минимальный MTU задрали сильно.
Hа плохих линках типа 3G (Yota etc.) с ненулевым процентом потерь
я всегда достигал бОльшей стабильности VPN-туннелей,
занижая MTU до 576 - пакет меньшей длины пролазит с большей вероятностью,
а при потерях меньше перепосылать. В IPv6 минимальный размер вдвое больше.

Dmitriy Smirnov

unread,
Feb 10, 2022, 12:01:03 AMFeb 10
to
hi, Eugene!

09 Feb 22 13:37, Eugene Grosbein wrote to Dmitriy Smirnov:

DS>> вот, detection и включил, только вот может у этого решения есть
DS>> свои подводные камни.

EG> Есть: подбор таймаутов при перепосылках между разными уровнями
EG> "плато", а так же рост таблицы соответствий IP/MTU и подбор таймаута
EG> устаревания данных в таблице.

т.е. менее "геморройная" схема на отправляющей стороне выставить, например,
минимальный MTU 1280 и мириться с тем, что IPv6 будет медленнее бегать, но при
этом будет всё же бегать там где он впринципе сможет бегать?) я читал статейку
cloudflare про их опыт по этой части, смотрели процент клиентов с тем или иным
мту и подбирали оптимальный, после конечно еще накатали свой софт PMTUD (на
гитхабе в исходниках доступен).

DS>> зы: я уж думал, что пляски с mtu ушли в историю со времен IPv4,
DS>> ан нет, все еще актуально даже с IPv6 =)

EG> С IPv6 даже хуже, потому что там минимальный MTU задрали сильно.
EG> Hа плохих линках типа 3G (Yota etc.) с ненулевым процентом потерь
EG> я всегда достигал бОльшей стабильности VPN-туннелей,
EG> занижая MTU до 576 - пакет меньшей длины пролазит с большей
EG> вероятностью, а при потерях меньше перепосылать. В IPv6 минимальный
EG> размер вдвое больше.

да, на уских тоннелях про в6 с её 1280 и не приходится говорить %)

wbr, Dmitriy.

Eugene Grosbein

unread,
Feb 10, 2022, 8:01:03 AMFeb 10
to
10 февр. 2022, четверг, в 09:24 NOVT, Dmitriy Smirnov написал(а):

DS> т.е. менее "геморройная" схема на отправляющей стороне выставить,
DS> например,
DS> минимальный MTU 1280 и мириться с тем, что IPv6 будет медленнее бегать, но
DS> при
DS> этом будет всё же бегать там где он впринципе сможет бегать?


Это надо тестировать, я не занимался.

Eugene

Alex Korchmar

unread,
Feb 10, 2022, 2:01:03 PMFeb 10
to
Eugene Grosbein <Eugene....@f1.n5006.z2.fidonet.org> wrote:

EG> Я вот, перебирая хостеров дешевых виртуалок,
EG> внезапно обнаружил, что многих есть вариант с IPv6-only
именно потому что оно нахер никому ненужно.

EG> Когда сервисов IPv6-only наберется критическая масса,
не наберется. Hет таких м-ков которые сами себе отрежут 99% нормальных
пользователей (а если найдется - то их сервис нах никому и не нужен,
м-к он же ж везде м-к)

EG> юзера начнут спрашивать IPv6. Единичные запросы от наших юзеров
EG> были уже несколько лет назад и изредка повторяются.
это больные фрики. Одни так "борются" с росзапретнадзором, не понимая что
недалек день когда заблокируют весь нераспознаваемый траффик, другие
воюют за все хорошее против всего плохого. Сервисов для людей такие не
сделают.

Когда какой-нибудь гугль запретит своим рабам сайты открывать по
v4 - вот тогда взлетит.


> Alex

Reply all
Reply to author
Forward
0 new messages