OpenVPN съобщава за непоследователно използване на MTU: какво сравнява предупреждението
Предупреждението сравнява опциите на партньорите, а не размерите на пакетите. Отделете остарялата стойност link-mtu от реален проблем с MTU по пътя и тествайте със сонда, съобразена с размера.
Това предупреждение съобщава за сравнение между опциите на партньорите, а не за измерване на пътя между тях. Хората го четат като „MTU е грешен“ и променят числото, докато редът изчезне. Така сравнение на конфигурация се приема за мрежово измерване и често прави тунела по-лош, а журнала по-тих. Полезната първа стъпка е да решите кой от тези два проблема всъщност имате.
Отговорът се определя от три условия: какво сравняват партньорите, дали стойността е остаряла и какъв симптом съществува извън предупреждението.
Предупреждението сравнява опции, а не пакети
Партньорите на OpenVPN разменят низовете си с опции по време на ръкостискането и ги сравняват като част от проверката за съгласуваност на опциите. Когато едната страна отчете link-mtu или tun-mtu различно от другата, несъответствието се записва с двете стойности. Тази размяна никога не изпраща голям пакет, за да види какво ще стане, затова предупреждението описва конфигурация, а не капацитет. Тунелът може да пренася трафик с пълен размер и пак да го отпечатва, или да се проваля при големи пакети и да не отпечатва нищо.
Пазете пълното предупреждение с неговите локална и отдалечена стойности. Двойката е доказателството; едното число, което помните, не е.
Защо link-mtu е обявена за остаряла
OpenVPN 2.6 обявява link-mtu за остаряла, защото променливите заглавки и договорените шифри правят фиксираната стойност на връзката ненадеждна. Опцията предполагаше оформление на пакета, което протоколът вече не гарантира, затова стар профил с буквална link-mtu описва намерение, което текущият код не може да изпълни. Копирането на това число в нов профил разпространява остаряло предположение. Четете го като част от историята на стария профил, а не като препоръка.
Проверката за съгласуваност има и незадължителна стойност OCC, свързана с tun-mtu, която променя какво се сравнява, без да променя какво пренася мрежата. Задаването ѝ не побира по-големи пакети.
Поправете профила, преди да тествате пътя
Отстранете нежеланото несъответствие чрез този, който притежава профилите, и помнете, че промяна от страна на сървъра засяга всеки клиент. Редактирайте профила, който инстанцията действително зарежда, а не експорт в папка за изтегляния. След това свържете отново един тестов клиент и отбележете кое предупреждение остава. Ако съобщението промени форма, вместо да изчезне, сравнявате други опции, а не тези, които мислите.
Споделеният сървър изисква проверка на инвентара на клиентите, преди глобална стойност да се премести, защото стойност, подходяща за един сайт, може да счупи друг.
След това тествайте симптома, който наистина имате
Ако големи трансфери зациклят, докато малки заявки успяват, измерете размера на пакета към контролирана дестинация. Сонда, която задава бита „не фрагментирай“ и увеличава размера на полезния товар, намира използваемия MTU на пътя много по-надеждно от ping, който просто успява. Включете в теста и приложението, което се проваля: ICMP изчакване може да отразява филтриране, а малък успешен ping не казва нищо за пакет на приложение с пълен размер.
mssfix ограничава MSS, обявен за TCP сесиите в тунела, което помага на TCP и не прави нищо за вътрешно UDP натоварване. Настройките за фрагментация и разтоварване имат свои условия за съвместимост. Изберете механизъм за доказания проблем, вместо да променяте няколко наведнъж, за да заглушите ред в журнала.
Пазете ефективните стойности с резултата
Записвайте оригиналните и коригираните ефективни стойности до резултата от реален трансфер. Именно тази двойка отделя остаряла опция на профил от проблем с MTU по пътя, който съществува независимо. Без нея следващият читател вижда предупреждение, което е изчезнало, и предполага, че мрежата се е променила.
Потискането на проверката за съгласуваност не помирява нищо. То премахва наблюдението и оставя двете конфигурации както са били.