Големите пакети изчезват през IPsec, а малките ping работят
Малките проби отговарят, а копирането на файлове зацикля — това е признак на решение за размер, взето преди криптирането. Открийте коя страна разделя пакета и защо.
Отдалечените shell сесии остават отзивчиви, малките проби отговарят, а после копирането на файл пълзи и зацикля без грешка, която някой да посочи. Ping с по-голям полезен товар го възпроизвежда веднага, а същият трансфер работи от локалната мрежа. Нищо в криптирането не е бавно; определени пакети просто не пристигат. Две различни разделяния могат да дадат този признак и оставят различни доказателства.
Две места, където пакетът може да бъде разделен
Преди криптирането рутерът може да раздели прекалено голям вътрешен пакет и да защити всяка част поотделно. След криптирането се разделя готовият външен пакет и далечната страна трябва да го сглоби отново, преди да може да дешифрира каквото и да е. Същият симптом, различна работа за получателя и различни лостове за вас.
Разликата е важна, защото поправка, насочена към грешната страна, променя число, без да помръдне отказа. Пакет, отказан на интерфейса, никога не става външен пакет, така че никаква настройка от външната страна не може да го спаси.
Къде всъщност се взема решението за размер
Интерфейсът на тунела носи IP MTU и тази стойност може да отхвърли прекалено голям вътрешен пакет много преди етапа IPsec да го види. Задаването на бит във външния заглавен блок не преразглежда онова по-ранно решение, защото пакетът вече е отказан. Затова повишаването на вътрешния MTU понякога влошава нещата, вместо да ги подобри. Прочетете стойността на интерфейса и външното поведение, преди да променяте което и да е от двете, защото по-евтината промяна обикновено е тази, която обяснява симптома.
Проверете първо стойността на интерфейса, после външното поведение. Две числа, два етапа и обикновено само едно от тях е отговорно.
Външният бюджет не е вътрешният бюджет
Всяка инкапсулация изразходва байтове за заглавни блокове и количеството зависи от транспорта, семейството адреси и дали участва NAT traversal. Вътрешен пакет, който се побира в локалната връзка, все още може да даде външен пакет, който не се побира в пътя след нея. Измерете разходите, вместо да ги предполагате, защото всеки допълнителен заглавен блок се добавя към сметката. Тунел с NAT traversal плаща повече от гол, и разликата е достатъчна да счупи трансфер, който е работел вчера.
Когато външният пакет носи бит за забрана на фрагментиране, хоп, който не може да го препрати, го изхвърля и трябва да върне ICMP съобщение. Ако това съобщение се филтрира някъде, подателят продължава да опитва и потребителят вижда зацикляне без обяснение. Това тихо изхвърляне е обичайната причина проблем с размера да бъде докладван като проблем със скоростта.
IPv6 премахва една от опциите
Рутерите IPv6 не фрагментират по пътя, така че външният пакет или се побира, или изчезва със съобщение Packet Too Big. Това съобщение става единственият канал за обратна връзка и блокирането му чупи откриването на пътя за всеки следващ голям трансфер. Рутерите IPv4 могат да фрагментират голям пакет, когато битът е изчистен, което скрива дефекта, докато нещо друго не зададе този бит.
При смесен стек същият тунел може да се държи различно за двете семейства, затова един тест през IPv4 не решава оплакване за IPv6. Проверка, която упражнява едно семейство, оставя половината отговор неизмерена.
Политиката за TCP сегменти не е общ отговор
Ограничаването на максималния размер на сегмента помага на TCP потоците и е законен контрол, когато проблемът е ограничен до тях. То няма ефект върху UDP, който носи DNS, някои гласови протоколи и растящ дял от уеб трафика.
Приложете го, после тествайте натоварването, което се провали. Ако случаят с UDP все още се проваля, политиката за сегменти никога не е била отговорът и бюджетът на интерфейса все още изисква внимание. Първо определете протокола на неуспешното натоварване, после изберете контрола, който му принадлежи.
Редът на работа
Запишете най-големия полезен товар, който оцелява, после MTU на интерфейса, после дали външният пакет носи бита за забрана на фрагментиране и накрая дали ICMP обратната връзка достига до подателя. Тази последователност стеснява дефекта без догадки. Пазете всяко наблюдение с времева марка и крайна точка, защото и четирите числа се местят, когато пътят се промени.
Променете една стойност, тествайте отново първоначалния трансфер и запазете резултата. Тунел, който минава голяма проба, но все още зацикля на приложението, е преминал към друг проблем и това е напредък, който си струва да бъде записан. Следващият човек предпочита числата пред заключението.