Лаптоп се повезује, интранет се учитава, а неколико јавних страница се заглави. Аутентификација и рутирање очигледно раде, што као објашњење оставља величину пакета. У тунелу L2TP/IPsec употребљиви MTU је мањи од оног који адаптер још оглашава, а клијент наставља да шаље пакете пуне величине са постављеним битом „не фрагментирај“. На pfSense пролаз се може наредити да обрише тај бит, и то је најбржи начин да потврдите дијагнозу пре него што је исправно поправите.

Почните од страница које не успевају

Пре него што дотакнете било које подешавање, забележите које одредиште не успева, а које успева. Руковања која остану испод границе тунела завршавају се нормално, док се преноси којима треба сегмент пуне величине заустављају на пола пута. Та подела је потпис проблема са величином, а не филтера, јер блокирано одредиште не успева при успостављању везе, а не усред странице. Оба запажања не коштају ништа и одмах сужавају претрагу.

Проверите пингом који поставља бит и контролише величину корисног терета. Највећи терет који прође говори вам стварни MTU путање, а оглашена вредност адаптера показује колико су њих двоје удаљени.

Запишите оба броја. Исправка зависи од тога који је погрешан, а пар је оно што снимак касније потврђује.

Шта DF бит ради на излазу

Разлог разлике у бројевима је инкапсулација. IPsec додаје ESP, L2TP додаје још један заглавље, па тунел зато носи мање корисног терета од физичке везе. Windows и даље пријављује 1500 бајтова на адаптеру и поставља „не фрагментирај“ на оно што шаље. Када такав пакет не стане, исправан одговор пролаза је ICMP порука која тражи од пошиљаоца да се смањи. Зато тунел који пропушта мале пингове ипак може да подбаци при преузимању датотеке.

Та порука често никада не стигне. Неки скок може да филтрира ICMP, или је ништа не генерише, а пошиљалац понавља исту величину док пренос не одустане.

Тишина је овде уобичајена појава, зато се симптом чита као селективно блокирање. Ништа у дневнику клијента не бележи ICMP поруку која недостаје.

Опција на pfSense-у и шта она не ради

Опција се налази на страници Систем, Напредно, Заштитни зид и NAT са ознаком „Обриши неважеће DF битове уместо да одбациш пакете“. Уместо да одбаци превелик пакет који носи заставицу, филтер уклања заставицу и пушта пакет да се даље подели. Пакет се сматра неважећим када не може да прође излазни интерфејс у једном комаду.

Опција враћа повезивост без дирања клијента, зато је популарна. То је и заобилазно решење: фрагментација троши CPU и чини сваки изгубљени фрагмент скупљим.

Примењује се само на прослеђени саобраћај, не на саобраћај који сам заштитни зид ствара. Иста страница нуди „Онемогући чишћење заштитног зида“, што потпуно искључује нормализацију, а то је много шира промена него што овој проблем треба.

Уже решење које држи TCP нефрагментисаним

Скоро сви заглављени токови су TCP, а TCP може да се договори око мањег сегмента уместо да се ослања на фрагментацију. Ограничавање MSS-а на интерфејсу тунела преписује оглашену вредност током руковања, па свака страна шаље оно што стварно стане. Путања се тада понаша предвидиво и ниједан пакет не треба да се дели.

Тиме UDP остаје откривању или опцији DF. Када су странице које не успевају обичне веб странице, ограничење је промена којој треба дати предност.

Клијент може да пријави сопствени MTU адаптера преко netsh interface ipv4 show subinterfaces. Упоредите тај број са оним што сервер мисли да је договорено, јер се њих двоје не поклапају увек. Баш ту вредност оперативни систем стварно користи, шта год да је преговарање пријавило.

Потврдите снимком, па затим поништите стање

Снимите на обе стране пре одлуке: један траг где пролази тунел, други где ради WAN интерфејс. Пакети који излазе пуне величине без ICMP-а који се враћа указују на ограничење као прави слој. Одговори који стигну и затим умру на повратку указују уместо тога на MTU тунела.

Очистите табелу стања пре новог покушаја, јер постојећи токови задржавају старе величине сегмената. Затим учитајте страницу која није успела и читајте приказ стања за двосмерни саобраћај уместо једносмерних бројача. Ако се и даље зауставља, снимите поново уместо да испробате још једно поље за потврду.

Повезани чланци